B (Programmiersprache)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Die Programmiersprache B wurde 1969 von Ken Thompson und Dennis Ritchie entwickelt. B ist stark beeinflusst von BCPL und ist Vorgänger der Programmiersprache C.

B ist vor allem aus sprachhistorischen Gründen interessant, da es die Entwicklung von BCPL zu C genauer dokumentiert. Es wurde für die Übersetzung auf einer DEC PDP-7 mit 8 kb RAM entwickelt. Später wurde es auf PDP-11-Maschinen und Honeywell-Großrechner portiert, wo es zum Beispiel für das bekannte AberMUD von Alan Cox bis in die 1990er-Jahre benutzt wurde.

Aufgrund der eingeschränkten Hardware-Ressourcen auf der Zielmaschine PDP-7 fehlen B einige BCPL-Merkmale, die die Übersetzung aufwendiger machen würden. Beispielsweise sind keine verschachtelten Funktionsdefinitionen möglich. Ebenso wegen der eingeschränkten Ressourcen erzeugte der B-Compiler auf der PDP-7 einen einfachen Zwischencode, der von einem Interpreter zur Laufzeit interpretiert werden muss.[1]

In B gab es wie in BCPL oder Forth nur einen Datentyp, dessen Bedeutung sich erst durch die benutzten Operatoren und Funktionen ergab. B ist also typlos. Es gab bereits viele Spracheigenschaften, die man in C finden kann. Einige Programme sind sogar ohne Probleme noch mit heutigen C-Compilern übersetzbar.

Code-Beispiel[Bearbeiten]

main() {
  auto c;
  auto d;
  d=0;
  while(1) {
    c=getchar();
    d=d+c;
    putchar(c);
  }
}

Dieses Programm lässt sich auch noch mit heutigen C-Compilern (im K&R- oder traditional-Modus) übersetzen. Es ist jedoch kein ANSI C.

Einzelnachweise[Bearbeiten]

  1. D. Ritchie, The Development of the C Language in History of Programming Languages, ACM Press and Addison-Wesley, 1996, ISBN 0-201-89502-1

Weblinks[Bearbeiten]