github melange-re/melange 4.0.0-52

one day ago


  • CLI: passing --eval to melc now works as expected
  • runtime: add some bindings to Js.Bigint
  • core: emit throw new Error(..) rather than throwing a JS object with the
    Melange exception payload
  • stdlib: fix runtime primitive for Float.{min,max} and related functions
  • core: emit let instead of var in compiled JS
  • core: in compiled JS, stop generating closures in loops that capture mutable
    variables (#1020)
  • runtime: add bindings to Js.Set
  • runtime: add minimal bindings for JS iterators (#1060)
  • core: in compiled JS, emit const for variables that Melange knows aren't
    going to be reassigned
  • runtime: add minimal bindings for JS iterators
  • core: handle missing .cmj when compiling dune virtual libraries
    (#1067, fixes
  • core: print lambda IR after TRMC pass when --drawlambda is passed
  • core: remove unnecessary internal code from melange-compiler-libs, slimming
    down the melange executable and speeding up the build
  • core: implement warning 51 in Melange (wrong-tailcall-expectation)
    • This warning had previously been disabled entirely in the typechecker
      version that Melange uses. It becomes more important with TRMC support
      added in Melange 2.1.0.
  • core: accept esm{,-global} in addition to es6{,-global} for
    --mel-module-type; accept --mel-module-system in addition to
    --mel-module-type too
  • core: upgrade the OCaml type checker version to OCaml 5.2
  • core: upgrade the Stdlib to match OCaml 5.2's
  • runtime: add bindings for functions in WeakMap and WeakSet
  • runtime: add bindings to Js.Map
  • core: fix a recursive module code generation bug when submodule names inside
    recursive modules are mangled

Don't miss a new melange release

NewReleases is sending notifications on new releases.