Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gustavosbarreto/drera-lang
https://github.com/gustavosbarreto/drera-lang
Last synced: 7 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/gustavosbarreto/drera-lang
- Owner: gustavosbarreto
- Created: 2014-04-24T00:28:53.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2014-04-29T03:20:15.000Z (over 10 years ago)
- Last Synced: 2024-10-28T20:12:28.699Z (about 2 months ago)
- Language: Java
- Size: 215 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# drera-lang
Drera lang é uma linguagem para o ensino de lógica de programação com uma sintaxe em português.
## Características
* Tipagem dinâmica (não é necessário especificar tipos para variáveis)
* Todos números são tratados como ponto flutuante de dupla precisão
* As variáveis não possuem contexto, em outras palavras, uma variável declarada
dentro de um "se" pode ser acessada fora dele## Operadores de Comparação
Exemplo | Nome | Resultado
---------------------|----------------|----------X == Y
| Igual | Verdadeiro se X e Y são iguaisX != Y
| Diferente | Verdadeiro se X e Y são diferentesX < Y
| Menor que | Verdadeiro se X é menor que YX > Y
| Maior que | Verdadeiro se X é maior que YX <= Y
| Menor ou igual | Verdadeiro se X é menor ou igual a YX >= Y
| Maior ou igual | Verdadeiro se X é maior ou igual a Y## Operadores Lógicos
Exemplo | Nome | Resultado
-------------------------------|------|----------X && Y
| AND | Verdadeiro se tanto X quanto Y são verdadeirosX || Y
| OR | Verdadeiro se X ou Y são verdadeiros |!X
| NOT | Verdadeiro se X não é verdadeiro## Operadores Aritméticos
Exemplo | Nome | Resultado
---------------------|---------------|----------X + Y
| Adição | Soma de X e YX - Y
| Subtração | Diferença entre X e YX * Y
| Multiplicação | Produto de X e YX / Y
| Divisão | Quociente de X por YX % Y
| Módulo | Resto de X dividido por Y## Variáveis
Em Drera Lang as variáveis não possuem contexto, em outras palavras,
uma variável declarada dentro de um "se" pode ser acessada fora dele.
Sintaxe para declaração de variável:```
nome_variavel = valor_variavel
```Caso o valor da variável seja uma string é necessário circundar com aspas duplas.
Note que a sintaxe é estritamente restritiva e é obrigatório um espaço em branco antes
e depois do simbolo `=`.## Estruturas de Controle
### se e senão
```
se condição
comandos
senao
comandos
fim
```### fazer ... enquanto
```
fazer
comandos
enquanto condição
```## Comandos Padrão
### imprimir
O comando `imprimir` imprime uma sequência de caracteres (string) na saida padrão (geralmente na 'tela').
Não é necessário circundar com aspas duplas uma string no parâmetro para o comando `imprimir`. Exemplo:```
imprimir Olá, eu sou uma string
```É possível fazer a interpolaçao de strings com o uso do caracter `$`. Exemplo:
```
ler nome
imprimir Olá, $nome
```### ler
O comando `ler` faz a leitura do teclado do usuário até que a tecla ENTER seja pressionada.
Não é necessário se preocupar com o tipo de dado, já que a conversão é feita automaticamente.Exemplo:
```
ler nome_variavel
```O nome da variável passada como argumento para o comando `ler` é criada automaticamente e estará
disponível em todo o escopo do programa.## Limitações
* Não suporta instruções "se" e "fazer ... enquanto" encadeadas
* Não exibe mensagem de erro caso a sintaxe de algum comando estiver errada