Il linguaggio C

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da K&R)
Vai alla navigazione Vai alla ricerca
Il linguaggio C
Titolo originaleThe C Programming Language
Copertina della versione inglese
AutoreBrian Kernighan e Dennis Ritchie
1ª ed. originale1978
1ª ed. italiana1985
Generemanuale
Sottogenereinformatica
Lingua originaleinglese

Il linguaggio C (in inglese The C Programming Language), intitolato Linguaggio C nelle prime edizioni italiane e chiamato informalmente anche K&R, dalle iniziali dei cognomi degli autori, è un noto libro d'informatica scritto da Brian Kernighan e Dennis Ritchie, il secondo dei quali ha originalmente ideato e sviluppato il linguaggio C (così come ha collaborato alla creazione del sistema operativo Unix, sviluppo che è strettamente legato alla nascita del linguaggio C). Il libro è stato un punto di riferimento per lo sviluppo e la divulgazione del C ed è ancora ampiamente letto e usato. Esso gode di una notevole considerazione ed è ritenuto una guida di riferimento autorevole, o addirittura indispensabile, per il linguaggio C in quanto scritto dagli autori originali del linguaggio e perché negli anni è diventato uno standard de facto.

Storia[modifica | modifica wikitesto]

La prima edizione del libro, pubblicata nel 1978, fu la prima guida disponibile per il linguaggio di programmazione C. Il testo fu redatto contemporaneamente allo sviluppo del linguaggio stesso presso i laboratori Bell della AT&T. A volte ci si riferisce alla versione del C descritta in questo libro come K&R C, spesso per distinguerla con le ultime, standardizzate, a cui ci si riferisce anche come ANSI C.

La seconda edizione del libro fu pubblicata nel 1988: essa aggiornava la guida al linguaggio seguendo le indicazioni della standardizzazione ANSI dello stesso, in particolare con l'inclusione di materiale di riferimento alle librerie standard. Tale seconda edizione è stata tradotta in oltre 20 lingue.

L'ANSI C, inizialmente standardizzato nel 1988, ha subito diverse revisioni, la più recente delle quali è la ISO/IEC 9899:1999 (anche conosciuta come "C99"), adottata come standard ANSI nel marzo del 2000. Ad ogni modo, non è stata pubblicata alcuna revisione del manuale per coprire i più recenti standard.

Influenza[modifica | modifica wikitesto]

Il manuale di Kernighan e Ritchie è stato spesso citato come modello per i testi tecnici, per via dell'esposizione chiara e concisa del contenuto. Nel piccolo delle sue 272 pagine (seconda edizione), la trattazione degli aspetti del linguaggio rimane dettagliata e con pochi fronzoli. Gli esempi, di solito, consistono in programmi completi, simili a quelli in cui è possibile imbattersi nell'utilizzo quotidiano del linguaggio, con un'enfasi speciale sulla programmazione di sistema. I dettagli tecnici del C sono corredati dalle osservazioni degli autori sulle buone pratiche di programmazione, che sono illustrate con esempi concreti e realistici. Nella prefazione alla seconda edizione del libro si legge:[1]

«Abbiamo tentato di mantenere la brevità della prima edizione. Il C non è un linguaggio di grandi dimensioni, dunque sarebbe stato fuori luogo concepire un'opera ingombrante. È stata perfezionata la trattazione di caratteristiche preminenti, quali i puntatori, che sono di vitale importanza per la programmazione in C. Oltre a migliorare gli esempi originali, ne abbiamo aggiunti altri in diversi capitoli. Per esempio, la trattazione delle dichiarazioni complesse è stata ampliata con l'aggiunta di programmi che convertono le dichiarazioni in descrizioni verbali e viceversa. Come nella prima edizione, tutti gli esempi sono stati verificati direttamente dal testo: i brani di codice sono in forma leggibile dalla macchina.»

Quando ancora non era stata creata la specifica ANSI C, la prima edizione del testo fu uno standard de facto per chi scriveva compilatori C,. A seguito della standardizzazione, gli autori rivolsero la seconda edizione ai programmatori, piuttosto che ai primi; per usare le parole degli autori (ancora nella prefazione alla seconda edizione):

«L'appendice A, il manuale di riferimento, non è lo standard, ma rappresenta il tentativo di esporre i fondamenti dello standard in uno spazio minore. Il manuale è inteso come strumento di agevole comprensione per i programmatori, ma non come definizione del linguaggio per progettisti di compilatori; tale ruolo compete propriamente allo standard stesso. L'appendice B è un riepilogo delle funzionalità della libreria standard. L'appendice C riassume in sintesi le novità rispetto alla versione originale.»

L'influenza de Il linguaggio C sui programmatori, una generazione che si è "fatta le ossa" sul C nelle università e nell'industria, ha portato molti ad accettare lo stile di programmazione e le convenzioni usate dagli autori come il comportamento preferibile cui attenersi, se non la regola. Per esempio, lo stile di scrittura e di indentazione del codice dei programmi, come presentati in entrambe le edizioni, viene spesso definito "stile K&R" o One True Brace Style (nel Jargon file), e divenne lo stile di programmazione usato per convenzione nel codice sorgente dei kernel di Unix e Linux.

Note[modifica | modifica wikitesto]

  1. ^ (EN) Brian W. Kernighan, Dennis M. Ritchie, The C Programming Language, 2ª ed., Englewood Cliffs, Prentice Hall, 1988, ISBN 0-13-110362-8 (archiviato dall'url originale il 6 novembre 2008).

Bibliografia[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica