De Wikipedia, la enciclopedia libre
Ir a navegaciónSaltar a buscar

SPITBOL ( Sp EEdy I mplemen t ación de SNO BOL ) es un compilado aplicación de la SNOBOL4 lenguaje de programación . Originalmente diseñado para la familia de computadoras IBM System / 360 y System / 370 , ahora se ha adaptado a la mayoría de los principales microprocesadores, incluido el SPARC . Fue creado por Robert Dewar y Ken Belcher, que estaban entonces en el Instituto de Tecnología de Illinois .

Antes del desarrollo de SPITBOL, se pensaba que SNOBOL4 era lento, requería mucha memoria e imposible de compilar debido a su naturaleza dinámica. Si bien el enlace diferido evita que todo se determine en el momento de la compilación, SPITBOL adopta varias estrategias para tomar decisiones lo antes posible. Hay disponibles versiones recientes del compilador SPITBOL. Desde 2001, el código fuente del compilador SPITBOL 360 original está disponible bajo la Licencia Pública General GNU . [1]

MACRO SPITBOL es una implementación de SPITBOL escrita en la década de 1970 por Robert Dewar y Anthony P. McCann. [2] MACRO SPITBOL está codificado en MINIMAL, un lenguaje ensamblador para una máquina abstracta. El conjunto de instrucciones se define cuidadosamente para permitir cierta flexibilidad en su implementación, de modo que se puedan explotar las operaciones de hardware favorables al procesamiento de cadenas. [3]

Una implementación de MINIMAL que fue diseñada para interpretación en microcomputadoras se realizó traduciendo MINIMAL a MICRAL utilizando un traductor que se implementó en SPITBOL. La versión MICRAL de MACRO SPITBOL, junto con el intérprete MICRAL corrió en menos de 40K bytes. [4] Esta compresión extrema de código de objeto de MICRAL se logra mediante un conjunto de sustituciones de macro de código de máquina que minimizan el espacio requerido para el código de objeto y la tabla de macros. La complejidad de los algoritmos conocidos para una solución óptima a este problema es alta, pero las heurísticas eficientes logran resultados casi óptimos. [5]

El código fuente de MACRO SPITBOL se publicó bajo la Licencia Pública General GNU el 17 de abril de 2009. [6]

Referencias

  1. ^ Fuente y documentación de Spitbol 360
  2. ^ Robert BK Dewar ; Anthony P. McCann (1977). "MACRO SPITBOL - un compilador SNOBOL4". Software: práctica y experiencia . 7 : 95-113. doi : 10.1002 / spe.4380070106 .
  3. ^ Robert BK Dewar ; Anthony P. McCann (1979). MINIMAL: un lenguaje ensamblador independiente de la máquina . Informe técnico del Departamento de Informática. No. 12. Instituto Courant de Ciencias Matemáticas.
  4. ^ Robert BK Dewar ; Martin Charles Golumbic ; Clinton F. Goss (agosto de 2013) [Publicado por primera vez en octubre de 1979]. MICRO SPITBOL . Informe técnico del Departamento de Informática. No. 11. Instituto Courant de Ciencias Matemáticas. arXiv : 1308.6096 . Código bibliográfico : 2013arXiv1308.6096D .
  5. ^ Martin Charles Golumbic ; Robert BK Dewar ; Clinton F. Goss (1980). "Macro sustituciones en MICRO SPITBOL - un análisis combinatorio". Proc. XI Conferencia del Sureste sobre Combinatoria, Teoría de Gráficos y Computación, Congressus Numerantium, Utilitas Math., Winnipeg, Canadá . 29 : 485–495.
  6. ^ Fuente de macro Spitbol