summaryrefslogtreecommitdiff
path: root/compiler/InterpreterStatements.mli
diff options
context:
space:
mode:
authorEscherichia2024-05-23 23:21:12 +0200
committerGitHub2024-05-23 23:21:12 +0200
commit239435fc667fa0d18979e603ce3fd4caa128cd54 (patch)
tree8e4b2d55689ce25179342a7e1759c49e4179af2e /compiler/InterpreterStatements.mli
parentb52ac5d0e35d2f622271ad4ffbeb82b07cfdbdac (diff)
Update the interpreter so that it is not written in CPS style (#120)
* Start turning the compiler in a style which is less CPS * Update a function in InterpreterExpressions.ml * WIP work on cps * WIP * WIP, currently on InterpreterStatements.ml * WIP * Finished CPS-related modification * Fixed some warning related to documentation comments * Finished loop support, fixed a loop * fixed a typed value * Fixed check_disappeared related error * cleaned check_disappeared related error * Start cleaning up * Do more cleanup * Make some cleanup and fix an issue * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Rename a function * Do more cleanup * Cleanup the loops code and fix some bugs * Cleanup assign_to_place * Make a minor cleanup --------- Co-authored-by: Son Ho <hosonmarc@gmail.com>
Diffstat (limited to '')
-rw-r--r--compiler/InterpreterStatements.mli10
1 files changed, 7 insertions, 3 deletions
diff --git a/compiler/InterpreterStatements.mli b/compiler/InterpreterStatements.mli
index 7a2783bb..79ce1f73 100644
--- a/compiler/InterpreterStatements.mli
+++ b/compiler/InterpreterStatements.mli
@@ -17,7 +17,11 @@ open Cps
continuation with [None].
*)
val pop_frame :
- config -> Meta.meta -> bool -> (typed_value option -> m_fun) -> m_fun
+ config ->
+ Meta.meta ->
+ bool ->
+ eval_ctx ->
+ typed_value option * eval_ctx * (eval_result -> eval_result)
(** Helper.
@@ -46,7 +50,7 @@ val create_push_abstractions_from_abs_region_groups :
eval_ctx
(** Evaluate a statement *)
-val eval_statement : config -> statement -> st_cm_fun
+val eval_statement : config -> statement -> stl_cm_fun
(** Evaluate a statement seen as a function body *)
-val eval_function_body : config -> statement -> st_cm_fun
+val eval_function_body : config -> statement -> stl_cm_fun