Topic: evaluation in an environment

topics > computer science > programming > Group: expression evaluation


curried functions
environment variables
functional programming
local declaration of data
names defined by context
programming as mathematics
reduction languages
semantics by an abstract machine
stack machine
running programs in a workspace or environment
user profile


The environment associates identifiers with values, or more generally, their precise meaning. It is the context for identifiers. A procedure's environment includes parameter bindings to arguments.

The meaning of an expression depends on its environment. The .lambda. calculus and similar constructions formally defines evaluation. (cbb 5/80 and 1/93)

Subtopic: evaluation up

Quote: evaluation is executing the expression (interpretation) and dereferencing the result [»hansDR5_1978]
Quote: function application and expression evaluation may never produce a result; never terminates or stops with an error [»reynJC8_1972]

Subtopic: partial evaluation up

Quote: direct serialization using the receiver's in-memory representation; dynamically generated by partial evaluation; 2-3x faster [»konoK4_2000]

Subtopic: semantics in terms of environment up

Quote: environment is the set of variables modified by the programming language; defines the meaning of a sentence [»wirtN1_1966]
Quote: allow side effects by semantic evaluation in terms of an environment and store [»tennRD8_1976, OK]
Quote: one machine state and multiple environments; environment only altered by the variable binding operator [»straC1_1974]
Quote: L-values are not change by assignment; treat variables as L-values in where-clauses and .lambda.-expressions; expensive but inevitable [»straC8_1967]
Quote: an abstract store (.phi.) maps L-values to R-values; assignment is an operator on .phi. producing a fresh .phi. [»straC8_1967]

Subtopic: evaluate in terms of an environment up

Quote: evaluate an expression in an environment that defines values for its free variables [»straC8_1967]
Quote: the environment of an applicative expression defines values for free variables [»landPJ1_1964]
Quote: algorithm for evaluating an applicative expression relative to an environment; first formalization of expression evaluation
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 [»reynJC8_1972]
QuoteRef: leavBM4_1970 ;;3 evaluate an item in terms of an environment
Quote: mechanical evaluation of state machine; current state is stack of temporaries, environment, control, and dump [»landPJ_1966, OK]
Quote: during evaluation of an applicative expression, a state is a stack, environment, control, and a dump; (S, E, C, D) [»landPJ1_1964]
QuoteRef: landPJ_1966 ;;120 each AE a value within an environment (value of free variables)
QuoteRef: landPJ_1966 ;;121 value of id is environment applied to id (val(e)(x)==e(x) value of combination is combination of value of parts value of lambda expression is a function with a bound variable derived environment.
QuoteRef: landPJ_1966 ;;122 mechanical evaluation: layered environment of paired id and value list where val(e) (x) is (location e**2 x) e**2
Quote: applicative languages evaluate expressions within an environment; the environment binds variables to values [»reynJC8_1972]

Subtopic: closure up

Quote: Vesta uses closures to delay tool invocations until the resulting files are needed
Quote: a closure is a rule for evaluating the expression and an environment; it is an R-value that is not atomic [»straC8_1967]
Quote: a closure is a lambda expression and an environment; may have a value [»landPJ1_1964]
QuoteRef: landPJ_1966 ;;122 value of a lambda expression is a "closure" of environment part (environment with bound id list) and control part (a lambda body)
Quote: anonymous inner classes implement closures; e.g., makeAdder(n) [»bensBW2_1999]
Quote: a typed assembly language enforces closures, tuples, and abstract data types without restricting low-level optimizations such as register allocation

Subtopic: environment up

Quote: a specification is a formal description of the interface between a system and its environment
QuoteRef: tennRD8_1976 ;;441 environment-- binding of values to identifiers
Quote: Smalltalk can define a class in the context of an object with given properties [»goldA3_1976]
Quote: an ML environment is a set of declarations that gives precise meaning to text [»spooCR4_1986]
Quote: the environment for a procedure contains its variables and continuation point [»hansDR5_1978]
Quote: every process (and its environment) knows the environment that created it [»hansDR5_1978]
Quote: a context consists of a program reference, a binding rule for names, and local storage [»lampBW_1974, OK]
QuoteRef: hansDR5_1978 ;;396 "The expression e.i refers to the identifier i in the environment e.

Subtopic: database context up

QuoteRef: bobrDG9_1974 ;;161 Conniver: has data-base context which easily changed (%eg INFOS subindex)
Quote: a SUIT database maintains information about all screen objects including their location and color; updated at each invocation

Related Topics up

Group: parameters   (10 topics, 145 quotes)

Topic: context (8 items)
Topic: continuation (16 items)
Topic: curried functions (14 items)
Topic: environment variables (5 items)
Topic: functional programming (45 items)
Topic: local declaration of data (11 items)
Topic: names defined by context (36 items)
Topic: namespace (19 items)
Topic: programming as mathematics (27 items)
Topic: reduction languages (17 items)
Topic: semantics by an abstract machine (38 items)
Topic: stack machine (10 items)
Topic: running programs in a workspace or environment (14 items)
Topic: user profile
(16 items)

Updated barberCB 5/04
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.