The ecosystem

The language is the
beginning of the tool.

A useful language needs a compiler, an editor, a way to learn, a way to share code and a path to real applications. Ostrin is building those surfaces in public.

core firsthonest statusopen repository

Where we are

The ecosystem starts with a tested core.

Today, Ostrin has a Rust compiler and interpreter, native C execution, OS-thread concurrency, WASI distribution, scientific examples and an initial VS Code extension.

Inspect the source ↗
available

Compiler core

Lexer, parser, static checker, typed HIR/IR, interpreter, modules, collections, traits, pattern matching and quantities.

available

Native execution

C emission and compilation, leak checking, deterministic cooperative mode, OS threads, channels, select and structured cancellation.

available

Examples

source programs and intentional failures exercise language, scientific, ownership and runtime decisions under test.

available / early

VS Code

`.ostrin` recognition, syntax highlighting, LSP diagnostics, completion, signature help, hover, formatting, definition navigation, references, scoped rename, outline and DAP debugging.

available / early

Standard library

Strings, collections, file I/O, paths, arguments, formatting, hashing, arrays, statistics, regression, deterministic math and reproducible RNG.

available / early

Playground and packages

The compiler runs in the browser as WebAssembly (see the playground); local path packages, an embedded standard library and reproducible WASI artifacts exist. The published experimental 0.2.0 release includes verified Linux, macOS, Windows and WASI archives with checksums; a public registry remains future work.

Tools around Ostrin

Every surface has a job.

The goal is not to collect integrations. It is to make the path from an idea to a checked, understandable program feel coherent.

01

Compiler and interpreter

Check a file, inspect AST/HIR/IR, run it deterministically or emit native code.

02

Visual Studio Code

Open `.ostrin` files with syntax support, live compiler diagnostics, navigation and debugging.

03

Design repository

design documents record the language decisions and their trade-offs.

04

Examples as validation

programs and failure cases act as an executable conversation with the design.

05

Native and WASI targets

Compile local applications to native executables or reproducible `wasm32-wasi` artifacts.

06

Scientific packages

Early `tables`, `plot` and `autodiff` packages establish a path toward data and simulation workflows.

A deliberate ecosystem

No imaginary package count.

Ostrin is early. The site will never present a future registry as if it were already mature. Each capability will move from design, to implementation, to a documented example.

See the build order ↗
  • Design: describe the behavior and its constraints
  • Implementation: make the compiler or runtime support it
  • Validation: add passing and failing examples
  • Tooling: expose the feature in docs and the editor
  • Release: package it for people outside the repository