Files
zern/README.md
2026-05-27 20:25:58 +02:00

50 lines
1.1 KiB
Markdown

# zern
A very cool language
## Features
* Clean indentation-based syntax
* Compiles to x86_64 Assembly
* Growing [standard library](https://git.ton1.dev/toni/zern/src/branch/main/src/std)
* Produces tiny static executables (11KB for `hello.zr`)
* No libc required!
* Has type inference, pipe operator, variadics, dynamic arrays, hashmaps, DNS resolver, etc.
## Syntax
```rust
func main[] : i64
answer := math.abs(os.urandom_i64()) % 100
while true
io.println("Guess a number: ")
guess := io.read_line() |> str.trim() |> str.parse_i64()
if guess == answer
io.println("You win!")
break
else if guess < answer
io.println("Too low!")
else
io.println("Too high!")
```
```rust
func square[x: i64] : i64
return x * x
func sum[a: i64, b: i64] : i64
return a + b
func main[] : i64
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
|> alg.map(^square)
|> alg.reduce(^sum, 0)
|> io.println_i64()
```
## Quickstart
```
cargo install --git https://git.ton1.dev/toni/zern
zern -r hello.zr
```