Hoy tenemos máquinas que corren a 4 GHz, que tienen terabytes de almacenamiento en disco duro y que en memoria RAM pueden llegar a 32 GB o 48 GB en algunos casos. Pero hubo un momento en el desarrollo del cómputo en donde las computadoras tenían 64K bytes de memoria, discos flexibles en donde cabían alrededor de 77 Kbytes y velocidades que llegaban en casos excepcionales a 4 MHz.
Sin duda eran otras épocas y es lo que hoy denominamos retro-cómputo. Sin embargo, no hay que despreciar este momento histórico de las industria, pues es parte fundamental para entender en donde estamos y hacia donde vamos.
Las computadoras de las que hablamos son las Apple II, la VIC-20 y la Commodore 64 y 128, así como muchos modelos de Atari. Y todas estas máquinas usaban el procesador 6502 como base. Eran procesadores de 8 bits y que corrían en general a 1 MHz. Todo esto pareciese que fuese imposible de hacer algo interesante o útil, pero si escudriñamos en el pasado, encontraremos un número grande de software que hacía maravillas considerando las limitaciones en hardware y software.
En máquinas que tienen ya 40 años bien podría pensarse que nadie hace nada nuevo, pero de nuevo, estaremos equivocados. Por ejemplo, he aquí la primera versión de un nuevo lenguaje para la Apple II y ///: PLASMA (Proto Language AsSeMbler for Apple) 1.0, que está ya oficialmente entre nosotros.
PLASMA es un lenguaje de nivel medio para procesadores 6502 de 8 bits. A diferencia de lenguajes como BASIC, ForTran, C y otros, que son de alto nivel y el ensamblador, que es de bajo nivel, PLASMA se encuentra en medio de los mencionados en donde quizás FORTH es el único lenguaje que podría considerarse al mismo nivel.
En GitHub se explica mejor: «PLASMA es una combinación de un entorno operativo, máquina virtual y ensamblador/compilador que se une a la arquitectura del procesador 6502. Es un intento de satisfacer un par de retos sobre el tamaño del código, ejecución eficiente y un paquete de tiempo de ejecución (runtime) pequeño que sea flexible en donde puede ponerse en memoria. Usando una arquitectura de bytecode única, que mapea uno a uno una representación de alto nivel, el compilador puede ser muy simple y ejecutar velozmente en un entorno configurado para una Apple II o ///. Un enfoque modular da un desarrollo incremental y reuso de código. La sintaxis del lenguaje está muy influenciada por ensamblador, Pascal y C. La filosofía de diseño fue la de ser tan simple reteniendo al mismo tiempo flexibilidad y claridad semántica. No encontrarás el programador sintaxis redundante o innecesaria en PLASMA».
PLASMA combina un entorno operativo, compilador/ensamblador y una máquina virtual. Los programas desarrollados usando PLASMA corre en máquinas en Apple 1, Apple ][ y Apple ///. Todo el proyecto es de código abierto y está alojado en GitHub (ahora propiedad de Microsoft).