https://github.com/designliquido/portugues-puro
Implementação de um interpretador de linguagem natural em português, seguindo como inspiração a Linguagem de Programação Plain English, criada por Gerry Rzeppa.
https://github.com/designliquido/portugues-puro
hacktoberfest portugues portuguese
Last synced: 5 months ago
JSON representation
Implementação de um interpretador de linguagem natural em português, seguindo como inspiração a Linguagem de Programação Plain English, criada por Gerry Rzeppa.
- Host: GitHub
- URL: https://github.com/designliquido/portugues-puro
- Owner: DesignLiquido
- License: mit
- Created: 2023-09-05T17:20:17.000Z (over 2 years ago)
- Default Branch: principal
- Last Pushed: 2025-02-13T12:24:28.000Z (10 months ago)
- Last Synced: 2025-06-07T11:09:32.329Z (6 months ago)
- Topics: hacktoberfest, portugues, portuguese
- Language: TypeScript
- Homepage:
- Size: 108 KB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Português Puro
Implementação em português de linguagem natural como interpretador, seguindo como inspiração o Plain English, criado por Gerry Rzeppa.
## Por que precisamos de Português Puro?
Linguagens de programação podem ser intimidadoras para pessoas não habituadas com programação. Além disso, queremos provar que é possível
instrumentar a linguagem natural para executar algoritmos que um computador possa entender.
## Definições
### Declaração de tipos
Uma declaração é uma frase em português que ensina algo ao motor da linguagem. Por exemplo:
```
Uma contagem é um número.
```
Aqui definimos um novo tipo derivado (`contagem`) e dizemos que esse tipo é derivado de um tipo base (`número`). Essa construção é chamada de Axioma.
Axiomas são detalhados mais abaixo.
Em Português Puro, cada declaração deve ser finalizada com um ponto final.
### Contexto
De forma similar a uma conversa entre duas ou mais pessoas, existe a construção de um contexto de ideias. Esse contexto de ideias é implementado em Português Puro.
Por exemplo, se temos as duas instruções abaixo:
```
Atribua "João" para uma string denominada nome.
Escreva o nome.
```
Podemos utilizar o artigo definido `o` para fazermos referência à variável local declarada na instrução anterior (`nome`). O interpretador de Português Puro mantém essa variável na memória, de forma que quando queremos escrever a string que foi mencionada anteriormente, podemos fazê-lo.
O resultado deste conjunto de instruções será, simplesmente:
```
João
```
### Instruções
É necessário instalar o [Node.js®](https://nodejs.org/pt-br) (versão 16 ou superior) e o gerenciador de pacotes [Yarn](https://yarnpkg.com).
Após instalar o Node.js®, utilize o [NPM](https://docs.npmjs.com/about-npm), que vem com o Node.js, para instalar o Yarn:
```
npm i -g yarn
```
após instalar o Yarn, utilize o terminal para navegar até o diretório raiz do projeto e execute:
```
yarn
```
para instalar os pacotes e dependências do projeto.
#### Testes unitários
Execute:
```
yarn testes-unitarios
```
para rodar os testes unitários.
Os relatórios de cobertura de código ficam no diretório `/coverage/lcov-report/index.html`.