Vivere l'emacs
Premessa
«Emacs è l'editor in tempo reale, estensibile, personalizzabile, auto-documentante e visuale.»
manuale di GNU Emacs 23.1
Una brevissima storia
La prima versione di Emacs fu scritta 1976 da un certo 23enne di nome Richard M. Stallman presso il MIT Computer Science and Artificial Intelligence Laboratory. Inizialmente consisteva in set di macro per TECO (Tape Editor and COrrector che divenne in seguito Text Editor and COrrector) un potente editor di testo che girava al MIT su macchine PDP-6 e PDP-10 dotate del sistema operativo ITS (Incompatible Timesharing System). TECO aveva modalità diverse a seconda che si volesse inserire, modificare o visualizzare il testo e per effettuare ognuna di queste operazioni era necessario scrivere una serie di istruzioni nel suo linguaggio di programmazione (di fatto dei veri e propri programmi). Questo comportava il fatto che non era possibile visualizzare il testo nello stesso momento in cui questo veniva inserito.
Una delle prime funzionalità aggiunte da Stallman fu la modifica alla modalità "modifica-visualizzazione" di TECO che permetteva all'utente di definire delle scorciatoie da tastiera per eseguire determinati programmi TECO. Di fatto tramite questa "macro", diventava possibile aggiornare il video mediante una semplice combinazione di tasti!
Questa e tutte le altre macro che i vari utenti di TECO scrissero in quel periodo furono organizzate e documentate da Stallman ed andarono a formare il primissimo EMACS, sigla che stava per "Editing MACroS".
Negli anni vennero fatti port di EMACS su vari sistemi operativi fino a sbarcare su Unix nel 1981 per mano di James Gosling: stiamo parlando di Gosling Emacs la prima versione di emacs scritta in C (http://en.wikipedia.org/wiki/Gosling_Emacs). Nel 1984 Stallman iniziò a lavorare su GNU Emacs proprio per produrre una versione libera, alternativa al Gosling Emacs, che era software proprietario. Stallman riuscì a breve nel suo intento e già nel 1985 rilasciò la prima versione del suo GNU Emacs. Contemporaneamente prendeva vita il progetto GNU.
GNU Emacs 23.1
Di passi avanti ne sono stati fatti per arrivare a questa versione rilasciata il 29 giugno 2009. Nonostante tutti questi cambiamenti il cuore di GNU Emacs (da ora in poi detto più semplicemente "Emacs") è rimasto lo stesso ed è l'interprete Emacs Lisp. Emacs usa quindi un "dialetto" del linguaggio di programmazione LISP (http://it.wikipedia.org/wiki/Lisp) e in questo linguaggio sono scritte anche le sue innumerevoli estensioni.