Fortran

Col·laboració de Ana Martín per al capítol Programar ordinadors

Amb el desenvolupament en els 50s i 60s d’algorismes de més elevat nivell, i l’augment de poder del hardware, van començar a entrar a l’ús de computadores científics d’altres branques; ells coneixien molt de física, química i altres branques similars, però no de computació, i per descomptat, els era summament complicat treballar amb llenguatge ensamblador en comptes de fórmules.

Així, amb el començament de la difusió de l’ús dels ordinadors, va arribar la necessitat d’escriure aplicacions de software més complexes per a donar suport a les empreses. Els llenguatges de baix nivell eren massa ineficients per a la ràpida resposta que aquestes necessitaven. Així doncs, es van desenvolupar els llenguatges d’alt nivell que van afegir una capa de comunicació més entre el programador i el hardware. Aquesta capa addicional va significar que l’ordinador havia de realitzar un major esforç per a traslladar les instruccions d’un llenguatge d’alt nivell al llenguatge màquina, però els programadors s’havien alliberat del difícil treball de la codificació a baix nivell.

A diferència dels programes d’ensamblador, els programes en llenguatge d’alt nivell es podien utilitzar amb diferents marques de computadors sense haver de fer modificacions considerables. Això permet reduir substancialment el cost de la reprogramació quan s’adquireix un equip nou. Altres avantatges dels llenguatges d’alt nivell són:
• Són més fàcils d’aprendre que els llenguatges ensambladors.
• Es poden escriure més ràpidament.
• Permeten tenir millor documentació.
• Són més fàcils de mantenir.
• Un programador que sàpiga escriure programes en un d’aquests llenguatges no està limitat a utilitzar un sol tipus de màquina.

Això facilita enormement la tasca d’escriure programes però, perquè aquestes instruccions siguin comprensibles per al processador, han de ser convertides abans a codi-màquina. Aquesta conversió es realitza còmodament amb programes especials, anomenats compiladors. Al que escriu el programador se li denomina “codi-font”. Al resultat de la “conversió” (compilació) en llenguatge-màquina, se li denomina “codi-objecte”, “binaris” o “fitxers executables”. En principi, a l’usuari comú només li importa aquest últim nivell, els “binaris”, però convé tenir clara la distinció entre fonts i binaris doncs és clau per a entendre l’obstinació dels partidaris del software lliure a disposar de les fonts.

El primer compilador de llenguatges de programació d’alt nivell va ser Fortran. El llenguatge fortran és un dels llenguatges que formen el grup de llenguatges de computador orientats a procediments, els quals estan fonamentats en l’estructura del llenguatge usat originalment per a descriure el problema, com també en el procediment emprat per a resoldre’l. Té per objecte descarregar al programador de la tasca de reduir tots els càlculs i la presa de decisions als passos elementals requerits pel repertori limitat d’operacions ofert a nivell de llenguatge de maquina. Fortran és un acrònim de FORmula TRANslation (traducció de formules), dissenyat especialment per a la manipulació de formules científiques i l’aplicació de mètodes numèrics a la solució de problemes. Així doncs, com el seu nom indica, va iniciar com un “simple” esforç de traduir un llenguatge de fórmules, al llenguatge ensamblador i per tant al llenguatge de màquina. És un tipus de llenguatge basat en l’assignació de valors (llenguatges imperatius, o procedurals) i es fonamentava en la utilització de variables per a emmagatzemar valors, i en la realització d’operacions amb les dades emmagatzemades.

Fortran funciona molt bé amb nombres d’elevada precisió i ofereix una excel·lent llibreria de rutines trigonomètriques incorporades que ajuden als desenvolupaments científics. Tanmateix, i encara que és més fàcil de llegir que el seu precursor llenguatge ensamblador, disposa de pocs comandos relativament ( a diferència de COBOL i altres llenguatges moderns com BASIC), encara que la seva forma compacta pot produir una mica de confusió si no es coneix el llenguatge.

El primer compilador de Fortran es va desenvolupar entre 1954 i 1957 per l’empresa IBM, per un grup liderat per John W. Backus. En l’època es va considerar imprescindible que els programes escrits en Fortran correguessin a velocitat comparable a la del llenguatge ensamblador; d’altra forma, ningú ho prendria en compte.

Amb el temps, els programadors van anar incorporant noves característiques al llenguatge Fortran , proporcionant-li així més capacitat per a la manipulació de caràcters. Les primeres versions de Fortran estaven orientades a resoldre càlculs matemàtics sense preocupar-se massa per l’aspecte dels resultats. Compiladors posteriors funcionaven millor a l’hora de manejar caràcters de dades ( que sovint es denominen “cadenes de caràcters” ja que amb aquestes cadenes es poden confeccionar paraules i sentències) del que feien les versions més antigues, però seguien mantenint totes les seves capacitats matemàtiques.

Amb el temps, el llenguatge ha estat àmpliament adoptat per la comunitat científica per a escriure aplicacions amb còmputs intensius. La inclusió en el llenguatge de l’aritmètica de nombres complexos va ampliar la gamma d’aplicacions per a les quals el llenguatge s’adapta especialment i moltes tècniques de compilació de llenguatges han estat creades per a millorar la qualitat del codi generat pels compiladors de Fortran. A partir de Fortran, s’han desenvolupat innombrables llenguatges, que segueixen el mateix concepte: buscar la major abstracció possible, i facilitar la vida al programador, augmentant la productivitat, encarregant-se els compiladors o intèrprets de traduir el llenguatge d’alt nivell, al llenguatge de computadora. Exemples destacats són el llenguatge C, Pascal, Visual Basic o Java.

Col·laboració de Ana Martín per al capítol Programar ordinadors