Fortran

Infotaula de llenguatge de programacióFortran
Fortran acs cover.jpeg
Tipus llenguatge de programació, structured programming language, llenguatge de programació imperatiu, llenguatge de programació procedural, llenguatge de programació orientat a objectes, generic programming language i array programming language
Data de creació 1957 [1]
Disseny John W. Backus
Desenvolupador John Backus i IBM [1]
Darrera versió estable Fortran 2008 (ISO/IEC 1539-1:2010)
Tipus de dades estàtic, manifest i nominal
Majors implementacions múltiples, per exemple Absoft, Cray, GFortran, G95, IBM, Intel, Lahey/Fujitsu, Numerical Algorithms Group, Open Watcom, PathScale, PGI, Silverfrost, Oracle, XL Fortran,
Dialectes FORTRAN for the IBM 704, FORTRAN II, FORTRAN III, FORTRAN IV, FORTRAN 66, FORTRAN 77, Fortran 90, Fortran 95, Fortran 2003, Fortran 2008 i Fortran 2018
Influenciat per Speedcoding
Ha influenciat ALGOL 58, BASIC, C, PL/I, PACT I, MUMPS, Ratfor
Sistema operatiu multiplataforma
Extensió dels fitxers .f, .for, .f90, .f95
Etiqueta d'Stack Exchange Etiqueta
Modifica dades a Wikidata

Fortran (o FORTRAN) és el primer llenguatge de programació d'alt nivell, desenvolupat a la dècada dels 50 i encara usat actualment. El nom ve de FORmula TRANslation ("traducció de fórmules" en anglès). Les primeres versions usaven el nom FORTRAN, però l'estàndard actual es refereix al llenguatge com a Fortran [2]

El primer compilador de FORTRAN per a l' IBM 704 va ser desenvolupat de 1954 a 1957 per un equip d' IBM dirigit per John W. Backus. [1] L'objectiu principal va ser desenvolupar un llenguatge d'alt nivell, que permetés escriure programes independents de la màquina, però que tingués una velocitat d'execució semblant a la del llenguatge d'assemblador. El llenguatge va ser un èxit rotund, i a la comunitat científica es va adoptar de seguida. Com que el llenguatge s'ha fet servir sempre per a programes numèricament intensius, els compiladors de Fortran solen produir executables molt eficients. Tot i això, a finals dels anys 80, el llenguatge (Fortran 77) havia quedat força endarrerit respecte a altres com C. Les noves revisions (Fortran 90 i 95) han modernitzat el llenguatge eliminant-ne algunes de les característiques més obsoletes i afegint suport per a programació orientada a objectes, paral·lelisme, etc. Actualment, Fortran s'utilitza gairebé només per a càlcul científic i anàlisi numèrica. [3]

Versions de Fortran

El llenguatge Fortran ha anat evolucionant amb els anys, i se n'han publicat successius estàndards oficials.

  • FORTRAN IV (o FORTRAN 66)
  • FORTRAN 77
  • Fortran 90: ANSI X3.198-1992 (R1997). Títol: Programming Language "Fortran" Extended.
  • Fortran 95: ISO/IEC 1539-1:1997. Títol: Information technology - Programming languages - Fortran - Part 1: Base language
  • Fortran 2003 ISO/IEC 1539-1:2004 Títol: Information technology - Programming languages - Fortran - Part 1: Base language
  • Fortran 2008 ISO/IEC 1539-1:2010
  • Fortran 2015, en preparació

Fortran 90

