2fbcdba0b1
Erste lauffähige Iteration. examples/sum.ail.json wird zu nativem Binary kompiliert und druckt 55 (Summe 1..10) als End-to-End-Test. Architektur: - ailang-core: hashbares JSON-AST + canonical-form + pretty-printer - ailang-check: monomorpher HM-Subset + Effekt-Set-Tracking - ailang-codegen: LLVM-IR-Text-Emitter (kein libllvm-link) - ail: CLI mit check/manifest/render/describe/emit-ir/build/builtins Designentscheidungen sind in docs/DESIGN.md dokumentiert; der Verlauf in docs/JOURNAL.md. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
33 lines
731 B
TOML
33 lines
731 B
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"crates/ailang-core",
|
|
"crates/ailang-check",
|
|
"crates/ailang-codegen",
|
|
"crates/ail",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.0.1"
|
|
edition = "2021"
|
|
license = "MIT"
|
|
repository = "local"
|
|
rust-version = "1.80"
|
|
|
|
[workspace.dependencies]
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = { version = "1", features = ["preserve_order"] }
|
|
blake3 = "1"
|
|
anyhow = "1"
|
|
thiserror = "1"
|
|
clap = { version = "4", features = ["derive"] }
|
|
indexmap = { version = "2", features = ["serde"] }
|
|
|
|
ailang-core = { path = "crates/ailang-core" }
|
|
ailang-check = { path = "crates/ailang-check" }
|
|
ailang-codegen = { path = "crates/ailang-codegen" }
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
codegen-units = 1
|