Qué es Fortran ?
Fortran es un lenguaje de programación informática muy utilizado por los científicos. Su popularidad ha disminuido con los años, pero los siguen utilizando mucho los programadores científicos. También lo utilizan las empresas para aplicaciones como la predicción meteorológica, el trading financiero y las simulaciones de ingeniería.
Los programas escritos en Fortran se pueden optimizar para ejecutarse en ordenadores de alto rendimiento (HPC). Se utiliza para comparar programas y clasificar a los superordenadores más potentes del mundo. Por lo general, este lenguaje es ideal para crear código en el que el rendimiento es importante.
Existen pocos lenguajes que rivalicen en rendimiento con Fortran, entre ellos C++. Además, ofrece características que los desarrolladores prefieren respecto a C++, como no tener que preocuparse por la asignación de memoria o la optimización.
Es un lenguaje compilado «ahead-of-time«, lo que significa que debe realizarse un paso especial de compilación en el código escrito antes de que pueda ejecutarse en un ordenador. Esto supone una gran diferencia con respecto a lenguajes interpretados como Python y R, que se ejecutan a través de un intérprete que ejecuta las instrucciones directamente. La desventaja es que el intérprete reduce la velocidad de cálculo.
La historia de Fortran
Creado por Konrad Zuse, Plankalkul fue el primer lenguaje de programación de alto nivel. Sin embargo, las ideas y proyectos del inventor únicamente estaban escritos en papel. El primer lenguaje de programación real fue Fortran, creado por John Backus.
Licenciado en Matemáticas por la Universidad de Columbia, inventó este lenguaje en los años 50 mientras trabajaba como programador en IBM. El objetivo era dar soporte al Selective Sequence Electronic Calculator: un ordenador electromecánico con 23 000 relés y 13 000 tubos de vacío fabricado en enero de 1948. Fue con este ordenador con el que Wallace J. Eckert, director del Watson Scientific Computing Laboratory de IBM, realizó los cálculos SSEC que se utilizarían 20 años después en el programa espacial Apolo.
Sin embargo, una vez inventado el SSEC, nadie encontraba un método adecuado para programarlo. Durante tres años, John Backus trabajó intentando programar la máquina.
A finales de 1953, presentó a sus superiores un concepto de lenguaje de programación para el ordenador mainframe IBM 701. La idea fue aprobada por IBM, y John Backus pasó a ser responsable de un pequeño equipo en 1954 en el IBM Watson Scientific Laboratory.
A medida que avanzaba su trabajo, Backus decidió diseñar un lenguaje de programación más rápido y sencillo para los programadores. En 1957, tras tres años de trabajo, se lanzó la primera versión de Fortran. Contenía 25 000 líneas de código en un casete magnético que se incluía con cada instalación IBM 704. Este lenguaje fue adoptado masivamente por científicos y matemáticos para escribir programas con gran intensidad numérica.
En 1958 se publicó la segunda versión de Fortran, que añadía tipos de datos numéricos complejos. Esto hizo que el lenguaje fuera adecuado para aplicaciones técnicas como la ingeniería eléctrica. La principal mejora consistió en permitir funciones escritas por el usuario para mejorar la programación procedimental.
Menos de un año después, IBM lanzó Fortran III con nuevas funcionalidades. Sin embargo, esta versión nunca se presentó al público como producto. En 1960, ya existían varias versiones de Fortran para los ordenadores IBM. La popularidad del lenguaje siguió creciendo y los fabricantes rivales empezaron a ofrecer compiladores para sus propias máquinas. En 1963, había más de 40 compiladores disponibles.
En 1961, IBM comenzó a trabajar en Fortran IV en respuesta a la demanda del público. Esta versión eliminaba las características dependientes de la máquina de Fortran II y añadía nuevas funciones, como el tipo de datos lógico. En 1965, Fortran IV tuvo que ajustarse a las normas de la American Standards Association. Ya se había convertido en un lenguaje muy utilizado en educación.
A pesar de la buena acogida de esta estandarización por parte de la comunidad, siguieron apareciendo diversas variantes. Se hicieron varias revisiones, incluidas nuevas versiones como Fortran 77.
Aún hoy sigue siendo ampliamente utilizado por muchas comunidades científicas. Sin embargo, a menudo se considera un lenguaje obsoleto y antiguo.
El estándar Fortran más reciente data de 2018, y ha aportado nuevas características conservando el alto rendimiento del lenguaje y su capacidad para hacer frente a los retos modernos de la computación científica.
El lenguaje ha evolucionado con el tiempo. Si antes era un lenguaje de programación puramente procedimental, ahora admite características orientadas a objetos, como la extensión de tipos y el polimorfismo.
Las versiones más recientes han introducido nuevos conceptos, como las sentencias «block if» y «end if», destinados a mejorar la programación estructurada. Muchas de estas características se encuentran en lenguajes de programación modernos como C++, Java o Python.
En los últimos 40 años, Fortran ha inspirado varios lenguajes de programación, como C y Basic. Este lenguaje también ha influido en la evolución de las técnicas de compilación.
¿Para qué se utiliza Fortran?
Fortran sigue utilizándose hoy en día en campos de investigación que requieren el uso de la informática científica. Entre los programas en Fortran más famosos se encuentran NEMO (Nucleus for European Modelling of the Ocean), el código OFF de dinámica de fluidos, y los modelos del Goddard Institute for Space Studies.
Además, este lenguaje sigue siendo popular para una gran variedad de programas de modelización climática. Esto se debe a que las fórmulas matemáticas se convierten en código con facilidad. El rendimiento es alto y la mayor parte de la comunidad de modelización climática entiende la sintaxis.
El TIOBE Index, que mide la popularidad de cientos de lenguajes de programación, situó a Fortran en el vigésimo lugar entre los lenguajes más populares en abril de 2021. Aunque ha sido eclipsado por otros lenguajes en las últimas décadas, sigue firmemente arraigado en el campo de la High-Performance Computing.
Los mejores lenguajes de Data Science
Para la Data Science, no todos los lenguajes de programación son iguales. C y C++ se utilizan habitualmente para el análisis de datos de alto rendimiento, pero lenguajes como Python pueden ayudar a aumentar la productividad. Existen marcos de trabajo y lenguajes específicos para el procesamiento de Big Data, al igual que existen lenguajes para la investigación científica. Sin embargo, en ese campo en concreto, Fortran ha sido superado por varios lenguajes.
El lenguaje C
C es un lenguaje generalista que puede utilizarse para una amplia gama de aplicaciones. Para la Data Science, tiene dos ventajas. En primer lugar, es un lenguaje popular con una gran base de usuarios, y también es uno de los más potentes.
Además, C admite fuentes y bibliotecas digitales, lo que aumenta su rendimiento para tareas de Data Science. Sin embargo, Python es claramente superior en este ámbito.
Existen varios lenguajes de programación acompañados de un amplio ecosistema de bibliotecas y herramientas diseñadas para el desarrollo de aplicaciones de Data Science. Los principales son Python, R, Julia y Fortran.
Python
Python es el lenguaje de programación más popular en Data Science. Es un lenguaje originalmente diseñado para aprender a programar, pero su sencillez lo ha convertido en uno de los más utilizados para el desarrollo. Es el lenguaje con mayor número de bibliotecas para Data Science.
Entre las más utilizadas se encuentran el toolkit SciPy para la optimización, la integración, la interpolación y el álgebra lineal, NumPy para las matrices y arrays multidimensionales, scikit-learn para algoritmos de Machine Learning, y el módulo Natural Language Toolkit.
El lenguaje R
R es tanto un lenguaje de programación como un entorno de texto y gráficos para el cálculo estadístico. Apareció por primera vez a principios de la década de 1990, pero rápidamente ganó en funcionalidad y popularidad. Los programas se pueden definir y probar de forma progresiva, utilizando este lenguaje por lotes para ejecutar programas de forma interactiva.
Al igual que Python, R reúne diferentes bibliotecas de Data Science. Hay más de 11 000 paquetes disponibles a través de la Comprehensive R Archive Network. La mayoría están desarrollados en R, pero también pueden desarrollarse en C, Java y Fortran. También existen entornos especializados basados en R, como Bioconductor, centrado en el análisis de datos genómicos.
El lenguaje Julia
Creado en 2009, Julia es el lenguaje de programación de Data Science más reciente. Se centra en el alto rendimiento y admite programación procedimental, orientada a objetos y funcional. Es un lenguaje dinámico para cálculo distribuido o paralelo.
Actualmente hay más de 1700 paquetes disponibles en el gestor de paquetes de Julia. Están escritos en Julia, C y Fortran y cubren todas las áreas de la Data Science. El lenguaje también puede utilizarse para llamar a funciones de Python a través del paquete PyCall, o para llamar directamente a funciones de C.
¿Cómo aprender a programar con Fortan?
La programación informática se utiliza ampliamente en una gran variedad de campos científicos. Sin embargo, Fortran no es el mejor lenguaje para la Data Science. El lenguaje Python es más adecuado y más potente.
Para aprender a dominar la programación en Python, puedes apostar por DataScientest. Nuestros diferentes cursos de Data Analyst, Data Scientist, Data Engineer y Data Management incluyen un módulo dedicado a la programación. Los programas de Data Analyst, Data Scientist y Data Manager cubren los fundamentos de Python y las bibliotecas Numpy y Pandas. El programa de Data Engineer cubre Bash, Linux, Python y Python orientado a objetos.
Los demás módulos de estos cursos tratan sobre DataViz, bases de datos, CI/CD, Machine Learning y Business Intelligence. Al término de estos cursos, tendrás todas las habilidades que necesitas para trabajar en las profesiones de Data Science.
Al final del curso, nuestros estudiantes reciben un certificado emitido La Sorbonne en el marco de nuestra colaboración. Nuestros cursos están reconocidos por el sector y el 80 % de nuestros antiguos alumnos ha encontrado un empleo de inmediato.
Todos nuestros programas adoptan un enfoque Blended Learning, combinando el aprendizaje en línea en una plataforma tutorizada y Masterclasses. En función de tu situación y tus preferencias, puedes elegir entre la Formación Continua y una modalidad intensiva de BootCamp.
En cuanto a la financiación, todos nuestros cursos son bonificables con FUNDAE.
Ahora ya lo sabes todo sobre Fortran. Para más información, consulta nuestro dosier sobre el lenguaje Python.