Fortran 90 suposa un gran canvi en la història de fortran. Afegeix moltes característiques que reflecteixen els canvis en la programació des del 1978.

  • El codi es pot escriure en format lliure, i la facilitat d'escriure en minúscules
  • Els identificadors poden tenir fins a 31 caràcters
  • Es poden fer comentaris en una línia
  • Es poden fer operacions de matrius
  • Subprogrames recursius
  • Mòduls, permet reunir subprogrames i dades, permet limitar l'accés a algunes parts del codi
  • Millora de la gestió dels arguments dels subprogrames, i permet comprovar les interfícies en temps de compilació
  • Sobrecàrrega d'operadors
  • Estructures de dades
  • Millora en declarar les variables. Es permet donar més informació de la variable
  • Gestió de la memòria dinàmica. Es permet reservar/alliberar memòria en temps d'execució
  • Es pot declarar una variable com a punter
  • Bucles estructurats. Acabats amb "end do", i amb les ordres "exit" i "cycle" per poder canviar la lògica del bucle
  • "Select Case"
  • Control de l'usuari de la precisió
  • Noves funcions intrínseques

Fortran 95

El fortran 95 és una petita revisió de fortran 90. No pretén fer cap canvi radical, sinó corregir alguns problemes del fortran 90 i afegir unes quantes extensions basades en el High Performance Fortran

  • "Forall" i "Where" que ajuden a la vectorització
  • L'usuari pot definir els subprogrames com a "pure" i "elemental"
  • Inicialització de punters i estructures

Una de les grans addicions a l'estàndard és l' ISO Technical Report: TR-15581: Enhanced Data Type Facilities, normalment conegut com a Allocatable TR. Aquest millora les capacitats de la reserva de memòria. Es poden definir matrius "alocatables" a dintre de les estructures de dades, reservar la memòria en subprogrames i reservar la memòria com a retorn d'una funció.

Una altra addició és el suport de l'aritmètica de coma flotant, definit en l'estàndard ISO Technical Report: TR-15580: Floating-point exception handling

Fortran 2003

És una revisió amb moltes característiques noves. Existeix un sumari d'aquestes en la plana web oficial del Fortran Working Group (WG5) [4]

Fortran 2008

Aquest és l'últim estàndard, ISO/IEC 1539-1:2010, conegut de manera informal com Fortran 2008, va ser aprovat el setembre de 2010 . [5] [6] Tal com el Fortran 95, aquesta és una modificació menor, que incorpora aclariments i correccions a Fortran 2003.

Fortran 2015

La següent versió del llenguatge (Fortran 2015) serà una revisió menor de l'estandard Fortran 2008. Actualment, està planejat d'incorporar noves funcionalitats per a millorar la interoperacionalitat entre Fortran i C i facilitar la computació paral·lela. [7]

Altres idiomes
العربية: فورتران
azərbaycanca: Fortran
беларуская: Fortran
български: FORTRAN
বাংলা: ফোরট্রান
bosanski: FORTRAN
کوردی: فۆرتران
čeština: Fortran
Чӑвашла: Фортран
dansk: Fortran
Deutsch: Fortran
Ελληνικά: Fortran
English: Fortran
español: Fortran
eesti: Fortran
euskara: FORTRAN
فارسی: فورترن
suomi: Fortran
français: Fortran
Gaeilge: FORTRAN
עברית: Fortran
हिन्दी: फ़ोरट्रान
hrvatski: Fortran
magyar: Fortran
interlingua: FORTRAN
Bahasa Indonesia: Fortran
italiano: Fortran
日本語: FORTRAN
Taqbaylit: Fortran
қазақша: Фортран
한국어: 포트란
Kurdî: Fortran
Latina: FORTRAN
lietuvių: Fortran
latviešu: ''Fortran''
മലയാളം: ഫോർട്രാൻ
монгол: Фортран
Bahasa Melayu: Fortran
Mirandés: FORTRAN
မြန်မာဘာသာ: Fortran
Nederlands: Fortran
norsk nynorsk: Fortran
norsk: Fortran
occitan: Fortran
polski: Fortran
português: Fortran
română: Fortran
русский: Фортран
саха тыла: Fortran
Scots: Fortran
srpskohrvatski / српскохрватски: Fortran
Simple English: Fortran
slovenčina: Fortran
slovenščina: Fortran
shqip: Fortran
српски / srpski: Фортран
svenska: Fortran
తెలుగు: ఫోర్ట్రాన్
тоҷикӣ: Фортран
Türkçe: Fortran
українська: Фортран
Tiếng Việt: Fortran
中文: Fortran