Open Source

Mojo 1.0 ya está aquí: el lenguaje velocidad-Python por fin tiene base estable

Modular lanzó Mojo 1.0 el 11 de agosto de 2026 — tres años después de la promesa de Chris Lattner de un superconjunto de Python. El lenguaje ahora ofrece rendimiento clase C++ con sintaxis tipo Python, closures y tipos Pointer unificados, diagnósticos de invalidación de referencias y un compilador open source comprometido para otoño 2026. Benchmarks, roadmap y las advertencias honestas (adquisición de Qualcomm, compilador cerrado, sintaxis de 'uncanny valley') antes de adoptarlo.

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
Mojo 1.0 ya está aquí: el lenguaje velocidad-Python por fin tiene base estable

Conclusiones clave

  • Mojo 1.0 llegó el 11 de agosto de 2026 — tres años después de su debut en 2023 — dando a los desarrolladores una base estable y con versionado semántico tras años de cambios rápidos y disruptivos. Durante 1.x, los cambios deberían ser principalmente aditivos, gestionados como en C++.
  • Mojo combina sintaxis tipo Python con rendimiento clase C++/Rust vía MLIR: vectores SIMD parametrizados en tiempo de compilación, sistema de tipos afín con borrow checker, sin GIL, y primitivas nativas parallelize multicore. Benchmarks en Apple Silicon: 177x en EWMA, 24.6x en pricing Monte Carlo vs Python puro.
  • El soporte GPU está integrado en el lenguaje: un paquete gpu de la stdlib compila directamente a PTX (Nvidia), HSACO (AMD) o Metal (Apple) sin toolkits CUDA externos, y TileTensor trata los layouts de memoria como propiedades de compilación. Oak Ridge (SC25) halló los kernels GPU de Mojo competitivos con CUDA/HIP en cargas limitadas por memoria.
  • Limpieza 1.0: variables unificadas en var, un único tipo Pointer, closures unificados con captura segura, sintaxis lambda estilo Python, diagnósticos de invalidación de referencias (ej. List.append), cláusulas where accionables y un servidor LSP mucho más estable para VS Code.
  • Advertencias honestas: la promesa de superconjunto de Python se pospuso indefinidamente en marzo 2026, el compilador sigue cerrado hasta el comprometido open-sourcing de otoño 2026, la interop con CPython cruza un lento límite de marshaling, y la comunidad observa con recelo la adquisición de Modular por Qualcomm en junio 2026. Stack Overflow 2025: 0.4% de uso pero 49.3% de admiración.

Respuestas clave

¿Qué es el lenguaje Mojo?

Mojo es un lenguaje de sistemas compilado creado por Chris Lattner (LLVM, Clang, Swift, MLIR) y Tim Davis en Modular Inc., lanzado en 2023. Combina sintaxis tipo Python con rendimiento clase C++/Rust, construido sobre el framework de compilación MLIR para que un solo código base apunte a CPUs, GPUs, TPUs y otros aceleradores. Originalmente planeado como superconjunto estricto de Python, esa meta se pospuso indefinidamente en marzo 2026 — Mojo 1.0 es un lenguaje de sistemas tipado estáticamente distinto que puede importar y llamar librerías Python vía el runtime CPython.

¿Qué tan rápido es Mojo comparado con Python y C++?

Mojo, C++ y Rust rinden generalmente dentro de un factor de dos entre sí en cargas compute-bound, pero Mojo lo logra desde código fuente tipo Python. Benchmarks en Apple Silicon: una recurrencia EWMA que NumPy no puede vectorizar corre en 1.7ms con vectorización de Mojo vs 292.5ms en Python puro (177x); el pricing Monte Carlo de opciones baja de 291.3ms en Python a 11.9ms con parallelize de Mojo (24.6x). Contra NumPy en dot products simples, el BLAS afinado de NumPy aún puede ganar — el valor de Mojo está en acelerar la lógica personalizada que NumPy no puede vectorizar.

¿Cuáles son las características clave de Mojo 1.0?

La release 1.0 completa una limpieza hacia la consistencia: las variables se declaran con var en todas partes, los closures se unifican con captura segura, hay un único tipo Pointer, sintaxis lambda estilo Python para closures inline, diagnósticos de invalidación de referencias (ej. detectar cuando List.append invalida una referencia), cláusulas where accionables en toda la stdlib, y un servidor LSP mucho más estable para VS Code. Las Mojo AI Skills (programación GPU, portar desde otros lenguajes) están listas para 1.0.

¿Mojo es open source?

La librería estándar de Mojo es open source (Apache 2.0 con excepciones LLVM) desde principios de 2024 — casi 200 contribuidores han aterrizado 1.100+ PRs cambiando 200.000+ líneas. El compilador y toolchain siguen cerrados bajo la Community License de Modular, pero Modular se ha comprometido a abrirlos en otoño 2026. Abrir el compilador basado en MLIR permitiría a la comunidad escribir passes de compilación personalizados y apuntar a aceleradores de nicho sin esperar a Modular.

¿Cuáles son las críticas honestas a Mojo?

Cuatro advertencias principales: (1) la promesa de superconjunto de Python se pospuso indefinidamente — el código Python existente no compila como Mojo; (2) la interop con CPython levanta un runtime CPython local con marshaling lento de datos cruzando el límite, práctica solo para bloques compute gruesos; (3) inmadurez del ecosistema — sin rutas de migración automatizadas y pocas librerías nativas para protocolos de industria; (4) dudas sobre la administración corporativa tras la adquisición de Modular por Qualcomm en junio 2026, más la reticencia de puristas open source al compilador cerrado. Stack Overflow 2025 mostró 0.4% de uso pero un fuerte 49.3% de admiración.

Mojo 1.0 ya está aquí: el lenguaje velocidad-Python por fin tiene base estable

El 11 de agosto de 2026, el lenguaje Mojo alcanzó oficialmente la versión 1.0 — tres años después de su primera release en 2023, y tras un largo viaje desde la promesa de “superconjunto de Python” hasta un lenguaje de sistemas distinto y listo para producción.

El pitch de Mojo siempre fue seductor: sintaxis tipo Python con rendimiento clase C++/Rust, construido sobre MLIR para que un código base apunte a CPUs, GPUs y aceleradores. El hito 1.0 convierte ese pitch en algo sobre lo que los desarrolladores pueden construir a largo plazo.

“Ya no es solo un lenguaje que estamos desarrollando; es un lenguaje del que dependemos cada día en producción como base de nuestra infraestructura comercial, MAX y Modular Cloud.”

Aquí está qué significa 1.0, qué cambió y las advertencias honestas antes de adoptarlo.

Qué es Mojo

Creado por Chris Lattner (el arquitecto de LLVM, Clang, Swift y MLIR) y Tim Davis en Modular Inc., Mojo combina:

  • La sintaxis accesible de Python — familiar para la comunidad desarrolladora más grande del mundo
  • Rendimiento clase C++/Rust — compilado, tipado estáticamente, sin GC
  • Fundación MLIR — el mismo framework de compilación que impulsa la infraestructura de IA moderna, apuntando a CPUs, GPUs, TPUs y ASICs desde un código base

Jeremy Howard (fast.ai) lo llamó famosamente “azúcar sintáctica para MLIR” — un elogio alto para un framework de compilación, con un toque de tradeoff: Mojo es su propio lenguaje ahora, no Python.

Reality check importante: la promesa original de un superconjunto estricto de Python fue pospuesta indefinidamente en marzo de 2026. Mojo 1.0 es un lenguaje de sistemas tipado estáticamente distinto. El código Python existente no compila como Mojo — pero Mojo puede importar y llamar librerías Python a través de un runtime CPython local.

Por qué es rápido

Mojo obtiene velocidad clase C++ desde código fuente tipo Python mediante cuatro pilares:

  1. Tipado estático con control de sistemas — las variables mapean directamente a tipos de hardware
  2. Sistema de tipos afín con borrow checker — ownership de memoria estilo Rust sin GC, con transferencia explícita vía el sigil ^
  3. Sin GIL, paralelismo nativo — el código compilado corre en múltiples núcleos con primitivas como parallelize
  4. SIMD de primera clase — vectores parametrizados en tiempo de compilación en [] que especializan funciones a instrucciones nativas

Benchmarks reales en Apple Silicon (ARM64):

CargaPythonMojoSpeedup
Recurrencia EWMA (10M ticks, no vectorizable)292.5 ms1.7 ms (vectorizado)177x
Pricing Monte Carlo (1M paths, paralelo)291.3 ms11.9 ms (parallelize)24.6x
Dot product (10M elementos)3.7 ms SIMDNumPy/BLAS gana (2.8 ms)

La fila del dot product es la advertencia honesta: contra el BLAS afinado de NumPy en operaciones vectoriales simples, NumPy aún puede ganar. El valor de Mojo está en acelerar la lógica de aplicación circundante — bucles secuenciales, recurrencias de streaming, código paralelo personalizado — donde NumPy colapsa a velocidad de intérprete.

Programación GPU sin boilerplate CUDA

El diferenciador de Mojo es el soporte de aceleradores integrado en el lenguaje:

  • Paquete gpu en la stdlib — ejecuta funciones en GPUs con sintaxis unificada
  • Compilación directa a target — compila a PTX (Nvidia), HSACO (AMD) o Metal (Apple) bajo demanda, produciendo contenedores release pequeños sin toolkits CUDA externos pesados
  • Tipo TileTensor — layouts de memoria (swizzles, strides, índices) como propiedades de compilación, cazando bugs de layout antes del runtime
  • Oak Ridge National Lab (SC25/WACCPD 2025) halló los kernels GPU de Mojo altamente competitivos con CUDA y HIP en cargas limitadas por memoria

Hay también un ángulo de reproducibilidad: el control del compilador de Mojo sobre el orden de acumulación de punto flotante permite ejecución GPU reproducible bit-exacta, algo que PyTorch no puede garantizar fácilmente por las reducciones asíncronas de CUDA.

Qué hay de nuevo en 1.0

La release 1.0 completa una ronda final de simplificación del lenguaje — convergiendo a una sola forma de expresar cada idea:

  • var en todas partes — declaración consistente de variables (el keyword let se eliminó en 2024, fn se deprecó en 2026)
  • Un único tipo Pointer unificado — operaciones de memoria de bajo nivel simplificadas
  • Closures unificados y seguros — sintaxis de captura limpia
  • Sintaxis lambda estilo Python — closures inline, igual que en Python
  • Diagnósticos de invalidación de referencias — el compilador señala problemas de seguridad de memoria como List.append invalidando una referencia a la lista
  • Cláusulas where accionables — checks de restricción con mensajes de fallo descriptivos
  • Servidor LSP estable — una experiencia VS Code mucho mejor
  • Mojo AI Skills listas para 1.0 — cubriendo creación de proyectos, programación GPU y portar desde otros lenguajes

El ecosistema, honestamente

Lo bueno: la stdlib es open source (Apache 2.0 con excepciones LLVM) desde principios de 2024. Casi 200 contribuidores han aterrizado 1.100+ PRs cambiando 200.000+ líneas, con miles más reportando issues que moldearon el lenguaje.

La reticencia: el compilador sigue cerrado bajo la Community License de Modular — un bloqueo para puristas open source, muchos de los cuales afirman que esperarán a que se abra. Ese día está comprometido: Modular abrirá el compilador y toolchain de Mojo en otoño 2026. Como el compilador está basado en MLIR, ese desbloqueo permitirá a la comunidad escribir passes de compilación personalizados y apuntar a ASICs y TPUs de nicho sin esperar a Modular.

Los números (Stack Overflow 2025): la huella de Mojo es diminuta — 0.4% de uso general, 0.3% entre profesionales. Pero los early adopters lo aman: 49.3% admiración y 1.9% deseo. Es un lenguaje que la gente mira con curiosidad y espera.

El punto a vigilar: Qualcomm adquirió Modular el 24 de junio de 2026. Los comentaristas de HN han señalado preocupaciones sobre las prioridades de un padre con fines de lucro — adquisición de talento vs. supervivencia open source a largo plazo. El open-sourcing de otoño 2026 será la primera señal real.

Hacia dónde va Mojo

El roadmap 1.x apunta a programación de sistemas de propósito general:

  • Modelo robusto de programación asíncrona (async/await)
  • Pattern matching (match statements)
  • Unions y enums con soporte de compilador/lenguaje

Y el arco más amplio: abrir progresivamente más de Mojo y componentes de MAX, con el compilador apuntado a otoño 2026. El ModCon de Modular el 18 de agosto en San Francisco compartirá el siguiente capítulo.

Conclusión

Mojo 1.0 entrega lo que prometió hace tres años: una base estable. Para desarrolladores que necesitan rendimiento clase C++ con ergonomía tipo Python — especialmente para cargas de IA, kernels GPU y el “problema de los dos lenguajes” (prototipar en Python, reescribir en C++ para producción) — Mojo es ahora una opción creíble y de grado producción.

El marco honesto: adopta sabiendo que el compilador se abre este otoño, que el ecosistema es joven (0.4% de uso) y que la propiedad de Qualcomm es una pregunta abierta. Pero el lenguaje mismo ha cruzado la línea de experimento a fundación. 1.0 es solo el principio.