summaryrefslogtreecommitdiff
path: root/src/lem_interp/interp.lem
diff options
context:
space:
mode:
Diffstat (limited to 'src/lem_interp/interp.lem')
-rw-r--r--src/lem_interp/interp.lem7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/lem_interp/interp.lem b/src/lem_interp/interp.lem
index bbcec75b..0bba3b7e 100644
--- a/src/lem_interp/interp.lem
+++ b/src/lem_interp/interp.lem
@@ -2214,6 +2214,13 @@ let rec resume mode stack value =
| Action action stack -> Action action (Hole_frame id exp t_level env mem stack)
| Error l s -> Error l s
end
+ | (Hole_frame id exp t_level env mem stack, Nothing) ->
+ match resume mode stack Nothing with
+ | Value v ->
+ match interp_main mode t_level (add_to_env (id,v) env) mem exp with | (o,_,_) -> o end
+ | Action action stack -> Action action (Hole_frame id exp t_level env mem stack)
+ | Error l s -> Error l s
+ end
| (Thunk_frame exp t_level env mem Top,_) ->
match interp_main mode t_level env mem exp with | (o,_,_) -> o end
| (Thunk_frame exp t_level env mem stack,value) ->