Skip to content

Latest commit

 

History

History
18 lines (17 loc) · 2.2 KB

README.md

File metadata and controls

18 lines (17 loc) · 2.2 KB

Máquina Virtual de Execução de Pascal (MEPA)

Implementação da Máquina Virtual de Execução de Pascal (frequentemente utilizada em disciplinas de compiladores) com objetivo de ajudar na visualização e execução de códigos em MEPA.

Motivação

Durante meus estudos da disciplina de Compiladores I, tive uma certa dificuldade em conseguir visualizar e entender tudo que acontecia em alguns comandos da MEPA, em especial os que envolviam funções e procedimentos. Quando chegou a hora de implementar a geração de código, testar e debuggar o resultado do compilador, senti mais ainda a necessidade de visualização da MEPA, com isso comecei a implementar esse projetinho :>

Como usar

Esse projeto pode ser utilizado completamente online (e offline) clicando aqui.

As instruções implementadas podem ser vistas nas 3 páginas de um livro de um PDF que eu achei na internet: página 1, página 2 e página 3. Se alguém souber qual livro é esse, por favor atualize esse README :>

Testes

Atualmente não faço nenhum teste automatizado nesse projeto, já que a ideia era uma implementação rápida para fazer alguns testes. Disponibilizei o código pois acredito que (mesmo que possívelmente incorreto) pode ser de extrema ajuda para alguém.

Confiabilidade

Apesar da falta de testes automatizados, durante o desenvolvimento e utilização, acabei corrigindo os erros mais grotescos e bestas do código. Pela natureza simples do código e da "arquitetura" MEPA acredito que dificilmente um erro "misterioso" vá ocorrer.

Porque código em Inglês?

Não gosto de português sem acentuação e/ou misturado com inglês, então tento manter tudo unificado em inglês. E também possibilita um "maior alcance" dos meus projetos.

Futuro do projeto

Como já terminei a disciplina de Compiladores I, eu não tenho um motivo para continuar e expandir esse projeto, mas quaiquer problemas ficarei feliz em corrigir caso alguém ache isso útil :>

Performance

Provavelmente horrível, como disse, era pra ser algo rápido e eu não sou o melhor com Javascript.