previous up next
Go backward to Function Procedures
Go up to Top
Go forward to Declaration Abstracts
RISC-Linz logo

Function Procedures

E: Expression -> Environment -> Store ->
    (Expressible-value × Poststore)_|_

D[[fcnproc I=C resultis E]] = lambda e. lambda s.
    ((updateenv [[I]]
        inFcn-proc((check (E[[E]]e)) o
            (C[[C]]e)) e),
        (return s))
E[[I]] = lambda e. lambda s.
    cases (accessenv [[I]] e) of
        isNatlocn(l) -> ((access l s), (return s))
        ...
        [] isFcn-proc(f) -> (f s)
    end

All semantic equations for E must be revised to cope with side-effects and non-termination!


Author: Wolfgang Schreiner
Last Modification: December 18, 1997

previous up next