Engine: rewrite in OCaml
The engine was written in javascript a long time ago, when I did not know a lot about static checking!
It will be very convenient to have it in OCaml, compiled to javascript.
In this rewrite, I'd like to change at least one thing: the "step back". Instead of recording the initial step and "go back to the beginning, go forward $n-1$ steps", it would be much better to apply the "reverse effectful" function.
This also raises the question of how much is computed at runtime by the engine and how much is computed at compile-time by the compiler!
I just tried [1] - very impressive - towards the end, the rendering got a little lost, especially when I used the back-arrow, forward-arrow a number of times etc. Still, a great tool, thanks for making it available. Can't wait for it to be refactored into ocaml! [1] https://choum.net/panglesd/slides/slides_CTA/cta_anglesdauriac.html
Thanks a lot!
Yes, one of the reason for the OCaml rewrite is to have a "back arrow" that really works! Can't wait to ... have some time to do it :)
Fixed in #74.
Though, [1] mentioned above needs to be updated to use the new engine to benefit it's fixes!