An open API service indexing awesome lists of open source software.

https://github.com/caio-andres/simple-programming-language

It is the SPL (Simple Programming Language) source code made with TypeScript, Node.js, Express and React.
https://github.com/caio-andres/simple-programming-language

express lexer-parser nodejs programming-language reactjs typescript

Last synced: 10 days ago
JSON representation

It is the SPL (Simple Programming Language) source code made with TypeScript, Node.js, Express and React.

Awesome Lists containing this project

README

          

**SPL** _Simple Programming Language_

# Getting started

### 1. Clone o projeto:

```bash
git clone https://github.com/caio-andres/simple-programming-language.git
```

### 2. Vá para o diretório da linguagem:

```bash
cd language
```

### 3. Instale as dependências:

```bash
npm i
```

### 4. Execute o projeto (language):

```bash
npm start
```

### 5. Abra um segundo terminal (sem fechar o primeiro) e vá para o diretório da interface:

```bash
cd interface
```

### 6. Instale as dependências:

```bash
npm i
```

### 7. Execute o projeto (interface):

```bash
npm start
```

### 8. Abra o browser pelo terminal:

```bash
# Pressione estas teclas:
O + ENTER
```

Enjoy!

# Commands

| Descrição | Exemplo |
| -------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| Atribuição de um valor a uma variável. | `x = 5;` |
| Estrutura condicional que executa um bloco de código se uma condição for verdadeira, com possibilidade de um bloco `else`. | `check x > 10 then`
    `y = 2;`
` or`
    `y = 3;`
`;` |
| Laço de repetição que executa um bloco de código enquanto uma condição for verdadeira. | `loop x < 10 until`
    `x = x + 1;`
`;` |
| Expressão aritmética que pode envolver soma e subtração de termos. | `5 + 3 - 2` |
| Termo de uma expressão que pode envolver multiplicação e divisão. | `2 * 3 / 4` |
| Elemento básico de uma expressão, como um número, uma variável, uma string ou uma subexpressão. | `7`
`x`
`(x + 2)` |
| Condição booleana. | `x > 5`
`z == 0` |
| Operadores relacionais usados para comparar valores. | `==`
`<`
`>`
`<=`
`>=` |
| Nome de uma variável ou função. | `x`
`result` |
| Valor numérico inteiro. | `5`
`100` |

# Technologies used

- `TypeScript` _Linguagem de Programação_

- `Node.js` _Ambiente de Execução_

- `Express` _Framework Back-end_

- `React` _Framework Front-end_

# Project developers

| Name | RA |
| ------------------------------ | --------- |
| Caio André Porto de Oliveira | 822156202 |
| Carlos Armando Munhoz Vilela | 822159355 |
| Felipe Mori Ferreira | 822129885 |
| Giulio Enrico Miranda Maciotta | 822138213 |
| Gustavo Morais Cardoso | 822154343 |