Skip to content

Releases: MagnusOpera/FScript

0.16.0

10 Feb 23:00

Choose a tag to compare

  • Added attribute-based exports with [] (case-sensitive), replacing export let.
  • Added qualified discriminated union support:
    • constructor usage with Type.Case
    • match patterns with Type.Case
  • Preserved backward compatibility for unqualified DU cases (Case still works).
  • Extended parser/type-inference/eval test coverage for export attributes and qualified DU behavior.

Full Changelog: 0.15.2...0.16.0

0.15.2

10 Feb 21:15

Choose a tag to compare

  • Update README.

Full Changelog: 0.15.1...0.15.2

0.15.0

10 Feb 20:44

Choose a tag to compare

  • Added NuGet package icon metadata for MagnusOpera.FScript.Language and MagnusOpera.FScript.Runtime.
  • Updated README.

Full Changelog: 0.14.0...0.15.0

0.14.0

10 Feb 07:50

Choose a tag to compare

  • Added support for multiline lambda bodies inside parenthesized call chains, including correct pipeline continuation after ).
  • Added support for aligned multiline let parameter declarations (strict column alignment).
  • Tightened layout rules for multiline literals and inline record type annotations.
  • Improved parse diagnostics for layout issues: misindented expressions now report explicit indentation errors instead of generic unexpected-token errors.
  • Updated syntax/indentation documentation and parser regression tests accordingly.

Full Changelog: 0.13.0...0.14.0

0.13.0

09 Feb 20:58

Choose a tag to compare

  • Added support for multiline lambda bodies inside parenthesized call chains, including pipeline continuation after ).
  • Added parser tests for multiline lambda/pipeline behavior.
  • Added support for aligned multiline let parameter declarations with strict column alignment.
  • Tightened indentation/layout rules for multiline literals and inline record annotation shapes.
  • Updated syntax-and-indentation.md with the new accepted layouts and multiline lambda examples.

Full Changelog: 0.12.0...0.13.0

0.12.0

09 Feb 08:56

Choose a tag to compare

  • Added newline-separated multiline layouts for map, record, list literals, record updates, and inline record type annotations.
  • Kept semicolon-separated syntax fully compatible.
  • Added parser tests and a new samples/layout-styles.fss.
  • Updated syntax docs and showcase examples.

Full Changelog: 0.10.0...0.12.0

0.11.0

08 Feb 21:20

Choose a tag to compare

  • Fix fscript macOS binary identifier

Full Changelog: 0.9.0...0.11.0

0.10.0

08 Feb 21:03

Choose a tag to compare

  • Added List.empty (arity-0 value, like Map.empty).
  • Added Map.map (maps values only) and Map.iter.
  • Registered new externs in runtime registry.
  • Added tests for new extern behavior and registry exposure.
  • Updated docs for extern catalog and map/list value semantics.

Full Changelog: 0.9.0...0.10.0

0.9.0

08 Feb 20:35

Choose a tag to compare

  • Unified map literals with brace syntax.
  • Added key-expression support in map literals.
  • Completed parser/tests/docs updates for the new map syntax.

Full Changelog: 0.8.0...0.9.0

0.8.0

08 Feb 19:28

Choose a tag to compare

  • Fixed inference for unannotated record field access in Option.map lambdas.

Full Changelog: 0.7.0...0.8.0