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.
