Skip to content

fx 0.9.0 - capability regions

Choose a tag to compare

@shawnlondono shawnlondono released this 08 Aug 03:28
· 6 commits to main since this release

fx 0.9.0 — capability regions

Language package for ledocorp/fxlang
Tag: v0.9.0
Docs: ledocorp.org/fx

Capability-region release on 0.8.5: one fx dialect for apps, scripting, embedded guests, and extensions — host-minted authority, same region and slot-mut physics.


Highlights

Area What users get
Capabilities FsCap / OutCap in std/cap; cap-required I/O in std/io_cap
Guest session std/guest + host fx_guest_begin / mint_* / end — teardown revokes caps
Scripting / extensions Host mints caps; guest cannot ambient-open outside the allowlist (deny is loud)
Embedded Caps lower as opaque handles in emit-C ABI — host remains the trust boundary
Composition SoA / pools / vec_set story unchanged — caps add authority, not a soft dialect

See COMPOSITION.md for the capability-region recipe and examples cap_regions_* / cap_guest_ctx.


Install

fx doctor
fx version                 # expect v0.9.0
fx new hello && cd hello && fx run main.fx

Honesty bounds

Still not in this tag:

  • Soft / dynamic heap that erases region physics
  • Package manager / registry
  • DAP / integrated debugger product
  • AllocCap / linear-only caps
  • Language-wide formal certification claims

Windows IR (package note): When the package includes third_party/qbe/windows/qbe.exe, Windows uses native PE IR (amd64_win) for the same everyday differential set as Linux. Linux still ships third_party/qbe/obj/qbe. If qbe.exe is missing from a build, use --emit-c. See CLI.md.


Thanks

Stewarded by Shawn Londono / LedoCorp · Apache-2.0
QBE © Quentin Carbonneaux — MIT (third_party/qbe/LICENSE)