The roadmap

Grow the language
in the right order.

Ostrin is not pretending to be finished. The roadmap keeps the dependency chain visible: semantics first, then runtime, tooling and applications.

public workdesign → code → testsno false promises

Build order

Every milestone earns the next one.

A language becomes trustworthy by closing the loop between a written rule, a compiler implementation and examples that prove the behavior.

complete / 01

Design the semantic core

The initial language decisions are recorded and consolidated in the design archive.

  • types and quantities
  • traits and generics
  • errors and patterns
  • modules and concurrency
complete / 02

Validate it with a working compiler

A Rust compiler and interpreter now exercise the core through automated tests and source examples.

  • lexer and parser
  • static checker
  • interpreter
  • 428 integration + 6 differential tests
complete / 03

Make diagnostics and editor tooling useful

Source spans, structured JSON diagnostics, compiler symbols, inferred expression types, formatting, type-aware completion, signature help, live unsaved checks, persistent LSP and DAP debugging now connect Ostrin with Visual Studio Code.

  • source-aware spans
  • Problems panel integration
  • type-aware member completion
  • call signature help
  • unsaved stdin diagnostics
  • persistent stdio LSP
  • document formatting
  • DAP debugging
in progress / 04

Strengthen runtime and memory semantics

The experimental v0.2.0 release ships checksummed Linux, macOS, Windows and WASI archives. The core runtime has native C execution, OS threads, structured cancellation and tested ownership paths. Work continues on broader HIR/IR coverage and memory behavior outside the measured suite.

  • contextual types for mutable assignments
  • extend ownership and last-use coverage
  • cancelable external I/O
  • standard library growth
next / 05

Build the scientific core

Ostrin’s differentiator is a reproducible scientific workflow, not a generic syntax clone. The Scientific Lab and Viz gallery show the current stack; this stage extends it toward production science.

  • numeric hierarchy and complex values
  • extend explicit source identities: Ostrin now has an experimental one-dimensional structural ownership profile for Array<Measurement<Float>> construction, indexing, get, slicing, boolean masks, display and to_list; numeric array operations, broader native ownership and covariance remain open ↗
  • reverse-mode autodiff and richer plotting
  • MP4 and WebGPU for interactive figures
  • tensors and linear algebra
  • solvers, units and dataframes
future / 06

Open the ecosystem

Tooling, packages and community surfaces should follow real capability, not marketing promises.

  • public package registry
  • package-manager channels and notebooks
  • submit Ostrin to GitHub Linguist and verify `.ostrin` in the language map after acceptance

Definition of done

Show the work.

Each feature should be discoverable in the docs, demonstrated by an example, protected by a test and visible in the editor or command line when it is ready.

  • Specification says what the feature means
  • Compiler implements the behavior
  • Passing and failing examples cover it
  • Documentation explains how to use it
  • Roadmap marks its actual state