Forth y el RTX2000

Forth o FORTH es un lenguaje de programación, un entorno de programación y un lenguaje de comandos de consola para ordenadores ideado por Charles H. Moore y Elisabeth Rather entre los años 1965 y 1970 en el National Radio Astronomy Observatory de Kitt Peak, Arizona.

Su nombre es una contracción de la palabra inglesa fourth, dado que sus creadores le consideraban destinado a la cuarta generación de computadoras, pero la primera edición del lenguaje fue preparada para un IBM 1130, que solo permitía nombres con una longitud máxima de cinco letras; su nombre se quedó ya para siempre en FORTH. Forth es deletreado a veces con todas las letras en mayúsculas siguiendo el uso acostumbrado durante los primeros años, aunque el nombre no es un acrónimo.

Inicialmente diseñado para una aplicación muy concreta, la astronomía (cálculo de trayectorias de cuerpos en órbita, cromatografías, análisis de espectros de emisión), en las fases tempranas de difusión del lenguaje se utilizó básicamente en observatorios y por astrónomos, pero evolucionó rápidamente hasta ser aplicable a casi todos los demás campos relacionados o no con esa rama de la ciencia (cálculos de probabilidad, bases de datos, análisis estadísticos y hasta financieros). En los últimos tiempos se utiliza, sobre todo en sistemas embebidos, y de misión crítica. Existen dispositivos procesadores con firmware FORTH fabricados con tecnología Rad-hard por su amplio empleo en entornos de satélite y militares.

Como curiosidad, un programa para la adquisición automática y continua de datos realizado en este lenguaje ha descubierto al menos la mitad de los cúmulos interestelares conocidos en la actualidad.

Forth es un lenguaje de programación de computadoras procedimental, estructurado, imperativo, reflexivo, basado en pila y sin comprobación de tipos. Forth ofrece tanto la ejecución interactiva de comandos (haciéndolo conveniente como shell para los sistemas que carecen de un sistema operativo más formal) como la capacidad de compilar secuencias de comandos para la ejecución posterior. Algunas implementaciones del Forth (usualmente las versiones tempranas o las escritas para ser extremadamente portable) compilan código enhebrado (threaded code), pero muchas implementaciones de hoy generan código de máquina optimizado como otros compiladores de lenguajes.

Una de sus importantes características es la utilización de una pila de datos para pasar los argumentos entre las palabras, que son los constituyentes de un programa en Forth, en términos formales equivalente a la notación polaca inversa RPN (Reverse Polish Notation), popularizado por algunas calculadoras, como la HP41C.

Aunque hace algún tiempo que no programo, fui uno de los pocos programadores españoles razonablemente versado en este lenguaje extensible. Hasta el punto que participé en un evento internacional organizado por Harris semiconductores , fabricante del RTX 2000. Todavía conservo el SDK y la placa de evaluación del dispositivo. Sobre la base del RTX 2000, posteriormente Intersil desarrolló el RTX 2010.

En la época en la que aparecieron el Sinclair ZX81 y el ZX Spectrum, también se fabricaron cientos de unidades del Jupiter ACE, ordenador supuestamente con vocación de entorno domestico, equipado con el lenguaje FORTH, como entorno por defecto. En todos los microordenadores de 8 bits de la época estaba disponible una versión del entrno FORTH cargable desde cassette, o desde disco flexible, cuando estos empezaron a aparecer.