B (linguaggio di programmazione)

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
B
linguaggio di programmazione
AutoreKen Thompson, Dennis Ritchie
Data di origine1969
UtilizzoGeneral purpose
ParadigmiProcedurale, Strutturato
TipizzazioneStatica, debole
Estensioni comuni .b
Influenzato daBCPL, PL/I
Ha influenzatoC
Implementazione di riferimento
Sistema operativoUnix, GCOS

B è un linguaggio di programmazione derivato dal BCPL sviluppato intorno al 1969 da Ken Thompson e Dennis Ritchie presso i Laboratori Bell.

Essenzialmente si tratta di un BCPL privato di tutti quei componenti di cui Thompson ritenne di poter fare a meno, così da poterlo utilizzare sui minicomputer di quel tempo che avevano una quantità di memoria limitata.

Come il BCPL e il FORTH, il B aveva un unico tipo di dato, la parola. La maggior parte delle operazioni trattava la parola come un intero (i.e. +, -, *, /) ma altre come un indirizzo di memoria da dereferenziare. In molti altri casi assomigliava molto a una versione preliminare del C. Esistevano alcune librerie di funzioni, inclusa una che vagamente ricordava le funzioni che poi andranno a far parte della libreria I/O standard del C.

Le prime implementazioni furono per i minicomputer DEC PDP-7 e PDP-11 che utilizzavano il sistema operativo UNIX e per i mainframe a 36 bit Honeywell su sistema operativo GCOS.

Esempio[modifica | modifica wikitesto]

Il seguente esempio è estratto da "Users' Reference to B" di Ken Thompson. La seguente funzione stampa un numero non negativo, n, in base b, compresa tra 2 e 10. Questa routine sfrutta il fatto che nel sistema di caratteri ASCII i codici delle cifre da 0 a 9 hanno valori in sequenza.

printn(n,b) {
        extrn putchar;
        auto a;

        if(a=n/b) /* assegnamento, non un test di eguaglianza */
                printn(a, b); /* ricorsivo */
        putchar(n%b + '0');
}
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica