
Sito web: http://www.gnu.org/software/mit-scheme/
MIT/GNU Scheme è un'implementazione del linguaggio di programmazione Scheme, che fornisce un interprete, un compilatore, un debugger del codice sorgente, un editor integrato simile a Emacs e una vasta libreria runtime. Si adatta meglio per programmare grandi applicazioni con ciclo di sviluppo rapido. È alla versione 9.10 ed è rilasciato con licenza GPL.
La home page del MIT del linguaggio Scheme si trova qui. Scheme è un dialetto a ricorsione di coda e visibilità statica del linguaggio di programmazione Lisp inventato da Guy Lewis Steele Jr. e Gerald Jay Sussman. È stato progettato per avere un semantica eccezionalmente chiara e semplice e pochi metodi differenti per la formazione delle espressioni. Un'ampia varietà di paradigmi di programmazione, incluso gli stili di programmazione imperativi, funzionali e le comunicazioni a scambio di messaggio, trovano adeguata espressione in Scheme.
Note
Scheme è stato uno dei primi linguaggi di programmazione a incorporare le procedure di prima classe come nei calcoli lambda, provando così l'utilità delle regole di visibilità statica e la struttura a blocchi in un linguaggio creato dinamicamente. Scheme è stato il primo grande dialetto di Lisp a distinguere le procedure dalle espressioni e i simboli lambda, ad usare un unico ambiente lessicale per tutte le variabili e a valutare la posizione dell'operatore di una chiamata di procedura allo stesso modo della posizione di un operando. Basandosi interamente sulle chiamate di procedura per esprimere le iterazioni, Scheme enfatizza il fatto che le chiamate di procedura ricorsive in coda siano essenzialmente goto che passano argomenti. Scheme è stato il primo linguaggio di programmazione ampiamente usato ad accogliere le procedure escape di prima classe, da cui possono essere sintetizzate tutte le strutture di controllo sequenziale precedentemente conosciute. Più recentemente, basandosi sul progetto di aritmetica generica in Common Lisp, Scheme ha introdotto il concetto di numeri esatti e inesatti. Scheme è anche il primo linguaggio di programmazione a supportare le macro igieniche, che permettono l'estensione affidabile della sintassi di un linguaggio strutturato a blocchi.