The tree is the language.
Go to file
2026-05-22 08:38:43 +02:00
.llm Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
benchmarks Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
compiler Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
docs Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
examples Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
lib/std Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
runtime Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
scripts Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
tests Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
.gitignore Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
CONTRIBUTING.md Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
LICENSE Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
LICENSE-APACHE Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
LICENSE-MIT Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00
README.md Import Slovo 1.0.0-beta monorepo 2026-05-22 08:38:43 +02:00

Slovo

Slovo (ⰔⰎⰑⰂⰑ) is a typed structural programming language and toolchain.

This repository is the canonical public monorepo for the language design, standard library source, compiler, runtime, examples, benchmarks, and technical documents.

Current release: 1.0.0-beta.

Repository Layout

compiler/       Glagol, the first Slovo compiler
runtime/        C runtime used by hosted native builds
lib/std/        source-authored Slovo standard-library facades
examples/       compiler-supported Slovo examples and projects
benchmarks/     local benchmark comparison harnesses
docs/language/  language manifest, specs, roadmap, and release notes
docs/compiler/  compiler manifest, roadmap, and release notes
docs/papers/    whitepapers and generated publication PDFs
scripts/        local release and document tooling

Beta Scope

1.0.0-beta supports practical local command-line programs and libraries with:

  • modules, explicit imports, packages, and local workspaces
  • new, check, fmt, test, doc, and build
  • i32, i64, u32, u64, f64, bool, string, and internal unit
  • structs, enums, fixed arrays, concrete vectors, option/result families, and current match
  • explicit std/*.slo imports from lib/std, installed share/slovo/std, or SLOVO_STD_PATH
  • hosted native builds through LLVM IR, Clang, and runtime/runtime.c

Still deferred before stable: generics, maps/sets, broad package registry semantics, networking/async, LSP/watch/debug-adapter guarantees, stable ABI and layout, and a stable standard-library compatibility freeze.

Build And Test

cargo test --manifest-path compiler/Cargo.toml

Run the full local release gate:

./scripts/release-gate.sh

Build the compiler binary:

cargo build --manifest-path compiler/Cargo.toml
./compiler/target/debug/glagol --version

Create and check a project:

./compiler/target/debug/glagol new hello
SLOVO_STD_PATH="$PWD/lib/std" ./compiler/target/debug/glagol check hello
SLOVO_STD_PATH="$PWD/lib/std" ./compiler/target/debug/glagol test hello

Build a native executable when Clang is available:

SLOVO_STD_PATH="$PWD/lib/std" ./compiler/target/debug/glagol build hello -o hello/bin

Documentation

Generated PDFs live beside their Markdown sources in docs/papers/.

License

Slovo is licensed under either the MIT License or the Apache License, Version 2.0, at your option.