Sunteți pe pagina 1din 23

Fortran

lenguaje de programación

Fortran (previamente FORTRAN,[1]


contracción del inglés The IBM
Mathematical Formula Translating
System) es un lenguaje de programación
de 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 uno 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]
Fortran

IBM y John Backus


Información general
Apareció en 1954
Diseñado por John Backus
Influido por Speedcoding

El FORTRAN 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).

Historia

Código FORTRAN en una tarjeta perforada,


mostrando el uso especializado de las columnas 1-5,
6 y 73-80.
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 el IBM
Mathematical Formula Translating
System. El primer manual de 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 lenguaje, este redujo
en 20 veces el 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 surgió
por 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é a trabajar en 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
computadores IBM 709, 650, 1620, y
7090. La cada vez mayor popularidad del
FORTRAN estimuló significativamente a
fabricantes de computadores de la
competencia a proporcionar
compiladores FORTRAN para sus
máquinas, así que allá por 1963 existían
más de 40 compiladores FORTRAN. Por
estas razones, el FORTRAN es
considerado 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 II
FORTRAN IV
FORTRAN 66
FORTRAN 77
Fortran 90
Fortran 95
Fortran 2003
Fortran 2008

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
Como fue una primera tentativa de
creació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 un
solo 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 primeras
versiones no poseían facilidades que son
consideradas muy útiles, tal como la
asignación dinámica de memoria.

Se debe tener en cuenta que la sintaxis


de Fortran fue orientada 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 solo mejora
mucho la lectura del programa sino que
además aporta información útil al
compilador.

Por estas razones Fortran prácticamente


no se usa fuera de los campos
científicos y del análisis numérico, pero
permanece como el lenguaje preferido
para desarrollar aplicaciones 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
ANS.l..
ISO/IEC 1539-1:1997. Title: Information
technology - Programming languages -
Fortran - Part 1: Base language.
Conocida como Fortran 95. también
adoptada por ANSI.

A continuación se muestra el código


fuente en lenguaje Fortran de un
programa que permite realizar un ajuste
o regresión lineal de una serie de datos:
REGRESION LINEAL.FORTRANS
APLICACION
DIMENSION
TIEMPO(1000),PROD(1000)

OPEN(1,FILE='HISTORIA.txt'
)
I=0
10
READ(1,*,END=80)T,P
I=I+1
TIEMPO(.l.)=T
PROD(I)=P
GO TO 10
80 NDATOS=I
CALL
AJULIN(TIEMPO,PROD,NDATOS,
A,B)
WRITE(*,90)A,B
90 FORMAT('LA
ECUACION
ES:Y=',F10.2,'+',F10.2,'X'
)
20 FORMAT(20F10.0)
END

SUBROUTINE
AJULIN(X,Y,N,A,B)
DIMENSION
X(1),Y(1)
SUMX=0.
SUMY=0.
SUMX2=0.
SUMY2=0
SUMXY=0
DO 20 I=1,N
SUMX=SUMX+X(.l.)
SUMY=SUMY+Y(.l.)
SUMX2=SUMX2+
(X(I)*X(.l.))

SUMY2=SUMY2+Y(I)**2
SUMXY=SUMXY+
(X(I)*Y(I))
20 CONTINUE
PROD=SUMX*SUMY
B=(SUMXY-
PROD/N)/(SUMX2-SUMX**2/N)
A=(SUMY/N-
B*SUMX/N)
RETURN
END

Básicamente, en el programa se lee


desde un archivo ASCII cierta cantidad
de pares ordenados, se convoca a una
rutina que calcula la recta de ajuste
correspondiente, usando el método de
mínimos cuadrados, para luego retornar
aportando los coeficientes o parámetros
de la recta en cuestión.

Referencias
1. Los nombres de las versiones
anteriores a FORTRAN 77 son
convencionalmente escritas con
todas las letras en mayúsculas
(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.
2. Since FORTRAN 77, which introduced
the CHARACTER data type.
3. Since FORTRAN II (1958).
4. http://www.top500.org/project/linpa
ck
5. http://www.softwarepreservation.org
/projects/FORTRAN/index.html#By_F
ORTRAN_project_members
6. 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

Recursos de programación

Fortran 90 Software Repository


National HPCC software repository
Netlib Repository

  Datos: Q83303
  Multimedia: Fortran

Obtenido de
«https://es.wikipedia.org/w/index.php?
title=Fortran&oldid=117340083»

Última edición hace 23 días por A…

El contenido está disponible bajo la licencia CC


BY-SA 3.0 , salvo que se indique lo contrario.

S-ar putea să vă placă și