Roadmap · from v0.14.0 to 1.0

The road to Alice 1.0.

Writes like Ruby, runs like C, and bugs don’t compile. One language from low level (FFI, native kernels, unsafe, stack and arena memory) to high level (web, desktop, games, data), on .NET and on WebAssembly, with a standard library that is better than the BCL where the BCL is weak.

In progress

  1. Benchmarks against Bend 2 and C

    All 16 workloads of Bend’s runtime suite ported 1:1, measured on 1 core and on all cores against the C versions. Alice beats Bend’s parallel numbers and matches serial C on every workload, or the gap has a named cause and a tracked fix (arena-backed sum types for trees, new compute primitives for histogram-style kernels).

    In progress
  2. Security and feature audit

    A review of the compiler, runtime, CLI, installers, package and toolchain downloads, FFI, unsafe code and the rule checker. Every finding fixed or documented as a known limit in the production-readiness guide.

    In progress
  3. Ruby and Crystal completeness

    Close the gap list against Crystal and Ruby (macros, union types, enums with values, named arguments, splats, string formatting, Comparable and Enumerable, ensure and retry, and more), or reject each item with a written reason.

    In progress
  4. Compiling straight to .NET bytecode

    Alice compiles directly to .NET bytecode with debug symbols, instead of going through generated C#, for faster builds and faster code. The C# output stays for readable interop and as a cross-check; every program in the test corpus must print exactly the same results.

    In progress

Next

  1. Alice Core: a standard library beyond the BCL

    Allocation-free SIMD regex (compiled at build time for literal patterns) and SIMD JSON come first, then text, HTTP/1.1 and HTTP/2, sockets, files, processes, time, digests, CSV and TOML. Each must beat its BCL equivalent on the suite.

    Next

Later

  1. Bytecode quality

    Compiled code within 3% of hand-written C# on the suite, passing the .NET verifier, with debug symbols, NativeAOT and deterministic builds.

    Later
  2. WebAssembly as a first-class target

    Pure Alice code compiles to WebAssembly without the .NET runtime, for the browser and WASI, with size and startup measured against .NET and Rust output. Today’s kind = "wasm" packages keep the .NET interop path.

    Later
  3. Domains

    Verified samples and docs for network services (HTTP, websockets, TCP), desktop apps with packaging, games, CLI tools, data work and low-level code.

    Later

Before 1.0

  1. Product

    Complete book and built-in guide, signed installers, Linux arm64 and Alpine archives, editor extensions, language server, playground, release notes and the 1.0 announcement.

    Before 1.0

Ground rules

  • Benchmarks report cold-process and warm numbers, with checksums, and never compare across machines.
  • The compiler only runs code in parallel when the pieces cannot touch the same data, and never trades safety for a benchmark.
  • Every change ships with tests and a changelog entry.

What already shipped is in the changelog.

Current benchmark results