You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add `beam` as a fourth Fable runtime (alongside dotnet/js/ts/python) for the
core pilot libraries: Ink, Nib, Parchment, Quill. Nib.Browser stays JS-only;
Hedgehog and Nib.Snapshot are deferred.
- build/Commands/Test.fs: Runtime.Beam (beam/erlang alias) + a runBeam step
(fable --lang beam -> rebar3 compile -> erl main:main([]) via ERL_LIBS).
- Quill: TargetPlatform.Beam, Compiler.isBeam detection, skipIfBeam, and
halt(exitCode) exit propagation in universalRunTests.
- Idiomatic FABLE_COMPILER_BEAM branches for platform primitives (cwd, isCI,
stopwatch, writeRaw, Ink NO_COLOR, Parchment stderr); the JS-only browser
sink is excluded from beam.
- CI: erlef/setup-beam (OTP + rebar3); .gitignore beam-build/.
Verified against local Fable: Ink 51/51, Nib 68/68, Quill 29 + 1 skip,
Parchment 27/27. Requires an unreleased Fable (3 Beam runtime fixes:
Async.StartChild, DU ordered comparison, function PhysicalEquality); bump the
`fable` tool once released so the tool-based build picks them up.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
chore: bump Fable
chore: simplify some comments
0 commit comments