Skip to content

DesignLiquido/delegua-completo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

334 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Solução Delégua (linguagem + bibliotecas)


delegua

Linguagem Delégua

Linguagem de programação escrita em TypeScript, derivada da Linguagem Égua

Página Web com Interpretador Delégua para demonstrações


Acompanhe a Design Líquido nas redes sociais:

Pacote da Linguagem Delégua para Node.js (NPM) com todas as blbliotecas implementadas até então:

Outra vantagem do uso deste pacote é a paridade de versões entre o núcleo e as bibliotecas. Por esta forma de instalação, todas as versões mais recentes de todas as bibliotecas de Delégua estão devidamente pareadas com a versão da linguagem em si.

Instalação

Você deve ter o Node.js instalado em seu ambiente.

Com o Node.js instalado, execute o seguinte comando em um prompt de comando (Terminal, PowerShell ou cmd no Windows, Terminal ou bash em Mac e Linux):

npm install -g delegua

Usando como LAIR (Leia-Avalie-Imprima-Repita) em console

Feita a instalação no seu ambiente, execute o seguinte comando:

delegua

Você terá um interpretador Delégua que avalia expressões linha a linha.

Um exemplo de uso é como uma calculadora:

delegua> 2 + 2
4

delegua> 2 * 3
6

delegua> 2 ** 10
1024

Para finalizar a execução do interpretador LAIR Delégua, use o atalho Ctrl + C (todos os sistemas operacionais).

Se quiser apenas ver a versão instalada (sem executar), use:

delegua -v

Ou

delegua --versao

Para saber os demais comandos e opções, use:

delegua --ajuda

Dialetos que suportam o modo LAIR

  • Delégua
  • Égua Clássico
  • Pituguês

Executando arquivos

É possível usar o interpretador com outros dialetos, como Égua.

delegua --dialeto egua

Ou

delegua -d pitugues

Veja aqui todos os dialetos suportados.

Executando código

É possível passar código como argumento para Delégua usando a opção -c:

delegua -c "escreva('Olá mundo')"

Lendo código do pipe

echo 'escreva("Ola mundo")' | delegua -

Depuração

A instalação do pacote delegua inclui o comando delegua-dap, que implementa o Debug Adapter Protocol (DAP) da Microsoft. Qualquer editor ou IDE com suporte a DAP pode depurar programas Delégua sem configuração adicional.

Iniciando o adaptador DAP

delegua-dap

O adaptador lê requisições de stdin e escreve respostas em stdout usando JSON-RPC com cabeçalho Content-Length, conforme especificado pelo protocolo DAP.

Usando com o Code::Blocks

Instale o plugin LinguagensDL no Code::Blocks. O plugin já usa delegua-dap como adaptador padrão — basta ter o pacote delegua instalado globalmente e o depurador funcionará automaticamente ao acionar "Depurar arquivo atual".

Usando com o VS Code

No arquivo launch.json do seu projeto:

{
    "type": "delegua",
    "request": "launch",
    "name": "Depurar arquivo Delégua",
    "program": "${file}",
    "dialeto": "delegua"
}

Comandos DAP suportados

Comando Descrição
initialize Handshake inicial; retorna capabilities
launch Carrega o programa (program) e dialeto
setBreakpoints Define pontos de parada por arquivo e linha
configurationDone Inicia execução até o primeiro ponto de parada
threads Retorna a lista de threads
stackTrace Retorna a pilha de execução
scopes Retorna os escopos de um frame
variables Retorna as variáveis de um escopo
continue Retoma execução até o próximo ponto de parada
next Passo sobre (Step Over)
stepIn Passo dentro (Step Into)
stepOut Passo fora (Step Out)
disconnect Encerra a sessão

Tradução para outras linguagens

O comando geral é o seguinte:

delegua --traduzir {linguagem-origem}-para-{linguagem-destino} meu-arquivo.{extensão}

Exemplos:

delegua --traduzir delegua-para-javascript meu-arquivo.delegua

ou

delegua --traduzir javascript-para-delegua meu-arquivo.js

De uma forma resumida, podemos alterar o --traduzir para -t, assim como para gerar um arquivo de saída basta passar o parâmetro --saida ou -s:

delegua --traduzir delegua-para-javascript --saida meu-arquivo.delegua

Traduções suportadas até o momento:

  • Delégua para Assembly ARM (delegua-para-arm) (use a opção -a para especificar um alvo. Padrão: linux-arm)
  • Delégua para Assembly x64 (delegua-para-x64) (use a opção -a para especificar um alvo. Padrão: linux)
  • Delégua para AssemblyScript (delegua-para-assemblyscript ou delegua-para-as)
  • Delégua para JavaScript (delegua-para-javascript ou delegua-para-js)
  • Delégua para Python (delegua-para-python ou delegua-para-py)

Traduções reversas suportadas até o momento:

  • JavaScript para Delégua (javascript-para-delegua ou js-para-delegua)
  • Python para Delégua (python-para-delegua)
  • VisuAlg para Delégua (visualg-para-delegua)

About

Pacote da Linguagem Delégua para NPM com todas as bibliotecas inclusas.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors