Linguaggi di Markup
Il computer è una macchina in grado di trattare fisicamente soltanto lunghe sequenze binarie; sequenze talmente lunghe che, con l'aumentare delle potenzialità dell'hardware, è possibile ormai rappresentare qualsiasi cosa, superando anche i limiti e spostandosi nel campo della fantasia, del virtuale. Comunque qualsiasi cosa sia visualizzata da un monitor, qualsiasi operazione viene effettuata da un computer passa attraverso una serie di filtri progressivi che la riducono dal linguaggio umano a quello della macchina. La produzione di testi non sfugge a questa regola, e nel tempo è stata risolta sostanzialmente in due modi, attraverso gli ambienti di word processing e attraverso i linguaggi di markup. Nell'ambito di un discorso sull'ipertesto i word processor assumono un rilievo minore perché in genere, essendo sistemi WYSIWYG (What You See Is What You Get) utilizzano per la rappresentazione dei caratteri di controllo invisibili proprietari che ne limitano la portabilità e la riusabilità obbligando ad utilizzare per la lettura lo stesso software usato per la scrittura. I linguaggi di markup invece descrivono i meccanismi di strutturazione e di rappresentazione del testo attraverso dei linguaggi veri e propri che utilizzano delle convenzioni spesso standardizzate e quindi utilizzabili su più sistemi e derivano concettualmente dai sistemi usati nelle tipografie per "marcare" le porzioni di testo indicandone le caratteristiche. I linguaggi di markup possono essere distinti in due gruppi:
- linguaggi di markup di tipo procedurale
- linguaggi di markup di tipo descrittivo
La differenza tra i due stà nel meccanismo usato per definire la formattazione del testo ovvero la rappresentazione; i linguaggi di tipo procedurale indicano le procedure di trattamento del testo aggiungendo le istruzioni che devono essere eseguite per visualizzare la porzione di testo referenziata mentre i linguaggi di tipo descrittivo lasciano la scelta del tipo di rappresentazione da applicare al testo al software che di volta in volta lo riprodurrà. I linguaggi del secondo tipo risultano più vantaggiosi perchè, oltre a lasciare il focus della concentrazione sui problemi strutturali di leggibilità, prescindono in fase di lettura dal software con cui sono stati generati, sono in altre parole quelli che permettono di garantire una corretta separazione tra struttura e rappresentazione, che come si è visto, è uno degli aspetti più importanti da tenere in considerazione nella produzione di ipertesti. Tra i linguaggi del primo tipo ci sono lo Script, il TROFF, il TEX, tra quelli del secondo tipo SGML, HTML, XML.