Releases · purescript-lua/purescript-lua · GitHub
Skip to content

Releases: purescript-lua/purescript-lua

0.3.0.0

25 Jun 08:07
0.3.0.0
5ea38a5

Choose a tag to compare

Added

  • pslua is now a first-class Spago backend. With
    workspace.backend.cmd: pslua in spago.yaml, spago build links the
    project to Lua, and a new --run <Module>.<entry> flag lets spago run and
    spago test compile an entry point, execute it with lua, and forward the
    interpreter's exit code (#117).
  • Projects consume the published Lua package set through
    workspace.packageSet.url in spago.yaml: the PureScript Registry baseline
    with the Lua FFI forks overlaid.

Changed

  • Migrated the toolchain to the current Spago (spago.yaml + spago.lock and
    the PureScript Registry), replacing the Dhall-based configuration (#55).
  • Deeply nested Effect/ST do-blocks (magic-do) and other deep monadic
    spines are flattened so the generated Lua stays under the interpreter's
    syntactic nesting limit (#46, #104, #108).
  • The Nix toolchain moved to purescript-overlay for a pinned purs
    0.15.16 and Spago 1.0.4 (#54).

Fixed

  • De Bruijn indices are lowered correctly when a binder is removed, closing a
    class of silent miscompilations (#56).
  • Eta reduction no longer rewrites programs unsoundly (#32); shift,
    substitute, and free-reference counting now respect sequential Let
    scoping (#37).
  • Array-literal pattern binders read 1-based Lua indices instead of 0-based
    (#49).
  • Char literals are escaped correctly, and table literals are parenthesised
    before they are indexed.
  • The parent directory of --lua-output-file is created when it is missing
    (#61).

0.2

21 Apr 14:21
9409776

Choose a tag to compare

0.2

What's Changed

  • Unused foreign imports are eliminated;
  • All bindings are stored in a local variable M;

Alpha 0.1.2

17 Jul 20:42

Choose a tag to compare

Alpha 0.1.2 Pre-release
Pre-release

What's Changed

  • Added missing support for the polymorphic record updates.
  • Fixed name shadowing in #5

Full Changelog: 0.1.0-alpha...0.1.2-alpha

Alpha 0.1.1

15 Jul 15:35

Choose a tag to compare

Alpha 0.1.1 Pre-release
Pre-release
  • Fixed name shadowing caused by inliner.

Alpha 0.1.0

06 Jul 06:32

Choose a tag to compare

Alpha 0.1.0 Pre-release
Pre-release

Alpha software is not thoroughly tested by the developer before it is released to customers. Alpha software may contain serious errors, and any resulting instability could cause crashes or data loss. Alpha software may not contain all of the features that are planned for the final version.

https://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha