A comienzos de los años cincuenta, la mayoría de los científicos
programaban en código máquina o ensamblador. Una fórmula debía
descomponerse en instrucciones propias del ordenador, gestionando
registros y direcciones. El cálculo era rápido al terminar el programa,
pero prepararlo podía llevar semanas.
El equipo de John Backus en IBM propuso una
ruptura: escribir fórmulas próximas a las matemáticas y dejar que un
programa las tradujera. FORTRAN, de Formula Translation, solo
triunfó porque su compilador produjo código capaz de competir con
especialistas en ensamblador.
El coste oculto de los primeros ordenadores
El tiempo de máquina era caro, pero también el de los programadores. A
medida que los ordenadores aceleraban, preparar programas representaba
una parte creciente del coste.
Backus trabajó primero en Speedcoding para el IBM 701. Ofrecía
operaciones prácticas, incluida aritmética en coma flotante, pero
interpretaba instrucciones y ralentizaba mucho la ejecución. Mostró la
utilidad de una notación accesible y confirmó que los científicos no
aceptarían perder rendimiento.
En 1953, Backus propuso un traductor para el IBM 704. La máquina ofrecía
coma flotante por hardware y registros índice, pero explotarlos
eficientemente exigía organizar el código de forma compleja.
Un equipo, un lenguaje y un compilador
IBM reunió especialistas complementarios. Harlan Herrick, Irving Ziller,
Peter Sheridan, Roy Nutt, Robert Nelson, Lois Haibt y otros participaron
en sintaxis, análisis, optimización y pruebas.
El lenguaje ofrecía expresiones, bucles y saltos para cálculo numérico.
Su forma inicial reflejaba el hardware y las tarjetas: columnas
reservadas, etiquetas numéricas y GO TO.
La innovación decisiva fue el compilador. Analizaba dependencias,
organizaba registros y reducía operaciones repetidas. No bastaba con
producir un programa correcto: debía ser tan rápido que nadie quisiera
volver al ensamblador.
Entregado en 1957, superó las expectativas de muchos usuarios. El tiempo
de programación cayó y FORTRAN se difundió con los ordenadores IBM.
Por qué optimizar era condición de adopción
Un lenguaje de alto nivel separa el texto de las instrucciones del
procesador. Hoy parece normal; en 1957, confiar decisiones de
optimización a un programa era una apuesta.
FORTRAN demostró que el compilador podía realizar trabajo mecánico mejor
y con más regularidad, sobre todo en programas grandes. Cambió la
economía del software: el ordenador no solo ejecutaba el cálculo,
también ayudaba a fabricar el programa.
La productividad no eliminó la experiencia numérica. Una fórmula
inestable o un modelo incorrecto siguen siendo falsos. FORTRAN separó
expresión científica y detalles del procesador; no sustituyó el
conocimiento del dominio.
De los dialectos a la normalización
El éxito produjo versiones y extensiones. FORTRAN II añadió compilación
separada. FORTRAN IV aclaró el lenguaje, mientras fabricantes ofrecían
funciones propias.
La fragmentación amenazaba la portabilidad. En 1966 apareció una norma
estadounidense y revisiones posteriores organizaron la evolución.
FORTRAN 77 generalizó prácticas; Fortran 90 introdujo formato libre,
matrices más expresivas, módulos y programación estructurada.
La grafía oficial pasó de FORTRAN a Fortran como parte de la
modernización, sin crear otro lenguaje. Versiones posteriores añadieron
objetos, concurrencia e interoperabilidad con C.
La compatibilidad siguió siendo prioritaria. Modelos validados durante
décadas representan conocimiento caro de reconstruir. Evolucionarlos
gradualmente suele ser más seguro que reescribirlos.
Un lenguaje diseñado para matrices
El cálculo científico manipula vectores, matrices y mallas. Fortran
expresa operaciones sobre matrices completas, dando al compilador
información para vectorizar y paralelizar.
Su modelo facilita algunos análisis de alias: el compilador puede
determinar con más frecuencia si dos nombres apuntan a la misma memoria.
Así reorganiza operaciones sin cambiar resultados.
Estas propiedades mantienen a Fortran competitivo en clima, fluidos,
física y cálculo intensivo. Su longevidad no procede solo del código
antiguo, sino de una especialización mantenida.
FORTRAN, COBOL y ampliar la programación
FORTRAN y los trabajos de Grace Hopper
respondieron al mismo obstáculo: el código máquina limitaba cuántas
personas podían convertir problemas en programas.
Sus dominios diferían. FORTRAN privilegiaba fórmulas y rendimiento
numérico. FLOW-MATIC y COBOL, archivos, registros y vocabulario
empresarial. Juntos mostraron que un lenguaje podía adaptarse a una
categoría de problemas, no a una máquina.
ALGOL, Lisp, Pascal y C continuaron
separando intención y hardware con otras prioridades: algoritmos,
símbolos, enseñanza o sistemas.
Por qué Fortran sigue importando
Fortran demuestra que un lenguaje no necesita desechar su pasado para
ser moderno. Puede conservar programas probados y añadir abstracciones,
normas y herramientas para nuevas máquinas.
Su mayor aportación histórica fue hacer creíble la compilación
optimizadora. Hoy usamos lenguajes mucho más abstractos porque los
compiladores aprendieron a convertir intenciones en código eficiente.
FORTRAN ofreció una de las primeras pruebas decisivas.
Cronología
- 1953: John Backus propone un traductor de fórmulas en IBM.
- 1954: se forma el equipo FORTRAN para el IBM 704.
- 1957: se entrega el primer compilador FORTRAN.
- 1958: FORTRAN II facilita subprogramas compilados por separado.
- 1962: FORTRAN IV racionaliza el lenguaje.
- 1966: se publica la primera norma estadounidense.
- 1978: se normaliza FORTRAN 77.
- 1991: se publica Fortran 90 con la grafía moderna.
- 2003: Fortran 2003 añade mecanismos orientados a objetos.
- Hoy: Fortran sigue activo en cálculo científico e intensivo.
Preguntas frecuentes
¿Creó John Backus FORTRAN él solo?
No. Propuso y dirigió un equipo de especialistas de IBM. Lenguaje y,
sobre todo, compilador fueron obras colectivas.
¿Por qué fue excepcional el primer compilador?
Debía optimizar lo suficiente para convencer a científicos habituados a
controlar cada instrucción. Hizo creíbles los lenguajes de alto nivel
para el rendimiento.
¿FORTRAN y Fortran son el mismo lenguaje?
Sí. Fortran se convirtió en la grafía oficial moderna. Señala una
evolución importante sin romper la continuidad histórica.
¿Por qué se conserva código Fortran antiguo?
Suele contener modelos numéricos probados durante décadas. Reescribirlos
puede introducir errores científicos sutiles.
¿Fortran está limitado a ordenadores antiguos?
No. Los compiladores modernos se dirigen a procesadores y
superordenadores actuales; el lenguaje incluye módulos, matrices,
objetos y concurrencia.
¿Cuál es la diferencia principal entre FORTRAN y COBOL?
FORTRAN nació para cálculo científico; COBOL para datos comerciales.
Ambos buscaban liberar los programas del código máquina.