Releases: assapir/quilon
Release list
v0.9.0
Quilon v0.9.0 — "Stable basics"
A stable, verified core of the Quilon language — not yet
feature-complete. Programs run via quilon run (in-process LLVM
JIT) or compile to native executables via quilon build.
Highlights: ^ entry point (implicit exit-0), <</>> modules,
|> first-argument-injection pipe, for n <- collection => body
loops, the built-in Text type, core.io (print/eprint/write),
sum types with pattern matching, methods on records, and conservative
(Boehm) GC. Built against LLVM 22.
Known limitations: no generics yet (so Text/non-numeric values
inside records, arrays, or Ok/NotOk payloads are unsupported — numeric
payloads work), no closures / while loops / user-defined sum types,
dynamic libgc, placeholder argv. See CHANGELOG.md for the full list.
The attached quilon binary is a dynamically-linked Linux x86-64 build
(requires libgc at runtime).
What's Changed
- Add CLAUDE.md and ignore Claude Code worktrees by @assapir in #1
- CI: build, test, fmt, clippy workflow by @assapir in #2
- Foundation: <</^/>> tokens, String→Text, entry-point >>→^, module/AST scaffolding by @assapir in #3
- Runtime intrinsics, core IO (print), Boehm GC (B4) by @assapir in #8
- Typed sum-type payloads (tag + sized union) by @assapir in #7
- Methods on named records: codegen + static dispatch by @assapir in #5
- JIT execution: quilon run + run-test harness by @assapir in #4
- Module system: << imports, >> exports, loader (B1) by @assapir in #6
- Fix: resolve imports in
quilon run(integration follow-up) by @assapir in #9 - Strict CI (deny warnings) + tree-wide warnings cleanup by @assapir in #10
- Text built-in type ({ptr,len}): + concat, .size (bytes), .length (graphemes) by @assapir in #11
- Refactor: extract shared CLI front-end (read/lex/parse/resolve/typecheck) by @assapir in #12
- Prune unused dependencies by @assapir in #13
- Pipe operator :> (first-arg injection) + IO redesign: write/print/eprint, drop println by @assapir in #14
- Phase D: curate examples + examples-compile gate by @assapir in #16
- Native AOT: package libquilon_rt static lib so compiled binaries link by @assapir in #17
- Implicit exit-0 for ^ when the body is not a Num by @assapir in #18
- quilon build: Rust-native AOT (TargetMachine object emit + linker), both-linker gate, drop aot.sh by @assapir in #19
- Release 0.9.0 housekeeping: LLVM 22, checkout@v5, CHANGELOG, release workflow by @assapir in #20
- Phase D: align & de-duplicate docs (LANGUAGE/README/CLAUDE) by @assapir in #15
New Contributors
Full Changelog: https://github.com/assapir/quilon/commits/v0.9.0