FORTRAN
FORTRAN lehen goi-mailako programazio-lengoaia izan zen, IBM enpresak diseinatu zuen eta 1954. urtean plazaratu zen. FORTRAN akronimoa FORmula TRANslation (formulen itzulpena) bi hitzetatik dator eta izenak berak lengoaiaren xedea adierazten du, hots, formula eta espresio matematikoak programatzeko egina baitago FORTRAN lengoaia.
![]() | |
---|---|
Jatorria | |
Sorrera-urtea | 1957 |
Ezaugarriak | |
Programazio paradigma | programazio egituratu, Objektuetara bideratutako programazioa, procedural programming (en) ![]() ![]() ![]() |
Egile-eskubideak | copyrightduna |
Lizentzia | MIT lizentzia |
Deskribapena | |
Honen eragina jaso du | Speedcoding (en) ![]() |
Ekoizpena | |
Diseinatzailea | John Backus (en) ![]() |
Garatzailea | IBM eta John Backus (en) ![]() |
fortran-lang.org | |
![]() ![]() ![]() | |
Iturri-kodea | https://github.com/fortran-lang |
1954. urtetik geroztik zenbakizko kalkulu zientifikoa, nagusiki, FORTRAN lengoaia erabiliz egin zen, esate baterako eguraldiaren iragarpena, aireontzien diseinua, satelite eta espazio-ontzien ibilbideen kalkuluak eta abar luze bat. Gaur egun ere, zientzialari askok Fortran lengoaiaren bertsio modernoak erabiltzen dituzte.
Ezaugarriak eta bilakaera Aldatu
Goi mailako lengoaia egituratu eta inperatiboa da. Letra larriak eta xeheak ez dira bereizten. Tokenak dira lengoaiaren oinarrizko elementuak eta sei motakoak izan daitezke.
Etiketa | 123
|
---|---|
Konstantea | 123.456789_long
|
Gako-hitza | ALLOCATABLE
|
Eragiketa | .add.
|
Izena | solve_equation (31 karakteretaraino, _ sinboloa barne)
|
Banatzailea | / ( ) (/ /) [ ] , = => : :: ; %
|
Sententziak, nagusiki aginduak, tokenez osatuta daude. Ondoren funtzio baten definizioarekin:
FUNCTION string_concat(s1, s2) ! Oharra TYPE (string), INTENT(IN) :: s1, s2 TYPE (string) string_concat string_concat%string_data = s1%string_data(1:s1%length) // & s2%string_data(1:s2%length) ! aurrekoaren jarraipena string_concat%length = s1%length + s2%length END FUNCTION string_concat
Hasierako ezaugarri eta eragiketa nagusiak hauek izan ziren Fortran IIko garaian:
DIMENSION
etaEQUIVALENCE
motako sententziak- Esleipena
- Hiru adarreko
IF
eragiketa, hiru jauzi posible zehazteko aukerarekin, emaitza negatiboa, zero, edo positiboa izatearen ondorioz IF
bidezko salbuespen testa (ACCUMULATOR OVERFLOW
,QUOTIENT OVERFLOW
, etaDIVIDE CHECK
)GO TO
jauzietarakoDO
motako iterazioak- S/I formatuduna:
FORMAT
,READ
,READ INPUT TAPE
,WRITE
,WRITE OUTPUT TAPE
,PRINT
, etaPUNCH
- S/I formaturik gabe:
READ TAPE
,READ DRUM
,WRITE TAPE
, etaWRITE DRUM
- Bestelako S/Ia:
END FILE
,REWIND
, etaBACKSPACE
SUBROUTINE
,FUNCTION
, etaEND
funtzioak definitzekoCALL
etaRETURN
funtzioak deitzeko eta itzultzeko.COMMON
partekatutako memoriarakoFREQUENCY
espresioa konpilazioa optimizatzeko
Ezaugarri horiekin gehienekin estandarizatu (ANSI erakundea) zen Fortran 66 bertsiorako.
Lengoaiaren ezaugarri eta eragiketa berriak gehitu ziren Fortran 77 sortzeko. Horietako garrantzitsuenak hauek izan ziren:
IF
etaEND IF
sententziak, non aukeranELSE
etaELSE IF
ere ager daitezkeen.OPEN
,CLOSE
, etaINQUIRE
eragiketak sarrera/irteerakoCHARACTER
datu-motaPARAMETER
konstanteak definitzekoSAVE
aldagai lokal iraunkorretarako- String-en arteko konparaketa egiteko eragiketa berriak (
LGE, LGT, LLE, LLT
)
Fortran 90rekin ezaugarri interesgarri berriak gehitu ziren: izen luzeagoak, SELECT
. . . CASE
bide anitzeko baldintzak, bektoreak osorik maneiatu ahal izatea, funtzio errekurtsiboak, moduluak prozedurak multzokatzeko, eragiketen gainkarga (overloading) eta memoria dinamikoaren kudeaketa beste batzuen artean. Fortran 95n prestazio handiko kalkuluari begirako ezaugarriak gehitu ziren baina ez zen aldaketa handirik egon.
2003tik Fortran modernoaz mintzatzen da objektuetara bideratutako programazioa barneratu baitzen Fortran 2003 delakoan. Ondoren etorri ziren Fortran 2008 (aldaketa txikiekin, gehienbat zuzentzeari eta argitzeari begira) eta Fortran 2018, zeinean programazio paraleloa barneratzen den.
Fortran gaur egun Aldatu
Superkonputazioko ataza askotarako lengoaia nagusia da gaur egun ere, hala nola astronomia, modelatze klimatikoa, kimika konputazionala, ekonomia konputazionala, fluidoen dinamika, fisika konputazionala, datuen analisia, modelatze hidrologikoa, aljebra lineal numerikoa eta zenbaki-liburutegiak (LAPACK, IMSL eta NAG), optimizazioa, sateliteen simulazioa, egituren ingeniaritza eta iragarpen meteorologikoa. Prozesadore informatiko berrien errendimendua neurtzeko erreferentzien artean dago, hala nola SPECeko koma higikorreko proba-bankuetan (benchmark).
Hala ere, kalkulu zientifikoetarako erabiltzen diren liburutegiak 2000tik aurrera C edo C++ lengoaiaz idazten dira, eta goi-mailako lengoaia berriagoak ari dira FORTRANen eremuan sartzen: MATLAB, Python, eta R. Horri begira C lengoaiarekiko interoperabilitatea barneratu zen Fortran 2003an eta Fortran 2018n beste programazio-lengoaiekiko.
NASAko Voyager 1 eta Voyager 2 zundetarako softwarea FORTRAN 5en idatzi zen hasieran, eta, ondoren, FORTRAN 77ra eraman zen. 2013ko irailaren 25etik aurrera, softwarearen zati bat Fortranen idatzita dago oraindik, baina zati batzuk C-ra garraiatu ziren.
Kanpo estekak Aldatu
Artikulu hau informatikari buruzko zirriborroa da. Wikipedia lagun dezakezu edukia osatuz. |