Um interpretador para a AST no formato rinha
, com o objetivo de
competir na Rinha de Compiler.
Este interpretador foi desenvolvido com os objetivos de ser correto, conciso e simples de entender. Se sobrar tempo pretendo desenvolver outra submissão orientada a performance.
Este interpretador implementa os seguintes recursos:
- Inteiros
- Add
- Sub
- Mul
- Div
- Rem
- Lt
- Gt
- Lte
- Gte
- Eq
- Neq
- Booleanos
- And
- Or
- Eq
- Neq
- Strings
- Add
- Eq
- Neq
- Tuplas
- First
- Second
- Variáveis
- Condicionais
- Funções
Para construir a imagem:
docker build -t local:rinha-interpreter .
Para executar o interpretador:
docker run --rm -it -v $RINHA_PATH:/var/rinha local:rinha-interpreter
Onde RINHA_PATH
é um diretório contendo o arquivo source.rinha.json
.
Este projeto usa a licença MIT.