diff options
author | Escherichia | 2024-05-23 23:21:12 +0200 |
---|---|---|
committer | GitHub | 2024-05-23 23:21:12 +0200 |
commit | 239435fc667fa0d18979e603ce3fd4caa128cd54 (patch) | |
tree | 8e4b2d55689ce25179342a7e1759c49e4179af2e /compiler/InterpreterStatements.mli | |
parent | b52ac5d0e35d2f622271ad4ffbeb82b07cfdbdac (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.mli | 10 |
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 |