Interpretador BASIC · Cesar Gimenes
A aventura de criar meu próprio interpretador BASIC
2017-04-02 17:40
Você deve estar se perguntando algo como "por que diabos um interpretador BASIC nos dias de hoje?". Bom já a algum tempo eu estava querendo uma maquina para ensinar os princípios da computação para minha filha, e precisa ser uma maquina resistente, para resistir a uma criança de 5 anos tem que praticamente ser um tanque de guerra, e não pode ter nada sofisticado em termos de sistema operacional, nada de Linux ou Windows porque a maquina não pode ter um sistema de arquivos montado que precise ser desligado corretamente, precisa ser algo que seja desligado simplesmente cortando o fornecimento de energia e que ligue instantaneamente caindo em um prompt de alguma linguagem simples, sem ícones sem comandos para carregar o interpretador, nada, ligou ta pronto para receber comandos. Um sistema para satisfazer esses requisitos é o bom e velho BASIC in ROM presente em quase todos os computadores pessoais dos anos 70 e 80.
Na pratica estou criando dois interpretadores distintos mas que devem falar exatamente o mesmo dialeto de BASIC, um escrito em C que vai rodar na plataforma da Renesas e uma versão em Go para rodar no PC. Existem vários motivos para essa implementação dupla, por exemplo a validação do código, mas também quero aproveitar para testar algumas ideias do Go e comparar com a solução em C. Alem de poder usar todas as vantagens das ferramentas de analise estática do Go, ferramentas de teste integradas e por ai vai.