[accepted revision] | [accepted revision] |
Content deleted Content added
Snowman304 (talk | contribs) updated citation, citation style |
m Dating maintenance tags: {{Full citation needed}} |
||
Line 12:
[[Execution (computing)|Execution]] of a program is requires an [[Programming language implementation|implementation]]. There are two main approaches for implementing a programming language {{endash}} [[Compiler|compilation]], where programs are compiled to ahead-of-time to [[machine code]], and [[Interpreter (computing)|interpretation]], where programs are directly executed. In addition to these two extremes, some implementations use hybrid approaches such as [[just-in-time compilation]] and [[bytecode]] interpreters.<ref>{{Cite book|title=Concepts of Programming Languages|last=Sebesta|first=Robert W.|publisher=Pearson|year=2023|isbn=978-1-292-43682-1|edition=12th global|pages=46-51|language=en}}</ref>
The design of programming languages has been strongly influenced by [[computer architecture]], with most [[imperative languages|imperative]] languages designed around the ubiquitous [[von Neumann architecture]].{{Sfn|Sebesta|p=18}}{{full citation needed|date=August 2025}} While early programming languages were closely tied to the [[Computer hardware|hardware]], modern languages often hide hardware details via [[abstraction (computer science)|abstraction]] in an effort to enable better software with less effort.{{Citation needed|date=August 2025}}
==Related==
|