Uma breve inversão: antes de falarmos sobre o que é o PLASMA, vamos citar o currículo de quem o está desenvolvendo — com vocês, David Schmenk. Ahn? Quem? É o sujeito que fez as seguintes cositas:
- Escreveu a VM02, a máquina virtual Java para computadores Apple II (você não sabia que era possível rodar aplicações Java em um Apple IIe com 128Kb e uma DISK-II?).
- Botou uma webcam pra funcionar num Apple IIe.
- E fez esta brincadeirinha com um Apple IIc.
A ideia do PLASMA é, basicamente, produzir uma máquina virtual em que se possa compilar programas para Apple II, a diferença é que os opcodes produzidos para esta VM são justamente os mesmos de um 65×02! Ou seja, a mesma coisa que o Java, Python, .NET fazem — com a diferença que o código não vai para uma máquina virtual, mas sim física!
Mais detalhes em http://schmenk.is-a-geek.com/PLASMA.html. Se quiser expor o seu até agora puro e inocente Apple II (ou emulador de) a esta coisa que não é de Jesus, baixe a imagem de disquete.
Ei, peraí, por que “HP-41C Feelings”? Bem… tal qual a clássica calculadora, a linguagem PLASMA trabalha em Notação Polonesa Reversa. Ô diliça, só melhora.
Sensacional!!!
O interessante é a possibilidade de se poder, depois, mudar o target de 6502 para outros trecos como Zilog Z80, MC6809, INTEL 8086, etc… já imaginou?
Fiquei enlouquecido com isso!!!! Fantástico! Valeu Juan pela dica!
Usa RPN porque é uma máquina de pilha, o que é extremamente comum em máquinas virtuais (porque assim você não precisa se preocupar com o número de registradores). A máquina virtual Java também é uma máquina de pilha, por exemplo.