El Llenguatge de Programació Pascal

Niklaus Wirth

Niklaus Wirth, dissenyador de Pascal com a llenguatge de programació, i també modula-2 i Oberón. És a més un dels pioners en Enginyeria de Software.

Presentat el 1970 per Niklaus Wirth, Pascal va ser dissenyat per a forçar la implementació de programes ben estructurats, clars i reduir el nombre d’errors durant el desenvolupament. Aquestes característiques el convertiren prompte en la referència per a la docència de programació a la universitat.

Pascal és un llenguatge fortament tipat, amb codi dividit en fragments amb semàntica pròpia (funcions o procediments) i amb variables que han de ser declarades com a pas previ a l’ús, que impedeix la interpretació o conversió de valors, com per exemple fa C.

 

Pascal Book, 1970 Edition

Pascal Book, 1970 Edition

Aquestes característiques avui comunes foren pioneres en el moment de presentació de Pascal, i feren que un llenguatge pensat exclusivament com a recurs didàctic penetrara en el mercat com a llenguatge de propòsit general i utilitzat en multitud d’aplicacions en distints escenaris, des de l’àmbit de la investigació fins al desenvolupament de jocs. Pascal va ser el llenguatge utilitzat per a l’Apple Lisa i els primers Macintosh.

Les primeres versions de Pascal traduïen el codi font a codi per a una màquina virtual (màquina-P), fet que permetia executar programari en distintes arquitectures només reimplementant la màquina-P. Aquesta idea la revisen anys després altres llenguatges.

L’evolució de Pascal el portà des de la possibilitat de crear finestres en un entorn no gràfic (MS-DOS) a la programació orientada a objectes amb Delphi, pensat per al desenvolupament d’aplicacions visuals en entorn Windows. Avui (2021) Free Pascal és el sistema de referència per a programar en Pascal; l’entorn Lazarus, un clon del Delphi, té versions tant per a Windows com per a OS X i Linux.

Pascal


Naixement: 1970
Evolució: : Turbo Pascal (1983); Object Pascal (1985); Delphi (1995);
Influències de: ALGOL W; Simula 67;
Influeix en: Ada; Go; Java; Modula-2;