Mojo (lenguaje de programación)
Mojo es un lenguaje de programación desarrollado por Modular Inc.[1][2][3] Se hizo accesible a través del navegador en mayo de 2023[1][4] y localmente en Linux en septiembre de 2023. El lenguaje es capaz de ejecutar algunos programas en Python.[5] Los desarrolladores tienen varios objetivos para mejorar Mojo.[1][4] Origen, diseño y desarrolloEn el año 2022, Chris Lattner, el arquitecto original del lenguaje de programación Swift, y Tim Davis, un reconocido ingeniero en Machine Learning en Google, fundan la compañía Modular Inc.[6] En septiembre de 2022, se lanzó internamente una versión inicial de Mojo por parte de Modular Inc.[7], con características avanzadas de compilación impulsadas por MLIR (Multi-Level Intermediate Representation).[8][1][9] Su sistema de tipos es híbrido (algo entre estático y dinámico), ya que el desarrollador puede optar por la escritura de tipos estáticos de alto rendimiento al elegir la palabra clave fn o def para definir su función. El Motor de Inferencia Modular compañero incluye un compilador y un tiempo de ejecución.[10] Comparación con PythonEl lenguaje de programación Mojo tiene como objetivo ser completamente compatible con el ecosistema del Proyecto Jupyter. Aún no es completamente compatible a nivel de código fuente con Python 3.x, proporcionando solo un subconjunto de su sintaxis, como la falta de argumentos en las funciones, la palabra clave global, comprensiones de listas y diccionarios, y soporte para clases. Además, Mojo también agrega características que permiten la programación de bajo nivel con alto rendimiento: fn para crear funciones con tipos y struct para alternativas optimizadas en memoria a las clases. Un struct en Mojo es similar a una clase en Python: ambos admiten métodos, campos, sobrecarga de operadores y decoradores para la meta-programación. Mojo puede llamar a código existente de Python 3.x reutilizando el tiempo de ejecución de CPython. Modular planea agregar integración para importar de manera transparente módulos C/C++ de Clang y generar una interfaz de función externa entre C/C++ y Mojo. Mojo tiene un borrow checker, una influencia de Rust, y en ese sentido es diferente de Python. EjemploPrograma Hola mundo: print('Hola mundo!')
Véase tambiénReferencias
|