B (ohjelmointikieli)

B on aluksi Ken Thompsonin ja myöhemmin Dennis Ritchien kehittämä BCPL-kieleen perustuva järjestelmäohjelmointikieli. Kieli on kehitetty Bell Labsissa noin vuonna 1969 PDP-7:lle.

Kielellä oli osuus C-kielen suorana edeltäjänä ja Unix-käyttöjärjestelmän kehityksessä. Kieli on käännettävä kieli ilman tyyppijärjestelmää. B-kielen kehityksessä Thompson tuskaili muistimäärän rajoitteiden kanssa kirjoittaessan B:n uudestaan. Jokaisen ominaisuuden lisäys kieleen kasvatti kääntäjän kokoa, mutta uuden ominaisuuden käyttö toteutuksessa vähensi sen muistitarvetta. Kieleen lisättiin muun muassa =+ -operaattori Algol 68:n mukaan (myöhemmin += C-kielessä), sekä ++ ja -- -operaattorit. PDP-7 oli vielä liian rajoittunut kielen laajamittaiseen käyttöön. Ritchie lisäsi ristiinkääntäjän GE-635 -koneen konekieleen: kääntäjä tuotti 36-bittiselle suurtietokoneelle koodia 18-bittisellä koneella ajettaessa. Kun Unix-projekti sai käyttöönsä PDP-11-koneen kielen rajoitteet tulivat ilmeisiksi ja Ritchie kehitti laajennetun kielen NB ("new B"), joka johti C-kieleen.

Kielessä on jo useita C-kieleen päätyneitä konsepteja ja ominaisuuksia kuten lvalue ja rvalue (nk. oikea ja vasen arvo), aaltosulkujen käyttö ohjelmalohkoissa ja unary toiminnot.

 Esimerkki 
Esimerkki B-kielen ohjelmasta:
main( ) {
  auto a, b, c, sum;

  a = 1; b = 2; c = 3;
  sum = a+b+c;
  putnumb(sum);
}

 Lähteet 

 Aiheesta muualla 
 Users' Reference to B  (PDF)

Luokka:Ohjelmointikielet
Luokka:Bell Labs