diff options
author | Adam Chlipala <adamc@hcoop.net> | 2008-07-13 10:17:06 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2008-07-13 10:17:06 -0400 |
commit | 3316f3c317e587a5fc2ecf38f061a72b48e3b94e (patch) | |
tree | fae8c92c195e5f7976352a337017d285e729f859 /src/cjr_env.sml | |
parent | 7281dbb2fc2a5f50c1049bad629f330e2ff3f7ca (diff) |
Remove closure conversion in favor of zany fun with modules, which also replaces 'page'
Diffstat (limited to 'src/cjr_env.sml')
-rw-r--r-- | src/cjr_env.sml | 25 |
1 files changed, 2 insertions, 23 deletions
diff --git a/src/cjr_env.sml b/src/cjr_env.sml index de1c31a1..686c99b1 100644 --- a/src/cjr_env.sml +++ b/src/cjr_env.sml @@ -44,7 +44,6 @@ type env = { relE : (string * typ) list, namedE : (string * typ) IM.map, - F : (string * typ * typ) IM.map, structs : (string * typ) list IM.map } @@ -55,7 +54,6 @@ val empty = { relE = [], namedE = IM.empty, - F = IM.empty, structs = IM.empty } @@ -66,7 +64,6 @@ fun pushTNamed (env : env) x n co = relE = #relE env, namedE = #namedE env, - F = #F env, structs = #structs env} fun lookupTNamed (env : env) n = @@ -81,7 +78,6 @@ fun pushERel (env : env) x t = relE = (x, t) :: #relE env, namedE = #namedE env, - F = #F env, structs = #structs env} fun lookupERel (env : env) n = @@ -99,7 +95,6 @@ fun pushENamed (env : env) x n t = relE = #relE env, namedE = IM.insert (#namedE env, n, (x, t)), - F = #F env, structs = #structs env} fun lookupENamed (env : env) n = @@ -107,21 +102,6 @@ fun lookupENamed (env : env) n = NONE => raise UnboundNamed n | SOME x => x -fun pushF (env : env) n x dom ran = - {namedT = #namedT env, - - numRelE = #numRelE env, - relE = #relE env, - namedE = #namedE env, - - F = IM.insert (#F env, n, (x, dom, ran)), - structs = #structs env} - -fun lookupF (env : env) n = - case IM.find (#F env, n) of - NONE => raise UnboundF n - | SOME x => x - fun pushStruct (env : env) n xts = {namedT = #namedT env, @@ -129,7 +109,6 @@ fun pushStruct (env : env) n xts = relE = #relE env, namedE = #namedE env, - F = #F env, structs = IM.insert (#structs env, n, xts)} fun lookupStruct (env : env) n = @@ -137,10 +116,10 @@ fun lookupStruct (env : env) n = NONE => raise UnboundStruct n | SOME x => x -fun declBinds env (d, _) = +fun declBinds env (d, loc) = case d of DVal (x, n, t, _) => pushENamed env x n t - | DFun (n, x, dom, ran, _) => pushF env n x dom ran + | DFun (fx, n, _, dom, ran, _) => pushENamed env fx n (TFun (dom, ran), loc) | DStruct (n, xts) => pushStruct env n xts end |