Releases: MagnusOpera/FScript
Releases · MagnusOpera/FScript
0.16.0
- 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
- Update README.
Full Changelog: 0.15.1...0.15.2
0.15.0
- 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
- 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
- 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
- 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
- Fix fscript macOS binary identifier
Full Changelog: 0.9.0...0.11.0
0.10.0
- 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
- 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
- Fixed inference for unannotated record field access in Option.map lambdas.
Full Changelog: 0.7.0...0.8.0