1
0
Fork 0
agulator/agda/State.agda

25 lines
602 B
Plaintext

module State where
-- not really used yet
record State (V : Set) : Set where
constructor state
field
globals : Map String V
scopes : List (Map String V)
showGlobals : State Nat → String
showGlobals s = "globals: " +++ (showMap show (State.globals s))
showScopes : State Nat → String
showScopes s = "scopes: " +++ (showList (showMap show) (State.scopes s))
showState : State Nat → String
showState s = "state: " +++ ((showGlobals s) +++ (", " +++ (showScopes s)))
smap : Map String Nat
smap = mapOf ("foo" ∷ []) (4 ∷ [])
stest : State Nat
stest = state (smap) (smap ∷ [])