B | |
---|---|
Språkklass | processuella |
Utförandetyp | tolkad |
Framträdde i | 1969 |
Författare | Ken Thompson , Denis Ritchie : Bell Labs |
Typ system | statisk |
Dialekter | Intern standard |
Blivit påverkad | BCPL |
påverkas | C |
Bee (den andra bokstaven i det engelska alfabetet är B ) är ett tolkat programmeringsspråk utvecklat av AT&T Bell Telephone Laboratories . Det är en ättling till BCPL- språket och den omedelbara föregångaren till C. Bee var främst ett verk av Ken Thompson med hjälp av Dennis Ritchie och publicerades 1969 .
Språk B var starkt influerat av BCPL och dess namn är troligen en förkortning för BCPL. Det är också möjligt att dess namn kommer från Bon- språket , ett tidigare, men inte relaterat till B, och ganska olikt, programmeringsspråk som Thompson utvecklat för användning i Multics . Namnet på den senare kommer i sin tur från namnet på Thompsons hustru Bonnie eller från namnet på den gamla tibetanska religionen Bon [1] .
B-språket designades för rekursiva , icke-numeriska, maskinoberoende applikationer som operativsystemprogramvara och programmeringsspråk . [2] Det var ett typlöst språk, med en enda datatyp som var den underliggande maskinens naturliga minnesordsformat , vad det nu kan vara. Beroende på sammanhanget behandlades ordet som ett heltal eller en minnesadress .
Eftersom maskiner med ASCII - teckenbearbetning redan var vanliga, i synnerhet DEC PDP-11 som Bell tog emot, blev det viktigt att stödja teckendata placerade i minnesord. Den otypade karaktären hos B-språket noterades som ett fel, vilket ledde till att Thompson och Ritchie utvecklade en utökad version av språket som stödde nya interna och användardefinierade datatyper , vilket blev C (C)-programmeringsspråket .
Följande exempel är hämtat från Users' Reference to B av Ken Thompson:
/* Följande funktion kommer att skriva ut ett icke-negativt tal, n, till basen b, där 2<=b<=10. Denna rutin använder det faktum att i ASCII-teckenuppsättningen har siffrorna 0 till 9 sekventiella kodvärden. */ printn ( n , b ) { extrn putchar ; auto a ; if ( a = n / b ) /* uppgift, inte test för likhet */ printn ( a , b ); /* rekursiv */ putchar ( n % b + '0' ); }
Programmeringsspråk | |
---|---|
|
Ken Thompson | |
---|---|
Operativsystem | |
Programmeringsspråk | |
programvara |
|
Övrig |