Linguagem "Enquanto" usada como exemplo na disciplina de Paradigmas de Linguagens de Programação
Implementação da linguagem em Scala (~250 linhas de código): whilelang
A gramática está definida em Enquanto.g4
a := leia;
b := 10;
se a <= b entao
exiba "Menor"
senao
exiba "Maior"Este projeto usa alguns recursos da versão 14 de Java. Por isso é necessário verificar a versão instalada e, se for necessário, atualizar a versão.
$ java -versionCaso seja necessário, você pode usar o sdkman (sdkman.org) para instalar a versão mais nova.
$ sdk i javaPara compilar use compilar.bat (windows) ou compilar.sh (linux).
$ ./compilar.shO script gera o parser e compila o código Java gerado.
Para executar use while.bat (windows) ou ./while (linux).
$ ./while olamundo.while- Inclua a operações de divisão (
/) e de exponenciação de inteiros (^) - Inclua as operações
ouexorentre booleanos - Inclua as relações menor (
<), maior (>), maior ou igual (>=) e diferente (<>) entre inteiros - Altere a sintaxe para que o
;ao invés de separar comandos seja usado para finalizar cada comando - Crie o comando
para ID de expressao ate expressao faca comando. Exemplo
para i de 1 ate 5 faca
escreva i- Crie o comando
repita expressao vezes comando. Exemplo
repita 10 vezes
exiba "Funciona"- Altere o comando
se .. entao .. senao ...para incluir a cláusulasenaose. Cadasepode ter zero ou mais clausulassenaose. Exemplo:
se nota >= 6 entao
exiba "Aprovado"
senaose nota >= 3 entao
exiba "Recuperação"
senao
exiba "Reprovado"- Crie o comando
escolha(switch).
x = leia
escolha x
1 : exiba "um"
2 : exiba "dois"
_ : exiba "outro numero"- Altere a linguagem para permitir atribuições paralelas:
a, b, c := 2, 3, 4
a, b := b, a- Altere a linguagem para que o comando
exibapassa ser usado com números e com textos.
exiba "Ola Mundo"
exiba 2021