// previsível por design
Uma linguagem que corre
exatamente como se lê.
Pequena e explícita, sem fluxo de controlo escondido e sem coerção implícita. Interpretador tree-walking em Rust, e binários nativos sem runtime.
curl -fsSL dl.syntella.dev/install.sh | bash
use io
// o flow corre o bloco do chamador em cada yield
flow repeat(n) {
for i in range(n) { yield }
}
func main() {
defer io.println("bye")
repeat 3 { io.println("tick") }
}
As instruções terminam na palavra-chave seguinte. Os tipos nunca fazem coerção sem tu saberes. O que escreves é o que corre.
Começar
Da instalação ao binário nativo em três passos.
Obter o binário
Uma linha coloca o syt no teu PATH, verificado por checksum.
Criar um projeto
O syt init cria um syt.toml e o src/main.syt.
Interpretar, depois compilar
Itera com run, distribui um binário com build.
Porquê Syntella
Superfície pequena, sem surpresas.
As funcionalidades que te apanham desprevenido noutras linguagens simplesmente não estão aqui.
Sem coerção implícita
Com anotações, int + float é erro de compilação. Os tipos ficam o que declaraste.
flow e yield
Um primitivo para callbacks de iteração. Um corpo flow corre o bloco do chamador em cada yield.
defer e erros tipados
Limpeza à saída do scope, em ordem inversa. Os erros são valores, não exceções. Sem try, sem catch.
Concorrência estilo Go
Canais, spawn e select. CSP completo, parte da linguagem, não uma biblioteca.
Binários nativos
O syt build compila via LLVM para um executável autónomo. Sem runtime, sem VM.
Uma só toolchain
Servidor HTTP, gestor de pacotes, LSP e formatter. Toda a toolchain é um binário: syt.
Instalação
Um comando por plataforma.
Binários pré-compilados para Linux, macOS e Windows, publicados em cada release e verificados por checksum.
$ curl -fsSL dl.syntella.dev/install.sh | bash
> irm dl.syntella.dev/install.ps1 | iex
$ cargo build --release