Content deleted Content added
m reordered paragraphs |
No edit summary |
||
Line 1:
{{Program execution}}
An '''execution model''' specifies how work takes place.
In particular, the [[C (programming language)|C programming language]], has a concept called a statement.
Execution models can also exist independently from programming languages, examples of which would be the [[POSIX Threads]] library, and Hadoop's Map-Reduce [[programming model]].
An implementation of an execution model controls the order in which work takes place during execution.
The static choices are most often implemented inside a [[compiler]], in which case the order of work is represented by the order in which instructions are placed into the executable binary.
However, an [[Interpreter_(computing)|interpreter]] may also be constructed for any language, in which case all decisions on order of execution are dynamic.
Each and every programming language has an execution model, which determines the manner in which the units of work (that are indicated by program [[Syntax (programming languages)|syntax]]) are [[Scheduling (computing)|scheduled]] for [[Execution (computing)|execution]].
| url
| title
}}</ref>
the execution model of the Unified Parallel C (UPC) programming language,
<ref>{{cite web
| url
| title
}}</ref>
a discussion of various classes of execution model such as for imperative versus functional languages,<ref>
| url
| title
| author1=Cardoso, J.M.P.
| author2=Diniz, P.C. | isbn=9780387096711
| year=2011
| publisher=Springer US
}}</ref>
and an article discussing execution models for real-time embedded languages.<ref>
| url
| title
| date
| author1=PELLIZZONI, R.
| | | | | | author7= | | publisher | journal
| format
}}</ref>
== Overview ==
As a simple example of a basic execution model, that of the [[C (programming language)|C language]] is described in the book by Kernighan and Richie.<ref name="k&r1e">{{cite book | last=Kernighan | first=Brian W. | authorlink=Brian Kernighan | author2=Dennis M. Ritchie | title=The C Programming Language | edition=1st | publisher=[[Prentice Hall]] | date=February 1978 | ___location=[[Englewood Cliffs, NJ]] | isbn=0-13-110163-3 | authorlink2=Dennis M. Ritchie}}</ref> The book describes that work takes places in units called statements, which are syntactically indicated by a terminating ";". It specifies that statements are completed serially (one at a time) and sequentially (a previous statement completes before the next statement begins). Details such as this are part of the execution model.
In the modern age, parallel programming is an increasingly important topic.
== See also ==
{{Wiktionary|run-time}}
* [[Runtime system]]
* [[Execution (computing)]]
|