Use js_of_ocaml's --enable=effects flag to fix stackoverflows
Motivation and Context
We're facing stackoverflows around LexerLib
Description
This MR uses js_of_ocaml's new --enable=effects
flag which turns non tail recursive code to tail recursive CPS (therefore fixing stackoverflows in browser)
Component
-
compiler -
website -
webide -
vscode-plugin -
debugger
Types of changes
-
Bug fix (non-breaking change which fixes an issue) -
New feature (non-breaking change which adds functionality) -
Breaking change (fix or feature that would cause existing functionality to not work as expected) -
Performance improvement (non-breaking change that improves performance) -
None (change with no changelog)
Changelog
Fixes stackoverflows during Lexing in the browser
Checklist:
-
Changes follow the existing coding style (use dune @fmt
to check).