docs / surface

fx surface map (as implemented)

Package 0.9.74 — complete inventory of shipped functionality. If it is not listed here, do not assume it exists. Includes typed Id, lexical loans, no-grow v[i]=x, concurrency facades, SIMD / @override, and a full std/ module list.

Prefer the language tour when learning. Prefer this page when asking "does fx have X?" Package markdown: docs/SURFACE.md.

A. Kernel

Keywords

enum struct extern fn import let match module return effects if while for break continue else defer region arena scope temp fx own mut true false using · Ok / Err

Comments: //. Refinement where is verification-tier only.

Types

KindForms
Integersi8 i16 i32 i64 · u8…u64
Floatsf32 f64
Scalarsbool string void core_Err
User typesstruct · enum (unit + payload)
CollectionsVec<T> · [T; N] · &[T] · &mut [T] · StrBuilder · Map<string, i32> · Map<string, string> · Buf / Bytes
Sum / ownershipResult<T, E> · own · & · &mut · &region
SIMDv4i32 · v4f32 · v16u8 (portable foothold)
Genericstype params on fn/struct · no traits

Control · operators · Result

B. Memory model

C. Data (limits inline)

SurfaceCanCannot / limit
Vec<T>push/get/len; read v[i]; no-grow v[i]=x / vec_setgrowable index assign that reallocates; many exotic element types
&[T]read; sub-slicewrite through immutable view
&mut [T]index write-through (array-backed)&mut Vec as slice; mut sub-slices
Map<string, i32>CRUD + map_nth_* + map_add_i32insertion-order iterate
Pool / Idstd/pool typed handles; set → vec_setbare i32 at get/set
Map<string, string>map_new_ss / shared map builtinsother KV shapes
Buf / Bytesgrow + view helpersgeneral streaming I/O API

D. std/

Core: vec · string · map · set · buf · box · pair · math · fmt · io · queue · pool · fx_defaults

Caps / net: cap · guest · io_cap · net (TCP dial under NetCap; dial_tls always fails in this package)

Concurrency (link host/concur): nursery · chan · select · mailbox · supervise · sync · async (deprecated stub)

Also: path · strutil · encoding · fs · fs_walk · log · json · json_validate · json_full · sqlite · http · time · env · testing · proptest

Details: Standard library · package docs/SURFACE.md §D.

D2–D4. Loans · SIMD · asm

E. Tooling

doctor · version · new · check · run / build · emit-c · surface · test / fuzz · cc · lsp · mcp · locate · bind · mod vendor|tidy|verify

Useful flags: --cli · --host · --guest · --driver auto|sh|foundry · --fallback-emit-c · --link. Prebuilt: Windows + Linux x86_64. See CLI.

F. Interop

G. Limits (0.9.74)

Also shipped: collection sugar v.push / m.insert; lexical loans; SIMD foothold; @override / constrained asm; guest vec_filter / vec_map / vec_collect; structured concurrency facades; module passport via fx surface.

Not claimed: traits, closures, iterators, Option; nested/exotic Vec shapes; growable v[i]=x that reallocates; package registry; language-package TLS dial (dial_tls always fails; use fxfetch); lexer keywords nursery/spawn/await; macOS prebuilt; fx run program-argv passthrough; DAP mega-IDE; language-wide formal certification; calling this v1.0.

Quick "can I build X?"

GoalPath
Hello + visible heapfx new hello → fx run
Grow collectionsvalue-thread vec / map / buf / strbuf
Vec slot writevec_set / no-grow v[i]=x · examples/pattern_pool
Shared XOR mut / loans& / &mut · Regions
Tally / accumulatemap_add_i32 · examples/composition_tally
Graph / reachabilitytyped Id pool · examples/composition_reach
TCP dialstd/net.dial under NetCap
HTTPS GETseparate fxfetch tool
Structured concurrencystd/nursery + host/concur
Embed in C--cli / --host
Inspect loweringfx emit-c · fx surface

Start · Language · Reference · Std · llms.txt