Skip to content

Add Beam (Erlang) target documentation#228

Open
dbrattli wants to merge 6 commits intodevfrom
beam-docs
Open

Add Beam (Erlang) target documentation#228
dbrattli wants to merge 6 commits intodevfrom
beam-docs

Conversation

@dbrattli
Copy link
Collaborator

@dbrattli dbrattli commented Mar 1, 2026

Summary

  • Add getting-started guide for the Beam (Erlang) target with prerequisites, compilation, and run instructions
  • Add dedicated Beam documentation section with build-and-run, features, and .NET/F# compatibility pages
  • Features docs cover DUs (atom-tagged tuples), records (Erlang maps), pattern matching, async/task CPS model, MailboxProcessor, emit, imports, erased unions, and more
  • Compatibility docs cover type mappings (native integers, no wrappers needed), BCL support, FSharp.Core support, reflection, and concurrency
  • Update navigation menu with Beam entry in Getting Started and new Beam (Erlang) sidebar section

Test plan

  • Verify site builds with npm run build
  • Check all new pages render correctly
  • Verify navigation links work in sidebar
  • Review code examples for accuracy

🤖 Generated with Claude Code

dbrattli and others added 5 commits March 1, 2026 12:53
Add documentation for the Fable Beam target covering build & run,
features (DUs, records, pattern matching, async, MailboxProcessor),
and .NET/F# compatibility (type mappings, reflection, collections).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix erlc compilation order in getting-started guide (runtime before user code)
- Fix extra quote typo in compatibility table
- Add link to Build and Run from getting-started page
- Move nativeOnly section to top of Utilities for better discoverability
- Clarify task/async equivalence and limitations on Beam
- Fix inaccurate claim about integer handling vs Python target

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The default output goes to the project directory (where the .fsproj is),
not ./output.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The Beam backend compiles all top-level code into main/0 regardless of
OutputType or [<EntryPoint>] attribute.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@MangelMaxime
Copy link
Member

We should also add Beam to this table:

https://github.com/fable-compiler/fable-compiler.github.io/blob/dev/docs/docs/index.md#available-targets

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants