Mica on bare metal

An afternoon in the lab: five small kernels on an emulated ARM board with no operating system underneath — Mica as a library inside a kernel, as the kernel itself, as a program on the kernel's own API, and as the handler of a hardware interrupt. 488 lines of C and assembly beneath it, and not one change to the compiler.

September 15, 2026

7.5 is a quality release, and three renames will interrupt you

Three things in 7.5 will interrupt a build: the archives Mica installs are renamed so that every file the product ships reads the same way, the hosted memory class is spelled hosted-heap, and a bare checked selects the release profile. Each is a breaking change for someone, each arrives in 7.5, and this is the apology in advance.

August 29, 2026

If your container examples refuse to compile: pull again

A short notice and an apology: the starter repository briefly carried examples predating Mica 7.2.0's stricter compile-time checks. One git pull — or a fresh clone — puts it right, and the repository's own gate now makes this class of slip impossible to ship quietly.

August 24, 2026

The Dragon SDK stands alone

With 7.1 the SDK becomes a complete product of its own: the runtime floor ships as its own package under a licence written for toolchains, your emitted programs link no Mica standard library, and a compiler you build on Dragon installs and works without the Mica compiler anywhere on the machine.

August 18, 2026

The Dragon SDK: our backend, as a deliverable

The engine that compiles Mica — control-flow analysis, SSA middle-end, storage placement, register allocation, native emission — is now something you can build a compiler against. Here is what it is, why we published it, and where it goes.

August 5, 2026

The breakup: one compiler becomes four modules — and gains a second language

After three years as one program, the Mica compiler now has the architecture it always claimed to have: a foundation, an intermediate language, a backend engine, and a frontend — with walls between them a build system enforces. The proof is a second language: Wirth's PL/0, compiled to native code by Mica's own backend, checked against Wirth's own machine.

August 1, 2026

Mica gets a project model

A three-line mica.project beside your sources tells the compiler and the editor the same truth: which files form the program, which encoding they speak, and which libraries they consume — and one program can now import several separately built libraries.

July 28, 2026

Run a Mica file like a script

mica --run compiles and executes one source file in a single command — millisecond compiles, full checks, argv and exit codes the way a shell expects them, shebang support, and automatic use of your project's libraries. Compiled-language speed with scripting-language ease.

July 28, 2026

The 6.12.5 preview: projects and scripting

The preview of 6.12.5, which carried two features that belong together: the project file the compiler and the editor both read, and the run mode that makes one Mica file as easy to run as a script. Both have since shipped.

July 28, 2026