- Fortran
-
Fortran (previamente FORTRAN)[1] (contracción del inglés Formula Translating System) es un lenguaje de programación alto nivel de propósito general,[2] procedimental[3] e imperativo, que está especialmente adaptado al cálculo numérico y a la computación científica. Desarrollado originalmente por IBM en 1957 para el equipo IBM 704, y usado para aplicaciones científicas y de ingeniería, el FORTRAN vino a dominar esta área de la programación desde el principio y ha estado en uso continuo por más de medio siglo en áreas de cómputo intensivo tales como la predicción numérica del tiempo, análisis de elementos finitos, dinámica de fluidos computacional (CFD), física computacional, y química computacional. Es una de los lenguajes más populares en el área de la computación de alto rendimiento y es el lenguaje usado para programas que evalúan el desempeño (benchmark) y el ranking de los supercomputadores más rápidos del mundo.[4]
El FORTRAN (una palabra compuesta, derivada de The IBM Mathematical Formula Translating System) abarca un linaje de versiones, cada una de las cuales evolucionó para añadir extensiones al lenguaje mientras que usualmente retenía compatibilidad con las versiones previas. Versiones sucesivas han añadido soporte para procesamiento de datos basados en caracteres (FORTRAN 77), programación de arreglos, programación modular y programación orientada a objetos (Fortran 90/95), y programación genérica (Fortran 2003).
Contenido
Historia
A finales de 1953, John W. Backus sometió una propuesta a sus superiores en IBM para desarrollar una alternativa más práctica al lenguaje ensamblador para programar el computador central IBM 704. El histórico equipo FORTRAN de Backus consistió en los programadores Richard Goldberg, Sheldon F. Best, Harlan Herrick, Peter Sheridan, Roy Nutt, Robert Nelson, Irving Ziller, Lois Haibt y David Sayre.[5]
A mediados de 1954 fue terminada una especificación del borrador para The IBM Mathematical Formula Translating System. El primer manual para el FORTRAN apareció en octubre de 1956, porque los clientes eran reacios a usar un lenguaje de programación de alto nivel a menos que su compilador pudiera generar código cuyo desempeño fuera comparable al de un código hecho a mano en lenguaje ensamblador.
Mientras que la comunidad era escéptica en que este nuevo método pudiera posiblemente superar la codificación a mano, éste redujo por un factor de 20 al número de sentencias de programación necesarias para operar una máquina, y rápidamente ganó aceptación. Durante una entrevista en 1979 con Think, la revista de los empleados de IBM, el creador, John Backus, dijo, "Mucho de mi trabajo ha venido de ser perezoso. No me gustaba escribir programas, y por eso, cuando estaba trabajando en el IBM 701 escribiendo programas para computar trayectorias de misiles, comencé el trabajo sobre un sistema de programación para hacer más fácil escribir programas".[6]
El lenguaje fue ampliamente adoptado por los científicos para escribir programas numéricamente intensivos, que incentivó a los escritores de compiladores a producir compiladores que pudieran generar un código más rápido y más eficiente. La inclusión en el lenguaje de un tipo de datos y de la aritmética de números complejos amplió la gama de aplicaciones para las cuales el lenguaje se adaptaba especialmente e hizo al FORTRAN especialmente adecuado para aplicaciones técnicas tales como la ingeniería eléctrica.
Hacia 1960, las versiones de FORTRAN estaban disponibles para los computadors IBM 709, 650, 1620, y 7090. Significativamente, la cada vez mayor popularidad del FORTRAN estimuló a fabricantes de computadores de la competencia a proporcionar compiladores FORTRAN para sus máquinas, así que por 1963 existían más de 40 compiladores FORTRAN. Por estas razones, el FORTRAN es considerado ser el primer lenguaje de programación ampliamente usado soportado a través de una variedad de arquitecturas de computador.
El desarrollo del FORTRAN fue paralelo a la temprana evolución de la tecnología del compilador. De hecho, muchos avances en la teoría y el diseño de compiladores fueron motivados específicamente por la necesidad de generar código eficiente para los programas en FORTRAN.
Versiones
Algunas otras versiones subsiguientes fueron:
- FORTRAN IV
- FORTRAN 77
- FORTRAN 90
- FORTRAN 95
- FORTRAN 2003
- FORTRAN 2008
- FORTRAN 2010
Principales características
El lenguaje fue diseñado teniendo en cuenta que los programas serían escritos en tarjetas perforadas de 80 columnas. Así por ejemplo, las líneas debían ser numeradas y la única alteración posible en el orden de ejecución era producida con la instrucción goto. Estas características han evolucionado de versión en versión. Las actuales contienen subprogramas, recursión y una variada gama de estructuras de control.
Ventajas e inconvenientes de su sintaxis
Lo que fue la primera tentativa de proyección de un lenguaje de programación de alto nivel, tiene una sintaxis considerada arcaica por muchos programadores que aprenden lenguajes más modernos. Es difícil escribir un bucle "for", y errores en la escritura de sólo un carácter pueden llevar a errores durante el tiempo de ejecución en vez de errores de compilación, en el caso de que no se usen las construcciones más frecuentes. Algunas de las versiones anteriores no poseían facilidades que son consideradas como útiles en las máquinas modernas, como la asignación dinámica de memoria.
Se debe tener en cuenta que la sintaxis de Fortran fue afinada para el uso en trabajos numéricos y científicos. Muchas de sus deficiencias han sido abordadas en revisiones recientes del lenguaje. Por ejemplo, Fortran 95 posee comandos mucho más breves para efectuar operaciones matemáticas con matrices y dispone de tipos. Esto no sólo mejora mucho la lectura del programa sino que además aporta información útil al compilador.
Por estas razones Fortran no es muy usado fuera de los campos de la informática y el análisis numérico, pero permanece como el lenguaje a escoger para desempeñar tareas de computación numérica de alto rendimiento.
Especificaciones
Existen dos versiones normalizadas del lenguaje.
- ANSI X3.198-1992 (R1997). Título: Programming Language "Fortran" Extended. Conocida como Fortran 90. Se trata de un estándar publicado por ANSI.
- ISO/IEC 1539-1:1997. Title: Information technology - Programming languages - Fortran - Part 1: Base language. Conocida como Fortran 95. también adoptada por ANSI.
Referencias
- ↑ The names of earlier versions of the language through FORTRAN 77 were conventionally spelled in all-caps (FORTRAN 77 was the version in which the use of lowercase letters in keywords was strictly nonstandard). The capitalization has been dropped in referring to newer versions beginning with Fortran 90. The official language standards now refer to the language as "Fortran." Because the capitalisation (or lack thereof) of the word FORTRAN was never 100% consistent in actual usage, and because many hold impassioned beliefs on the issue, this article, rather than attempt to be normative, adopts the convention of using the all-caps FORTRAN in referring to versions of FORTRAN through FORTRAN 77 and the title-caps Fortran in referring to versions of Fortran from Fortran 90 onward. This convention is reflected in the capitalization of FORTRAN in the ANSI X3.9-1966 (FORTRAN 66) and ANSI X3.9-1978 (FORTRAN 77) standards and the title caps Fortran in the ANSI X3.198-1992 (Fortran 90), ISO/IEC 1539-1:1997 (Fortran 95) and ISO/IEC 1539-1:2004 (Fortran 2003) standards.
- ↑ Since FORTRAN 77, which introduced the
CHARACTER
data type. - ↑ Since FORTRAN II (1958).
- ↑ http://www.top500.org/project/linpack
- ↑ http://www.softwarepreservation.org/projects/FORTRAN/index.html#By_FORTRAN_project_members
- ↑ Fortran creator John Backus dies - Gadgets - MSNBC.com
Enlaces externos
- Fortran DMOZ category
- User notes on Fortran Programming (UNFP)
- Unit 7.1 FORTRAN 77, part of a textbook
- Unit 7.2 FORTRAN 90, part of a textbook
- g95 Compilador GNU de Fortran 95 multiplataforma, software libre, basado en GCC
- GFortran, compilador de Fortran 95 de GNU,software libre, parte del proyecto de GCC
- Repositorio de paquetes Debian de g95, (página en inglés)
- Página en español sobre G95 , incluye manual en español en pdf. "site" no oficial
- Proyecto Fortress
- Fortran 77, 90, 95, 2003 Información y Recourses, (página en inglés)
Recursos de programación
Categorías:- Lenguajes compilados
- Lenguajes de programación
- Acrónimos de informática
- Historia del software
- Lenguajes de programación de IBM
Wikimedia foundation. 2010.