SLIP es un lenguaje de programación informática de procesamiento de listas , inventado por Joseph Weizenbaum en la década de 1960. El nombre SLIP significa Procesador de listas simétrico . Primero se implementó como una extensión del lenguaje de programación Fortran y luego se incorporó a MAD y ALGOL . [1] El programa más conocido escrito en el lenguaje es ELIZA , un programa informático de procesamiento de lenguaje natural temprano creado por Weizenbaum [2] en el Laboratorio de Inteligencia Artificial del MIT . [3]
En pocas palabras, SLIP consistía en un conjunto de funciones de acceso FORTRAN que operaban sobre listas circulares doblemente enlazadas con campos de datos de tamaño fijo. Las funciones de acceso tenían variantes de direccionamiento directo e indirecto.
La representación de la lista tenía cuatro tipos de celdas: un lector , un encabezado , un indicador de sublista y una celda de carga útil . El encabezado incluía un campo de recuento de referencias para fines de recolección de basura . El indicador de sublista le permitía representar listas anidadas, como (A, B, C, (1, 2, 3), D, E, F) donde (1, 2, 3) es una sublista indicada por una celda en la posición '*' en la lista (A, B, C, *, D, E, F). El lector era esencialmente una pila de historial de estados (un buen ejemplo de un patrón de memento ) donde cada celda apuntaba al encabezado de la lista que se estaba leyendo, la posición actual dentro de la lista que se estaba leyendo y el nivel o profundidad de la pila de historial.