Aprenda Como Linguagens de Programação Funcionam

Jech é uma linguagem de programação educacional que demonstra os fundamentos de interpretadores, compiladores e máquinas virtuais.

exemplo.jc
keep name = "Mundo";
keep age = 25;

say("Olá, " + name);

when (age > 18) {
    say("Você é maior de idade!");
}
else {
    say("Você é menor de idade!");
}

Por Que Jech?

🎓

Educacional

Projetada para ensinar conceitos de compiladores, interpretadores e VMs de forma prática.

🌐

Roda no Navegador

Compilada para WebAssembly, execute código Jech diretamente no seu navegador.

Simples e Rápida

Sintaxe clara e intuitiva, perfeita para aprender os fundamentos de programação.

🔧

Open Source

Código aberto escrito em C, explore e aprenda com a implementação completa.

📦

Bytecode VM

Compila para bytecode e executa em uma máquina virtual customizada.

🎯

Tipagem Dinâmica

Sistema de tipos flexível com suporte a números, strings e arrays.

Sintaxe Jech

Variáveis

keep x = 10;
keep name = "Jech";
keep active = 1;

Condicionais

when (x > 5) {
    say("X é maior que 5");
}
else {
    say("X é menor ou igual a 5");
}

Arrays

keep numbers = [1, 2, 3, 4, 5];
say(numbers[0]);
say(numbers[2]);

Funções

task greet(name) {
    say("Olá, " + name);
}

greet("Mundo");

Arquitetura do Interpretador

1. Código Fonte

Arquivo .jc

2. Tokenizer

Análise Léxica

3. Parser

Análise Sintática (AST)

4. Compilador

Geração de Bytecode

5. VM

Execução

Comece Agora!

Experimente Jech no playground interativo ou explore o código fonte.