Esta página se ve mucho mejor con un navegador que soporte web los estándares, aunque es accesible desde cualquier navegador.


Informática
Lenguajes de programación







Inicio

Difunde Firefox

.
Estadisticas Gratis




FORTRAN

FORTRAN es un lenguaje de programación utilizado principalmente en matemáticas y en aplicaciones de cálculo científico.

John Backus, pionero de la informática, publicó en 1954 un artículo titulado Preliminary Aplazamiento, Specifications fuero the IBM Mathematical FORmula TRANslating System, FORTRAN. Fueron necesario sa continuación dos años de esfuerzo del equipo que dirigía en IBM para escribir el primer compilador FORTRAN (25000 líneas, para el IBM 704).

Actualmente el lenguaje FORTRAN es utilizado, por una parte debido a la existencia de numerosas bibliotecas de funciones utilizables en FORTRAN, por otra parte porque existe compiladores FORTRAN potentes que producen ejecutables muy rápidos. No obstante, se reemplaza cada vez más, incluso para aplicaciones científicas, por los lenguajes C y C ++.

Dado que el FORTRAN se creó en la época de las tarjetas perforadas (en particular con el sistema FMS), mantiene una determinada rigidez en la compaginación del programa fuente, hasta el FORTRAN 90. El código por mucho tiempo debiócomenzar a partir de la 7ª columna y no sobrepasar de la 72 (las columnas 73 a 80 se reservan para la numeración de las tarjetas perforadas).

Además, se escribieron desde hace tiempo numerosos códigos industriales en FORTRAN, y la compatibilidad de las nuevas versiones con las anteriores es indispensable, al precio de la conservación de conceptos anticuados.

EL lenguaje BASIC, en su versión original (1964) se concibió como un pequeño lenguaje de carácter pedagógico que permitía iniciar a los estudiantes en la programación, antes de pasar a los lenguajes "serios" de aquella época: FORTRAN y ALGOL. Se encuentran en él algunas características del lenguaje FORTRAN.

Existen extensiones libres, basadas en gcc para compilar el FORTRAN 77 y que mantienen el 90 y 95, entre otros sistemas bajo Linux. INTEL proporciona también un compilador proprietario gratuito para el FORTRAN 90, para la arquitectura x86.


Ejemplo

PROGRAM DEGRADCC Imprime une tabla de conversion grados -> radianes
C ================================================= C
C Declaración de variables INTEGER DEG REAL RAD,COEFFC
C En cabecera de programa WRITE (*,10)10 FORMAT (' ',20('*') / S ' * Degres * Radians *' / S ' ', 20('*') )C
C Cuerpo del programa COEFF = (2.0 * 3.1416) / 360.0
DO 100 DEG = 0,90 RAD = DEG * COEFF WRITE (*,20) DEG, RAD20 FORMAT (' * ',I4,' * ',F7.5,' *')100 CONTINUEC C Fin de tabla WRITE (*,30)30 FORMAT (' ',20('*') )C
C Fin de programa STOP END

Notas:

* este programa está escrito en FORTRAN IV

* la letraC en primera columna indica un comentario.

* La declaración de las variables es facultativa en FORTRAN, pero la variable DEG sería entonces de tipo REAL (las variables cuyo nombre comienza por IJKMLN están por defecto de tipo INTEGER, loa otras de tipo REAL).

* la instrucción WRITE se refiere a una unidad de entrada-salida (aquí : el terminal) y una especificación de formato. Ejemplo el formato de etiqueta 20 indica que es necesario escribir un espacio, una estrella y dos espacios, luego un flotante sobre 4 caracteres incluidos después del punto decimal, etc. Una declaración de FORMATO puede ser dondequiera ; una práctica es ponerlo exactamente después del WRITE a la cual se refiere, otra es ponerlas muy a finales de la unidad de programa.

* un carácter en 7 columna (aquí un S) de una línea indica una consecuencia de la línea anterior.

* la instrucción "DO 100 DEG = 0,90" indica repetir las instrucciones que siguen (hasta la línea 100 incluida) para valores de DEG que varían entre 0 y 90 (en pasos de 1).

* la instrucción CONTINUE no hace nada, se utiliza a menudo como marcador del final de un DO.

Distintas versiones de FORTRAN

* FORTRAN II (1956) so'lo tenía una única instrucción de conexión ("If-aritmética") a 3 direcciones : IF (A-B) 10, 20, 30 indicaba de saltar a las instrucciones de etiqueta 10,.20 ó 30 según que A-B fuera negativo, nulo o positivo.

* FORTRAN III (1958) nunca "ha salido" en forma de producto.

* FORTRAN IV (1962) introdujo, entre otras cosas, la instrucción "If-lógica", permitiendo escribir IF (A .GE. B) GOTO 10 (ir a 10 si A es superior o igual a B).

* FORTRAN V era el nombre se preveía al principio para PL/I, lenguaje de programación universal de IBM que debía reunir los mejores aspectos de FORTRAN (para las aplicaciones científicas), de COBOL (para las aplicaciones de gestión), con algunos hechos tomados de ALGOL.

* FORTRAN 66 es la primera versión oficialmente estandarizada (por el ANSI) de FORTRAN. La confunden a menudo con FORTRAN IV.

* FORTRAN 77, entre otras mejoras, facilita la programación estructurada con bloques "IF (...) THEN/ELSE/ENDIF". En 78, una extensión introduce a DO WHILE/END DO.

* FORTRAN 90 : módulos, recursividad sobrecargas de operadores, nuevos tipos de datos etc. : es una actualización importante para poner FORTRAN al nivel de los otros lenguajes modernos. Las restricciones relativas a la puesta en forma de los programas (columnas 1 a del,.72 a 80...) desaparecen : la escritura se hace finalmente en formato libre.

* FORTRAN 95

* FORTRAN 2003 : como su viejo colega COBOL, FORTRAN soporta ahora la programación orientada a objetos

Biografía de John Backus

John Backus (1924 -2007) es un pionero de la informática conocido para sus dos realizaciones más destacadas : 1. entre 1954 y 1957, en IBM, y con su equipo inventan el lenguaje FORTRAN.

2. en 1959 inventa una notación que permite describir el sintaxis de un lenguaje de programación de alto nivel. Esta notación (abreviada BNF) se llama a en primer lugar Backus Normal Form, luego Backus-Naur Form después de que Peter Naur hiciera modificaciones. Con carácter casi anecdótico, se indicará que Donald Knuth se pronunció en favor de Backus-Naur Form en una carta a "Communication of the ACM", en diciembre de 1964.

John Backus recibe numerosos precios que recompensan su carrera. Cuando recibe el Precio Turing en 1977, para el cual debe redactar un artículo sobre el tema de su elección, él sorprende a la comunidad informática titulando su artículo : ¿Can programming be liberated from the von Neumann style? : ¿a functional estilo and its algebra of programs (¿la programación puede liberarse del modelo von Neumann ? : un modelo funcional y su álgebra de los programas) en el cual denuncia con virulencia la ineficacia de la programación imperativa e introduce un lenguaje puramente funcional denominado FP, por Functional Programming. John Backus se jubilón en 1991. Se concedió a John Backus el doctorado honoris causa de la Universidad Henri Poincaré de Nancy (Francia), 14 de diciembre de 1989. Murió el 21 de marzo de 2007 en Oregon

Enlaces relacionados:

Divulgacion fisica. rafael Barzanallana