SLIP (Symmetric List Processor) è un linguaggio/libreria di estensione per la gestione di liste concatenate, sviluppato da Joseph Weizenbaum nel 1963 per i General Electric Computer Laboratories. Il linguaggio SLIP viene progettato come sotto-linguaggio al fine di aggiungere strutture dati dinamiche (nello specifico, liste) a linguaggi che non le supportavano in modo nativo, in particolare FORTRAN e MAD. SLIP è noto soprattutto per essere stato usato da Weizenbaum per implementare il chatbot ELIZA (1966).

Nei primi anni '60 il FORTRAN gestiva bene array a dimensione fissa ma non strutture dati che cambiano lunghezza a runtime. Weizenbaum sviluppò SLIP come libreria da integrare in FORTRAN (da cui il nome "FORTRAN-SLIP") e in MAD ("MAD-SLIP"), permettendo di creare, annidare, allungare e accorciare liste senza riscrivere il codice esistente attorno a un nuovo linguaggio.

Caratteristiche Liste simmetriche: ogni cella ha due puntatori, uno al successivo e uno al precedente elemento, permettendo la scansione della lista in entrambe le direzioni.

Allocazione dinamica: le celle vengono create e distrutte durante l'esecuzione, senza dimensione predefinita.

Annidamento: una lista può contenere altre liste come elementi, permettendo strutture ad albero.

Integrazione ospite: SLIP non è un linguaggio standalone ma una libreria di subroutine richiamabili da FORTRAN o MAD.

Note

Bibliografia

Voci correlate ELIZA LISP Lista concatenata

Categoria:Linguaggi di programmazione