El Lenguaje de Programación FORTRAN
Desarrollado por IBM en 1950 para reducir el esfuerzo de implementación de soluciones a tareas científicas y de ingeniería (hasta esa fecha desarrolladas en lenguaje ensamblador). El desarrollo de FORTRAN fue paralelo al de los compiladores, fue el primer lenguaje que tuvo compilador y que permitía portar programas a distintas máquinas. Además muchos cambios y evolución de los compiladores estuvieron motivados por necesidad de que FORTRAN generara código eficiente.
Primero de los lenguajes de programación “modernos”, su sintaxis ha envejecido mal (ya en 1968, un artículo firmado por los creadores de BASIC lo calificaba como “pasado de moda”). Sin embargo, pese a que la comunidad no lo considerarse como lenguaje de propósito general, FORTRAN es el lenguaje de programación que dominó el desarrollo de aplicaciones científicas durante casi seis décadas. Incluso hoy día (2021), ocupa la 20ª posición en el ranking TIOBE de popularidad de lenguajes de programación (34º en 2020).
FORTRAN ha sido esencial en áreas de cálculo intensivo como: astronomía, dinámica de fluidos computacional, análisis de elementos finitos, modelado y predicción del clima o simulación de satélites. Esto hizo que las distintas versiones estandarizadas mantuvieran compatibilidad con las anteriores, a la vez que incluían capacidades desde la programación estructurada (en 1977), orientación a objetos (en 2003) o programación concurrente (en 2008).
Actualmente, la disponibilidad de grandes librerías especializadas (implementadas en C o C++ habitualmente) hace que la comunidad científica esté migrando a nuevos lenguajes de alto nivel como Python o Matlab. Todo esto hizo que FORTRAN incorporara desde 2003 facilidades de conversión a C.
Actualmente, muchas de las tareas de evaluación del rendimiento de los nuevos supercomputadores están escritas en FORTRAN.
FORTRAN
Nacimiento:1957
Evolución: FORTRAN II (1958); FORTRAN IV (1962); FORTRAN 66; FORTRAN 77; Fortran 90; Fortran 95; Fortran 2003; Fortran 2008; Fortran 2018;
Influencias de: —
Influye en: Algol 58; BASIC; C; PL1