BCPL

De Viquipèdia
Dreceres ràpides: navegació, cerca
Infotaula de llenguatge de programacióBCPL
Tipus llenguatge de programació, llenguatge de programació multiparadigma i procedural programming language
Data de creació 1966 i 1967
Modifica dades a Wikidata

BCPL és l'acrònim anglès de Basic Combined Programming Language.

Va ser dissenyat per Martin Richards de la Universitat de Cambridge l'any 1966 per tal de solucionar les dificultats experimentades amb el llenguatge CPL durant els anys 60. Inicialment era un llenguatge de la branca del paradigma imperatiu, però més tard s'afegiria també al paradigma d'orientació a objectes.

El primer compilador implementat va ser escrit durant el 1967 mentre Richards visitava el MIT.

En canvi, el llenguatge va ser descrit per primera vegada en un projecte presentat en una conferència informàtica l'any 1969.

Anys després, Dennis Ritchie l'utilitzaria com a base per a desenvolupar el llenguatge B (que per altra banda donaria pas més tard al popular llenguatge C).

BCPL va ser el primer a definir una màquina virtual tal com es coneix en altres llenguatges com Java i Pascal.

Aquesta màquina virtual donava al compilador una gran capacitat d'adaptació a les diferents arquitectures del mercat, ja que feia el codi independent.

Primerament, el compilador interpretava el codi font del programa i generava el codi màquina per a aquesta màquina virtual del BCPL. Llavors, l'altra cara del compilador agafava el codi de la màquina virtual i el traduïa al codi necessari per a l'arquitectura corresponent. Més tard aquesta mena de compiladors es farien molt populars.

El llenguatge tenia la peculiaritat de treballar amb únicament un tipus de dada: la paraula (word en anglès), composta per una quantitat fixa de bits triats generalment per a coincidir amb la mida de la paraula de l'arquitectura corresponent on corregués.

Com que usar un sol tipus de dada sense cap control de tipus podia produir múltiples errors, es va desenvolupar expressament la notació hongaresa (utilitzada fins i tot per Microsoft en el seu sistema operatiu Windows).

El programa "Hola món", en BCPL, és:

GET "LIBHDR"

LET START () BE
$(
WRITES ("Hola mon!*N")
$)