⭐ Raku++ on GitHub

Raku++ is our from-scratch implementation of the Raku programming language: a hand-written lexer, parser, and evaluator in plain C++17, with no third-party dependencies. It is not a fork of the reference implementation and shares no code with it — it targets the language itself, and it is developed test-first against Roast, the official Raku test suite, of which it currently passes about 80% — over 170,000 individual tests.

Highlights

Get it

Prebuilt binaries for macOS, Linux, and Windows are on the releases page. On macOS, you can install it with Homebrew:

brew tap ash/rakupp
brew install rakupp

Or build from source — all you need is a C++17 compiler and CMake.

How it was built

From an empty directory to 90% of the official specification suite, a native code generator, and a browser build — in under a month. We wrote up the whole engineering effort: the projects that grew around the compiler, the four independent yardsticks we measured it against, and the speed work behind its two-millisecond startup. Read the story.

Learning Raku?

Raku++ powers the instant playground of the Raku Course, our free online course of the language. Every example in the course can be edited and executed right on the page.

More in Software development

raku.online — a Raku playground

A Raku playground that runs entirely in the browser — write, run, and share Raku code with nothing to install and no server behind it, plus a drop-in widget for embedding runnable editors on any site.

Measured, not guessed

How we use numbers to move a product forward — external yardsticks, known noise bands, automatic release gates, and the graphs that told us what to work on next.

Building Raku++ — the engineering story

How we wrote a compiler for a large programming language from an empty directory in under a month — the projects around it, the four yardsticks we measured it against, and the speed work that made it start in two milliseconds.

Backend Development

Robust backend systems to handle complex business logic, data processing, and integration

Frontend Development

Intuitive and responsive user interfaces that provide a seamless user experience

Mobile Development

Mobile-first solutions tailored for iOS and Android devices

Data Storage and Management

Handling your data efficiently and securely

DevOps and System Administration

Streamline the development and deployment processes

Data Transformation and Process Flow

Design and manage data workflows for seamless integration and data-driven decision-making

Hardware Integration

Custom hardware integration solutions for IoT and embedded applications

Methodologies

The right process for the project — and a delivery flow driven by measurement, where releases are gated on numbers rather than opinions