1
0
This repository has been archived on 2025-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
opal-examples/Blatt07/Environment.impl
2013-10-19 01:17:37 +02:00

16 lines
480 B
Plaintext

IMPLEMENTATION Environment
IMPORT Denotation COMPLETELY
IMPORT SafeNat COMPLETELY
IMPORT Seq COMPLETELY
DATA binding == binding(key: denotation, value: safeNat)
DATA environment == environment(bindings: seq[binding])
DEF emptyenv == environment(<>)
DEF lookup(environment(<>),_) == error("Nicht gefunden")
DEF lookup(environment(binding(k,v)::S),x) == IF k=x THEN v ELSE lookup(environment(S),x) FI
DEF bind(environment(S),x,v) == environment(binding(x,v)::S)