The home of the CobaltC compiler (currently just an interpretor).
Rust
0
0 commits
updated Sep 21, 2026

This is the offical home of the CobaltC Compiler (currently just an interpreter).
CobaltC is a statically typed systems programming language providing explicit ownership, deterministic destruction, compiler-checked borrowing, inferred lifetimes, explicit nullability, bounds-safe operations, structured error handling, safe concurrency, explicit unsafe operations, and explicit foreign-function interfaces.
The language is intended for software requiring predictable resource management, strong memory safety, native execution, and controlled interaction with low-level facilities.
The latest publication version of the specification is available here
Building the interpreter
The interpreter lives in the impl directory and is a standard Rust Cargo project with one dependency (libc).
The build targets the environment it was developed and verified on, and is only known to work there:
The interpreter uses libc for the write extern (the POSIX write(2) call) and the standard library's threads, so it will most likely build on other Linux distributions and probably on other POSIX systems, but those have not been tried. Windows is not supported.
Build a release binary:
cd impl
cargo build --release
The binary is written to impl/target/release/coby. It takes one CobaltC source file, runs the static checks and then executes main:
./target/release/coby conformance/06-arithmetic/checked_add_none_and_some.cb
A program that runs to completion exits with status 0. A program the specification rejects prints the diagnostic, the phase it was caught in (static or dynamic), the rule it violated and the source line, then exits with status 1. Setting COBALTC_TRACE=1 in the environment prints additional detail about where a rejection came from.
Run the full test suite, which includes every row of the specification's conformance table:
cd impl
cargo test --release
License
Copyright © 2026 strawberry9.
This repository contains software and other creative content, which are licensed separately.
Source Code
Unless otherwise stated, all source code in this repository is licensed under the BSD 3-Clause License.
See LICENSE for the full license text.
Documentation and Creative Content
Unless otherwise stated, the documentation, language specification, written content, images, graphics, and other original creative content in this repository are licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License (CC BY-NC-ND 4.0).
This means you may share the licensed content for non-commercial purposes, provided that you give appropriate attribution and comply with the license terms. You may not distribute modified versions of the licensed content.
See LICENSE-CC-BY-NC-ND for the complete license text.
Full license: https://creativecommons.org/licenses/by-nc-nd/4.0/
Third-Party Content
Third-party materials included in this repository may be subject to their own licenses and terms. Such materials are not necessarily covered by either license above. Where applicable, their respective licenses and attribution notices are provided alongside the relevant materials.
Rust
100.0%
The home of the CobaltC compiler (currently just an interpretor).
Rust
0
0 commits
updated Sep 21, 2026

This is the offical home of the CobaltC Compiler (currently just an interpreter).
CobaltC is a statically typed systems programming language providing explicit ownership, deterministic destruction, compiler-checked borrowing, inferred lifetimes, explicit nullability, bounds-safe operations, structured error handling, safe concurrency, explicit unsafe operations, and explicit foreign-function interfaces.
The language is intended for software requiring predictable resource management, strong memory safety, native execution, and controlled interaction with low-level facilities.
The latest publication version of the specification is available here
Building the interpreter
The interpreter lives in the impl directory and is a standard Rust Cargo project with one dependency (libc).
The build targets the environment it was developed and verified on, and is only known to work there:
The interpreter uses libc for the write extern (the POSIX write(2) call) and the standard library's threads, so it will most likely build on other Linux distributions and probably on other POSIX systems, but those have not been tried. Windows is not supported.
Build a release binary:
cd impl
cargo build --release
The binary is written to impl/target/release/coby. It takes one CobaltC source file, runs the static checks and then executes main:
./target/release/coby conformance/06-arithmetic/checked_add_none_and_some.cb
A program that runs to completion exits with status 0. A program the specification rejects prints the diagnostic, the phase it was caught in (static or dynamic), the rule it violated and the source line, then exits with status 1. Setting COBALTC_TRACE=1 in the environment prints additional detail about where a rejection came from.
Run the full test suite, which includes every row of the specification's conformance table:
cd impl
cargo test --release
License
Copyright © 2026 strawberry9.
This repository contains software and other creative content, which are licensed separately.
Source Code
Unless otherwise stated, all source code in this repository is licensed under the BSD 3-Clause License.
See LICENSE for the full license text.
Documentation and Creative Content
Unless otherwise stated, the documentation, language specification, written content, images, graphics, and other original creative content in this repository are licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License (CC BY-NC-ND 4.0).
This means you may share the licensed content for non-commercial purposes, provided that you give appropriate attribution and comply with the license terms. You may not distribute modified versions of the licensed content.
See LICENSE-CC-BY-NC-ND for the complete license text.
Full license: https://creativecommons.org/licenses/by-nc-nd/4.0/
Third-Party Content
Third-party materials included in this repository may be subject to their own licenses and terms. Such materials are not necessarily covered by either license above. Where applicable, their respective licenses and attribution notices are provided alongside the relevant materials.
Rust
100.0%