Documentation
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
goalchemy
command
Command goalchemy validates and transpiles Goalchemy programs.
|
Command goalchemy validates and transpiles Goalchemy programs. |
|
hardening
command
Command hardening runs bounded differential campaigns, performance baselines, and versioned upgrade checks for all released targets.
|
Command hardening runs bounded differential campaigns, performance baselines, and versioned upgrade checks for all released targets. |
|
examples
|
|
|
bank
command
Command bank models accounts with typed errors, interfaces, and deferred audit logging.
|
Command bank models accounts with typed errors, interfaces, and deferred audit logging. |
|
calc
command
Command calc parses and evaluates integer arithmetic expressions.
|
Command calc parses and evaluates integer arithmetic expressions. |
|
life
command
Command life runs Conway's Game of Life on a fixed toroidal board.
|
Command life runs Conway's Game of Life on a fixed toroidal board. |
|
wordfreq
command
Command wordfreq counts words in a text and prints the most frequent ones.
|
Command wordfreq counts words in a text and prints the most frequent ones. |
|
internal
|
|
|
catalog
Package catalog locates the contract catalog and exposes the external capability registry derived from it.
|
Package catalog locates the contract catalog and exposes the external capability registry derived from it. |
|
conformance
Package conformance runs canonical contract cases against a target's runtime through its JSON Lines harness process.
|
Package conformance runs canonical contract cases against a target's runtime through its JSON Lines harness process. |
|
contracts
Package contracts loads, validates, and normalizes the canonical runtime contract catalog and the target mappings that implement it.
|
Package contracts loads, validates, and normalizes the canonical runtime contract catalog and the target mappings that implement it. |
|
driver
Package driver runs the compiler pipeline: load, validate, lower, emit.
|
Package driver runs the compiler pipeline: load, validate, lower, emit. |
|
emit/c
Package c emits C17.
|
Package c emits C17. |
|
emit/csharp
Package csharp emits C# 12 for .NET 8.
|
Package csharp emits C# 12 for .NET 8. |
|
emit/golang
Package golang emits lowered Go: a Go program whose control flow is the IR's basic blocks and whose implementation-dependent operations (append growth, map order, panic reporting) call the Goalchemy Go runtime.
|
Package golang emits lowered Go: a Go program whose control flow is the IR's basic blocks and whose implementation-dependent operations (append growth, map order, panic reporting) call the Goalchemy Go runtime. |
|
emit/java
Package java emits Java 21.
|
Package java emits Java 21. |
|
emit/py
Package py emits Python 3.10+.
|
Package py emits Python 3.10+. |
|
emit/rust
Package rust emits Rust (edition 2021).
|
Package rust emits Rust (edition 2021). |
|
emit/ts
Package ts emits TypeScript for Node.js.
|
Package ts emits TypeScript for Node.js. |
|
frontend
Package frontend loads Go packages under the locked Goalchemy source profile.
|
Package frontend loads Go packages under the locked Goalchemy source profile. |
|
hardening
Package hardening generates small, type-valid programs for differential testing.
|
Package hardening generates small, type-valid programs for differential testing. |
|
ir
Package ir defines Goalchemy's target-independent typed intermediate representation: typed functions made of basic blocks with explicit branch targets, local storage cells, and three-address instructions whose evaluation order and copy boundaries are already decided by lowering.
|
Package ir defines Goalchemy's target-independent typed intermediate representation: typed functions made of basic blocks with explicit branch targets, local storage cells, and three-address instructions whose evaluation order and copy boundaries are already decided by lowering. |
|
link
Package link resolves the runtime files a generated program needs and writes them with a build manifest.
|
Package link resolves the runtime files a generated program needs and writes them with a build manifest. |
|
lower
Package lower translates type-checked Goalchemy source into IR.
|
Package lower translates type-checked Goalchemy source into IR. |
|
project
Package project reads goalchemy.yaml, the project configuration that records roots, build tags, the language gate, and target outputs.
|
Package project reads goalchemy.yaml, the project configuration that records roots, build tags, the language gate, and target outputs. |
|
sourcemap
Package sourcemap writes Source Map v3 files mapping generated lines back to Goalchemy source positions.
|
Package sourcemap writes Source Map v3 files mapping generated lines back to Goalchemy source positions. |
|
specgen
Package specgen generates per-target specifications and harness bindings from the canonical contract catalog.
|
Package specgen generates per-target specifications and harness bindings from the canonical contract catalog. |
|
subset
Package subset validates that type-checked Go source stays within the implemented Goalchemy feature gates.
|
Package subset validates that type-checked Go source stays within the implemented Goalchemy feature gates. |
|
testutil
Package testutil runs language fixtures natively and through Goalchemy targets and compares their observations.
|
Package testutil runs language fixtures natively and through Goalchemy targets and compares their observations. |
|
lib
|
|
|
context
Package context provides Goalchemy's cancellation contexts; deadlines use the virtual clock.
|
Package context provides Goalchemy's cancellation contexts; deadlines use the virtual clock. |
|
errors
Package errors provides Goalchemy's error values.
|
Package errors provides Goalchemy's error values. |
|
runtime
Package runtime provides Goalchemy's scheduler controls.
|
Package runtime provides Goalchemy's scheduler controls. |
|
sync
Package sync provides Goalchemy's synchronization primitives.
|
Package sync provides Goalchemy's synchronization primitives. |
|
task
Package task provides structured waiting for Goalchemy programs.
|
Package task provides structured waiting for Goalchemy programs. |
|
time
Package time provides Goalchemy's virtual clock: Sleep advances it deterministically.
|
Package time provides Goalchemy's virtual clock: Sleep advances it deterministically. |
|
targets
|
|
|
go/runtime
Package rt is the Goalchemy runtime for the lowered Go target.
|
Package rt is the Goalchemy runtime for the lowered Go target. |
|
go/tests/harness
command
Command harness serves runtime conformance requests for the Go target over JSON Lines on standard input and output.
|
Command harness serves runtime conformance requests for the Go target over JSON Lines on standard input and output. |
|
tests
|
|
|
corpus/r001_print_tuple
command
|
|
|
corpus/r002_named_map_methods
command
|
|
|
corpus/r003_func_nil_compare
command
|
|
|
corpus/r004_defer_named_results
command
|
|
|
corpus/r005_append_nil_capacity
command
|
|
|
corpus/r006_comma_ok_assert_type
command
|
|
Click to show internal directories.
Click to hide internal directories.