DCDart v0.1.0 — initial public release
First public release of DCDart.
Highlights
- Native AOT compiler:
dcc build --mode barecompiles DCDart source to real object files (ELF, Mach-O, COFF) through the DC-IR pipeline and LLVM. No VM, no interpreter, no JIT. - ARC memory management with compile-time elision and a local cycle collector — retain/release you can count with
dc-objdump --arc. - Ten codegen targets, including freestanding
bare-x86_64for kernel work: zero undefined symbols, enforced mechanically on every change. - C ABI at every boundary:
--emit-headerwrites a C header for FFI, so C, Rust, and Python can call into compiled DCDart directly. - Verified: all 48 conformance suites pass on Darwin/arm64 (hosted link mode).
- The full design-decision record is public: 72 ADRs, 13 escalations, and the known-gaps ledger — including the benchmarks that were rewritten when the numbers were initially dishonest.
Install
Homebrew (macOS, Apple Silicon):
brew tap dotcorr/tap https://github.com/DotCorr/homebrew-tap
brew install dotcorr/tap/dcdartThen compile a program (pass the shipped prelude — its path is matched lexically, so spell it the same in your import):
dcc build --mode bare --target host main.dart -o main.o --emit-header main.h \
--prelude $(brew --prefix)/opt/dcdart/libexec/core/runtime/dc-core-bare/prelude.dartTarball: dcdart-v0.1.0-darwin-arm64.tar.gz — a self-contained AOT dcc binary plus the freestanding prelude. Extract and run core/dcc/bin/dcc build --mode bare <source.dart> -o <out.o>. A Dart SDK 3.12.2 on PATH (or DCDART_DART) is required for the kernel-frontend stage.
License
Apache-2.0 with LLVM exceptions. The exception guarantees that programs compiled with dcc are entirely yours — no conditions of the license attach to the binaries you build and distribute.