Skip to content

A statically typed programming languagev0.1.8-alpha

Expressive code.
Familiar libraries.

Write typed Zolo programs, call libraries from ten languages, and run scripts or build native binaries. Use effects, pattern matching and structured concurrency when your program needs them.

Learn through examples
hello.zoloZolo / VM
zolo
fn double(n: int) -> int = n * 2

let numbers = [1, 2, 3]
print(numbers.map(double))
Output[2, 4, 6]
fn → types → .map() → print
Static types10Language integrationsVM · Native · LLVM · WasmMIT / open source

01 / Language integrations

From source code to a running program

Choose a language integration or an execution target to see how they connect and what each one requires.

Inputs & integrationsExecution & outputs
Typed ZoloParse · check · build
.zolo
Selected pathZolo source

A .zolo program can run in the VM, compile through native backends or use the supported WebAssembly, Lua and web subsets. Select an integration to see its host requirements.

Explore this path

Host integrations run on VM / native / LLVM. WebAssembly, Lua and web output have their own supported subsets.

02 / ZOLO

See what the syntax does

Filter a collection, validate a value or update a record. Choose an example, run it and follow its explanation.

Learn through examples
transform.zolo ▶ Playground
let doubled = [1, 2, 3].map(_ * 2)
let positive = doubled.filter(_ > 3)
print(positive)
Output
[4, 6]

With a proven one-argument callback signature, underscore can stand for the whole parameter, including arithmetic and ordinary nested value calls. Nested callback slots get their own parameter. Blocks, explicit lambdas, collections and pipes remain scope boundaries.

Understand this feature

03 / By Example

Start with a small program

Run in your browser, follow a complete example, or find the rule you need.

04 / TOOLCHAIN

Tools for writing, running and debugging

Format your code, get editor diagnostics and inspect a running program with the CLI, language server and debugger.

ZOLO / v0.1.8-alpha

Run your first Zolo program

Try an example in the browser, or install Zolo to use native plugins and your own files.

Global index

Find your way through Zolo

Try an idea

Start here

9 results

9 results

enespt-br