Releases: eabusato/cct
CCT v0.40
Full Changelog: v0.19.0...v0.40
CCT v0.19.0 - Expressive Power Milestone (FASE 19D)
Clavicula Turing gains expressive power across seven phases — pattern matching, string
interpolation, algebraic data types, expanded iterators, freestanding profile, bootstrap
libraries, and a massively grown standard library.
🎉 Highlights
This release marks the FASE 19 milestone, consolidating seven phases of evolution since
v0.12:
✅ CUM/CASUS/ALIOQUIN: exhaustive pattern matching with OR-cases and payload destructuring
✅ FORMA: string interpolation with format specifiers, restricted to host profile
✅ ORDO com payload: native algebraic data types (tagged unions) with CUM destructuring
✅ ITERUM expandido: iteration over maps and sets with structured bindings
✅ Freestanding profile: --profile freestanding + --emit-asm for LBOS/bare-metal targets
✅ Bootstrap libraries: 15+ new stdlib modules for building compiler-grade tools in CCT
✅ Language completeness: loop control, logical/bitwise operators, CONSTANS finalized
✅ 1069 tests passing across integration and regression suites
🚀 Language Features
Pattern Matching — CUM / CASUS / ALIOQUIN (FASE 19A)
Full switch/match over REX, VERBUM, and ORDO values
Exhaustiveness checking for ORDO variants — compiler error on missing cases
OR-cases: group multiple patterns under a single CASUS branch
No implicit fallthrough — each branch is isolated
Payload binding: destructure ORDO fields inline within CASUS
String Interpolation — FORMA (FASE 19B)
FORMA "texto {expr}" — embed arbitrary expressions in strings
Format specifiers: {n:5d} (integer width), {v:.2f} (float precision), alignment (<>^)
Restricted to host profile — unavailable under --profile freestanding
Composes with all existing VERBUM operations
Algebraic Data Types — ORDO com payload (FASE 19C)
Native tagged union emission via C backend
Declare variants with typed fields: Ok(REX valor), Err(VERBUM msg)
Destructure via CUM with per-variant bindings
Foundation for generic Result and Option patterns (GENUS expansion planned for FASE 20)
Expanded Iterators — ITERUM (FASE 19D)
ITERUM key, value IN map COM — iterate key/value pairs over maps
ITERUM item IN set COM — iterate elements over sets
Consistent binding syntax across arrays, FLUXUS, maps, and sets
Closes the last iteration gap in the collection surface
Loop Control Finalized — FRANGE / RECEDE (FASE 15A)
FRANGE and RECEDE stable across DUM, DONEC, REPETE, and ITERUM
Full test coverage across all loop forms
Logical and Bitwise Operators (FASE 15B / 15C)
ET, VEL with short-circuit semantics; precedence NON > ET > VEL
ET_BIT, VEL_BIT, XOR, NON_BIT, SINISTER, DEXTER — stable and fully tested
CONSTANS (FASE 15D)
Semantic enforcement of reassignment prohibition
Emits C const in generated code; stable across all scopes
Math Operators (FASE 13M)
** (power), // (floor division), %% (euclidean modulo)
🔧 Tooling
Sigilo Toolchain (FASE 13)
cct sigilo inspect — inspect sigilo of a module
cct sigilo diff — compare sigilos across versions
cct sigilo check — validate against a baseline
--sigilo-check flag for CI integration
CI profiles: advisory / gated / release
Consumer profiles: legacy-tolerant / current-default / strict-contract
sigilo ... --explain for diagnostic explanations
Freestanding Profile (FASE 16)
--profile freestanding — activates bare-metal mode
Semantic diagnostics for all prohibited constructs (libc, TEMPTA, FORMA, etc.)
--emit-asm — emits Intel GAS x86-32 assembly (for LBOS integration)
ABI V0 contract: cdecl x86-32, deterministic symbol naming (cct_fn__)
cct/kernel module for LBOS system call bridge
Existing toolchain surface unchanged:
cct <file.cct> — compile to native executable
cct fmt — format source (--check, --diff)
cct lint — static analysis (--fix)
cct build/run — project workflows
cct test — run test suite
cct bench — run benchmarks
cct doc — generate documentation (Markdown/HTML)
📦 Standard Library (Bibliotheca Canonica)
New modules since v0.12 (FASE 17 + FASE 18):
Text & Parsing
cct/verbum — major expansion: char ops, scanning, full manipulation surface
cct/char — character classification
cct/verbum_scan — cursor-based scanning API
cct/verbum_builder — efficient incremental text construction
cct/fmt — radix/precision/alignment formatting
cct/parse — string-to-primitive with try_* variants
I/O & Filesystem
cct/io — stderr, flush, tty detection
cct/fs — mutations, listing, temp files
cct/path — normalize, resolve, split
Collections & Algorithms
cct/fluxus — peek, set, remove, slice, sort
cct/map — richer API: entry API, iteration
cct/set — richer API: set operations
cct/alg — reductions, sorting, searching
cct/series — static array utilities
Systems & Utilities
cct/process — process execution and capture
cct/hash — djb2, fnv1a, crc32, murmur3
cct/bit — bit manipulation operations
cct/env — environment variables
cct/time — timing primitives
cct/bytes — byte buffer
Compiler Bootstrap Surface (FASE 17)
cct/code_writer — structured code emission
cct/variant — pragmatic sum-type base
cct/ast_node — AST node foundation
cct/args — command-line argument parsing
Stable since v0.12:
cct/option, cct/result, cct/random, cct/mem, cct/cmp, cct/io (core), cct/math
📦 Downloads
Platform File Size
Linux x86_64 cct-v0.19-linux-x86_64.tar.gz ~780KB
macOS ARM64 cct-v0.19-macos-arm64.tar.gz ~250KB
Windows x86_64 cct-v0.19-windows-x86_64.zip ~990KB
Each package includes:
✅ Pre-compiled cct binary (ready to use)
✅ Complete standard library (Bibliotheca Canonica)
✅ Documentation and examples
✅ SHA256 checksum file for verification
🔧 Installation & Usage
Quick Start (Linux/macOS)
1. Download and extract
tar xzf cct-v0.19-*.tar.gz
cd cct
2. Check installation
./bin/cct --version
3. Compile and run an example
./bin/cct examples/cum_basico.cct
./examples/cum_basico
4. Add to PATH (keeps bin/ and lib/ together)
export PATH="$PWD/bin:$PATH"
Quick Start (Windows — MSYS2 UCRT64)
1. Extract the zip file
unzip cct-v0.19-windows-x86_64.zip
cd cct
./bin/cct --version
./bin/cct examples/cum_basico.cct
📚 Examples
Pattern matching over ORDO with payload
./bin/cct examples/cum_ordo_payload.cct
String interpolation with FORMA
./bin/cct examples/forma_basico.cct
Algebraic data types
./bin/cct examples/ordo_payload.cct
Iterating over maps and sets
./bin/cct examples/iterum_mapa_conjunto.cct
Freestanding profile (bare-metal target)
./bin/cct --profile freestanding examples/lbos_hello.cct --emit-asm
Full FASE 19 showcase
./bin/cct examples/fase19_showcase.cct
See examples/README.md for the complete list and learning path.
🐛 Known Issues
FORMA is restricted to host profile — unavailable under --profile freestanding
OR-cases in CUM do not support payload binding (binding requires a unique variant)
Some complex nested CUM patterns may require explicit type annotations
Windows native execution requires GCC in PATH for compiling .cct files
See docs/release/FASE_19_KNOWN_LIMITS.md for the complete list.
🆚 What's Next — FASE 20
Generic ORDO (GENUS sobre ORDO) for truly polymorphic algebraic types
Guards in CASUS branches (CASUS x SI cond)
OR-cases with payload binding
Recursive ORDO definitions
Generic Result/Option via GENUS
🔗 Links
🌐 Repository: https://github.com/eabusato/cct
📝 Issues: https://github.com/eabusato/cct/issues
📚 Documentation: docs/
🧪 Examples: examples/
🙏 Credits
Clavicula Turing (CCT) — A mystical language compiler for code conjuration.
Author: Erick Andrade Busato
License: All rights reserved
FASE 19 release • v0.19.0 • March 2026
CCT v0.12.1 - Structural Maturity Milestone (FASE 12H)
Clavicula Turing reaches structural maturity with complete toolchain and consolidated standard library.
🎉 Highlights
This is the first official release of CCT, marking the FASE 12H milestone with:
- ✅ Complete toolchain: compiler, formatter, linter, project manager, and documentation generator
- ✅ Bibliotheca Canonica: consolidated standard library with stability guarantees
- ✅ Multi-platform: Linux, macOS, and Windows (via MSYS2)
- ✅ Modern examples: showcase of current features (iterators, Option/Result, collections)
- ✅ Pre-built binaries: ready to use, no compilation needed
🚀 Features
Compiler
- Native executable generation via C backend
- Full support for advanced types (GENUS, PACTUM, constraints)
- Module system (ADVOCARE)
- Exception handling (TEMPTA/CAPE/SEMPER)
- Iterators (ITERUM)
Tooling
cct <file.cct>- Compile source file to native executablecct fmt- Automatic code formattingcct lint- Static analysis with suggestionscct build- Build project (requires cct.toml)cct run- Run project main (requires cct.toml)cct test- Run project tests (requires cct.toml)cct bench- Run project benchmarks (requires cct.toml)cct doc- Documentation generation (Markdown/HTML)
Standard Library (Bibliotheca Canonica)
- Collections: FLUXUS (dynamic vectors), Set, Series
- Strings: Complete manipulation via
verbum.cct - I/O: File reading/writing, stdin/stdout
- Parsing: String to primitive type conversion
- Math: Mathematical functions and random number generation
- Functional: Map, Filter, Fold, iterators
- Types: Option, Result<T,E> for error handling
📦 Downloads
Choose the package for your platform:
| Platform | File | Size |
|---|---|---|
| Linux x86_64 | cct-v0.12-linux-x86_64.tar.gz |
~720KB |
| macOS ARM64 | cct-v0.12-macos-arm64.tar.gz |
~230KB |
| Windows x86_64 | cct-v0.12-windows-x86_64.zip |
~930KB |
Each package includes:
- ✅ Pre-compiled
cctbinary (ready to use) - ✅ Complete standard library (Bibliotheca Canonica)
- ✅ Documentation and examples
- ✅ SHA256 checksum file for verification
🔧 Installation & Usage
Quick Start (Linux/macOS)
# 1. Download and extract
tar xzf cct-v0.12-*.tar.gz
cd cct
# 2. Check installation
./bin/cct --version
# 3. Compile and run an example
./bin/cct examples/hello.cct
./examples/hello
# 4. Add to PATH (keeps bin/ and lib/ together)
export PATH="$PWD/bin:$PATH"
cct --versionNote: Don't copy individual files to /usr/local/bin - the cct script needs lib/cct/ at a relative path (../lib/cct). Either use it from the extracted directory or add the bin/ directory to your PATH.
Quick Start (Windows - MSYS2 UCRT64)
# 1. Extract the zip file
unzip cct-v0.12-windows-x86_64.zip
cd cct
# 2. Check installation
./bin/cct --version
# 3. Compile and run an example
./bin/cct examples/hello.cct
./examples/helloFrom Windows CMD/PowerShell:
REM Use the batch wrapper
cct\bin\cct.bat --version
cct\bin\cct.bat examples\hello.cct
examples\hello.exeNote for Windows: The binary needs GCC in PATH to compile .cct files. Set CC environment variable if needed:
set CC=C:\msys64\ucrt64\bin\gcc.exeWhat's Included
cct/
├── bin/
│ ├── cct # Wrapper script (cct.bat on Windows)
│ └── cct.bin # Actual binary (cct.exe on Windows)
├── lib/cct/ # Standard library modules
│ ├── fluxus.cct
│ ├── verbum.cct
│ ├── io.cct
│ └── ...
├── examples/ # Example programs
│ ├── README.md
│ ├── hello.cct
│ └── ...
├── docs/ # Complete documentation
│ ├── spec.md
│ ├── bibliotheca_canonica.md
│ └── release/
├── CHECKSUMS.sha256 # Internal checksums for all files
└── README.md
Platform-specific binaries:
- Linux/macOS:
cct(shell script) callscct.bin(native binary) - Windows:
cct.bat(batch script) callscct.exe(native binary)
🔍 Integrity Verification
Before using, verify the package integrity:
Linux:
sha256sum -c cct-v0.12-linux-x86_64.tar.gz.sha256macOS:
shasum -a 256 -c cct-v0.12-macos-arm64.tar.gz.sha256Windows (PowerShell):
Get-FileHash cct-v0.12-windows-x86_64.zip -Algorithm SHA256
# Compare with content of .sha256 file📚 Examples
Try these examples included in the package:
# Basic Hello World
./bin/cct examples/hello.cct
./examples/hello
# Complete language tour
./bin/cct examples/ars_magna_showcase.cct
./examples/ars_magna_showcase
# Modern error handling with Option/Result
./bin/cct examples/option_result.cct
./examples/option_result
# Functional programming with collections
./bin/cct examples/collection_ops_12d2.cct
./examples/collection_ops_12d2
# Iterator patterns
./bin/cct examples/iterators.cct
./examples/iterators
# Format a file
./bin/cct fmt examples/hello.cct
# Lint a file
./bin/cct lint examples/hello.cctSee examples/README.md for complete list and learning path.
📖 Documentation
All documentation is included in the docs/ directory:
-
Getting Started:
README.md- Project overviewBUILD.md- Build instructions (if compiling from source)docs/install.md- Installation guide
-
Language & Library:
docs/spec.md- Complete language specificationdocs/bibliotheca_canonica.md- Standard library referencedocs/architecture.md- Compiler architecture
-
Tooling:
docs/build_system.md- Project system and workflowsdocs/project_conventions.md- Code organizationdocs/doc_generator.md- Documentation generation
-
Release:
docs/release/FASE_12_RELEASE_NOTES.md- Detailed release notesdocs/release/FASE_12_STABILITY_MATRIX.md- API stability guaranteesdocs/release/FASE_12_KNOWN_LIMITS.md- Known limitations
🛠️ Requirements
To run the pre-built binaries:
- Linux: No dependencies (binary is standalone)
- macOS: No dependencies (binary is standalone)
- Windows: GCC must be in PATH or set via
CCenvironment variable
For system-wide installation (optional):
The binary packages are designed to run portably from the extracted directory. For a proper system-wide installation with files in /usr/local/bin and /usr/local/lib/cct, compile from source and use make install:
git clone https://github.com/eabusato/cct.git
cd cct
make
sudo make installSee BUILD.md for detailed instructions.
🐛 Known Issues
- Windows native execution requires GCC in PATH for compiling
.cctfiles - Some advanced generic instantiations may require type hints
- Error messages occasionally lack source location context
See docs/release/FASE_12_KNOWN_LIMITS.md for complete list.
🆚 What's Next
Future releases will focus on:
- Performance optimizations
- Enhanced error messages
- Additional stdlib modules
- IDE integrations (LSP server)
- REPL for interactive development
🔗 Links
- 🌐 Repository: https://github.com/eabusato/cct
- 📝 Issues: https://github.com/eabusato/cct/issues
- 📚 Documentation: docs/
- 🧪 Examples: examples/
🙏 Credits
Clavicula Turing (CCT) - A mystical language compiler for code conjuration.
Author: Erick Andrade Busato
License: All rights reserved
First official release • FASE 12H • March 2026