Skip to content

Latest commit

 

History

71 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pytomba

Pytomba Logo

Linguagem de programação educativa em português (PT-BR) baseada em Python

Pytomba e uma linguagem de programacao educativa baseada em Python, com palavras-chave em portugues (PT-BR). O objetivo principal e facilitar o aprendizado de logica de programacao, utilizando todo o poder e as ferramentas nativas do Python.

Como Funciona

Diferente de ferramentas que tentam criar um lexer/parser do zero, a nova versao do Pytomba funciona como um transpiler limpo e robusto que traduz palavras-chave usando a propria engine de tokens do Python (tokenize) e a executa diretamente na maquina virtual. Assim voce tem todos os beneficios, traceback completo e bibliotecas do Python padrao, porem em portugues.

Instalação

Dentro do diretorio principal:

pip install -e .

Isso instalara o comando pytomba no seu sistema.

Demonstração

Exemplo de execução do Pytomba Outro exemplo de execução

Executando um Codigo

Crie um arquivo chamado exemplo.pytomba:

defina saudacao(nome):
    se nome == "Mundo":
        imprima("Ola, Mundo!")
    senao:
        imprima(f"Ola, {nome}!")

para i em intervalo(3):
    saudacao("Kellyson")

Execute no terminal:

pytomba exemplo.pytomba

Extensao do VS Code

O projeto tambem conta com uma extensao para VS Code que suporta realce de sintaxe e autocompletar.

Para testar localmente:

  1. Va ate o diretorio .vscode-extension
  2. Instale as dependencias executando npm install
  3. Copie o diretorio para a pasta de extensoes local do VS Code:
    cp -r . ~/.vscode/extensions/pytomba
  4. Reinicie o VS Code e abra um arquivo .pytomba. A extensao comecara a apontar alguns erros basicos de sintaxe, como a falta de : apos estruturas de controle ou falha ao adicionar os parenteses no imprima().

Principais Palavras-Chave

  • Estruturas de controle: se, senaose, senao, enquanto, para, em
  • Subrotinas e Classes: defina, retorne, classe
  • Constantes: verdadeiro (True), falso (False), nulo (None)
  • Logica: e (and), ou (or), nao (not)
  • Embutidos: imprima, tamanho, intervalo, inteiro, texto, flutuante, booleano, lista, dicionario

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages