ThesaHelp: references p-r
ThesaHelp: ACM references m-z
Topic: evaluation in an environment
Topic: function application
Topic: procedures as data
Topic: reduction languages
Topic: functional programming
Topic: parameter passing by value
Topic: parameter passing by name
Topic: syntax analysis
Topic: lexical analysis
Topic: abstraction by name
Topic: data as a named set of data objects
Group: programming notation
Topic: data type as constructors, selectors, and predicates
Topic: primitive functions
Topic: constants
Topic: formal methods and languages
Topic: interpreter
Topic: continuation
Topic: state machine
Topic: exception handling by try..catch
| |
Reference
Reynolds, J.C.,
"Definitional interpreters for higher-order programming languages",
Proceedings of the ACM Annual Conference, Boston, MA USA, August 1972, pp. 717-740.
Google
Quotations
719 ;;Quote: applicative languages evaluate expressions within an environment; the environment binds variables to values
| 719 ;;Quote: a function is a value that can be "applied" to its arguments
| 719 ;;Quote: function application and expression evaluation may never produce a result; never terminates or stops with an error
| 719 ;;Quote: in a purely applicative language, function application to known arguments always produces the same result; same for expression evaluation
| 720 ;;Quote: call-by-value if evaluate arguments before function, call-by-name if evaluate on each reference; use left-to-right evaluation to support extensions under call-by-value
| 722 ;;Quote: use abstract syntax instead of strings to represent programs in the defining language; avoids parsing into structured data objects; e.g., integers vs. digit strings
| 722 ;;Quote: use abstract syntax expressions to define, construct, analyze, and classify sets of abstract expressions; e.g., APPL = [opr: EXP, opnd: EXP] defines a set APPL, selectors opr and opnd, classifier appl?, and constructor mk-appl
| 722+;;Quote: APPL = [opr: EXP, opnd: EXP] defines a set APPL, selectors opr and opnd, classifier appl?, and constructor mk-appl
| 723 ;;Quote: define the set CONST by functions const? and evcon; evcon maps each constant into the value it denotes
| 724 ;;Quote: a meta-circular interpreter for expression evaluation defines each feature of the defined language via the corresponding feature of the defining language
| 725 ;;Quote: a meta-circular interpreter does not explain higher-order functions, does not support both call-by-value and call-by-name, and does not support extensions
| 726 ;;Quote: replace function arguments and results by records which represent functions, an 'apply' function to interpret these records, and an environment that binds values to variables; like LISP
| 730 ;;Quote: use continuations to isolate serious operands, expressions, and functions that might not terminate; allows call-by-value or call-by-name
| 733 ;;Quote: a continuation is a linear list of instructions; an interpreter of continuations is a state-transition machine, somewhat like Landin's SECD machines
| 735 ;;Quote: an escape expression is like jumping to a label while passing an argument; applies a higher-order continuation
|
Related Topics
ThesaHelp: references p-r (245 items)
ThesaHelp: ACM references m-z (280 items)
Topic: evaluation in an environment (34 items)
Topic: function application (18 items)
Topic: procedures as data (22 items)
Topic: reduction languages (17 items)
Topic: functional programming (43 items)
Topic: parameter passing by value (5 items)
Topic: parameter passing by name (11 items)
Topic: syntax analysis (29 items)
Topic: lexical analysis (14 items)
Topic: abstraction by name (29 items)
Topic: data as a named set of data objects (22 items)
Group: programming notation (14 topics, 221 quotes)
Topic: data type as constructors, selectors, and predicates (20 items)
Topic: primitive functions (34 items)
Topic: constants (21 items)
Topic: formal methods and languages (53 items)
Topic: interpreter (59 items)
Topic: continuation (16 items)
Topic: state machine (67 items)
Topic: exception handling by try..catch (45 items)
|