Map
Index
Random
Help
th

QuoteRef: hansDR5_1978

topics > all references > ThesaHelp: references g-h



Topic:
monitored variable
Topic:
evaluation in an environment
Topic:
procedures as data
ThesaHelp:
references g-h
ThesaHelp:
ACM references f-l
Topic:
control returning functions and expressions
Topic:
variable as reference to a value
Topic:
value as an object
Topic:
interpreter
Topic:
expression language
Topic:
else clause
Topic:
assigning values to statements
Topic:
if-then-else test chain
Topic:
function call
Topic:
continuation
Topic:
co-routines
Topic:
parameter passing by argument list
Topic:
return from procedure
Group:
program control
Topic:
parameter passing by value
Topic:
initialized constants
Topic:
running programs in a workspace or environment
Topic:
names defined by context
Topic:
parameter passing by reference
Topic:
replacement as a procedure call
Topic:
random number generation
Topic:
object transformation language

Reference

Hanson, D.R., "The SL5 procedure mechanism", Communications of the ACM, 21, 5, pp. 392-400, May 1978. Google

Quotations
QuoteRef: hansDR5_1978 ;;392 "Procedures and activation records for procedures (called environment are source-language data objects. [is SL5
393 ;;Quote: an SL5 expression returns a value and a signal; the signal is an unsigned integer used for control purposes, e.g., true/false
393 ;;Quote: the value of an expression can be a variable that holds the value; dereferencing obtains the value
393 ;;Quote: evaluation is executing the expression (interpretation) and dereferencing the result
393 ;;Quote: in SL5, if..then..else is an expression whose result is the result of the then.. or else.. part
393 ;;Quote: in SL5, 'e1 and e2' has the value of e2 if both succeed, else the value of e1
393 ;;Quote: SL5 procedure invocation is decomposed into create environment, bind arguments, resume execution
QuoteRef: hansDR5_1978 ;;393 "In SL5, procedures are data objects. A procedure is created by the func := 'procedure (id1, id2, ..., idn) declarations body 'end
394 ;;Quote: the environment for a procedure contains its variables and continuation point
394 ;;Quote: every process (and its environment) knows the environment that created it
394 ;;Quote: in SL5, sending an argument list to an environment returns the environment with formal arguments assigned, normally to arg values
394 ;;Quote: a 'resume' expression suspends the current environment and passes a value and the resumer's identity to another environment
394 ;;Quote: SL5 function calls are abbreviations for resume(create f with arg_list)
395 ;;Quote: in SL5, 'return r to e' suspends environment, resumes environment e with value r; prior resumer of e unchanged
395 ;;Quote: to help construct control relationships, every environment can get its creator and its resumer
396 ;;Quote: a non-local or public identifier in an environment is assigned a constant value when the environment is created
QuoteRef: hansDR5_1978 ;;396 "The expression e.i refers to the identifier i in the environment e.
396 ;;Quote: in SL5, a transmitter is a procedure associated with a parameter that intercepts actual arguments and returns a value
396 ;;Quote: a reference argument to an environment is interpreted whenever the argument changes [?]
QuoteRef: hansDR5_1978 ;;397 "A [argument] transmitter may be a built-in procedure, a programmer-defined procedure, or an environment.
397 ;;Quote: in SL5, an assignment becomes the value transmission transmitter
397 ;;Quote: write a random number generator in SL5 as an environment that is resumed for each value
397 ;;Quote: can define multiple generators with a single procedure and multiple environments
397+;;Quote: should conceptualize program organization in terms of environments instead of procedures


Related Topics up

Topic: monitored variable (28 items)
Topic: evaluation in an environment (35 items)
Topic: procedures as data (22 items)
ThesaHelp: references g-h (299 items)
ThesaHelp: ACM references f-l (241 items)
Topic: control returning functions and expressions (6 items)
Topic: variable as reference to a value (21 items)
Topic: value as an object (29 items)
Topic: interpreter (59 items)
Topic: expression language (14 items)
Topic: else clause (11 items)
Topic: assigning values to statements (7 items)
Topic: if-then-else test chain (18 items)
Topic: function call (28 items)
Topic: continuation (16 items)
Topic: co-routines (13 items)
Topic: parameter passing by argument list (6 items)
Topic: return from procedure (9 items)
Group: program control   (27 topics, 547 quotes)
Topic: parameter passing by value (5 items)
Topic: initialized constants (12 items)
Topic: running programs in a workspace or environment (14 items)
Topic: names defined by context (36 items)
Topic: parameter passing by reference (11 items)
Topic: replacement as a procedure call (10 items)
Topic: random number generation (29 items)
Topic: object transformation language (10 items)

Collected barberCB 1980
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.