sábado, 21 de agosto de 2010

Tutorial - Sua própria linguagem de programação em C# - Parte 1: Os básicos

Introdução

Quando pensamos em criar um linguagem de programação, pensamos em algo que crie programas complexos, que requer tempo para aprender mas acima de tudo, pensamos em como fazer tudo isto ocorrer e acabamos desistindo.

Eu já tive este problema e pensei deste modo, mas já faz um tempo atrás eu comecei a construir o EASM (easm.codeplex.com), então, como eu fiz? Simples, comecei "naturalmente", criando um script que lia uma string linha-por-linha.

Depois, melhorei a função criando algo que dividisse a linha em duas partes, a mnemônica e os parâmetros e ao mesmo tempo, também dividisse os parâmetros.

Com tudo isto feito, comecei a criar algumas mnemônicas e seus argumentos, mas conforme o tempo passava, tudo ficava difícil, então, eu decidi recomeçar o parser, mas desta vez, apontado para fazer a linguagem mesmo.

Comecei como antes, lendo linhas e tal, mas ao mesmo tempo, decidi implementar as mnemônicas usando a técnica conhecida como reflection, onde você poderia "invocar" funções de outras classes e etc.
Deste modo, fiz as mnemônicas e criei interrupts para usar.

Um detalhe importante é que quando comecei minha linguagem, eu comecei sozinho, somente após eu ter algo concreto que eu a fiz open-source.
Isto foi um passo importante pois assim eu teria colaboração das pessoas para aprimorar a linguagem e suas utilizações.

Na próxima parte você começará com alguns códigos prontos como exemplo, mas se você quiser já ir tendo uma base, acesse o website de desenvolvimento do EASM, ou mesmo seu website: www.easm-language.tk

Antes de concluir o tutorial, eu gostaria de ressaltar para você já ter em mente como definir variáveis e etc, veja o EASM por exemplo, você usa def variável, valor para definir variáveis, usa [valor com espacos] para strings e {variavel} para variáveis. Isto é um passo importante na hora de se construir o parser.

Nenhum comentário:

Postar um comentário