Mojo 1.1 Programming Language Released

The release of Mojo 1.1 programming language has been introduced. The compiler code and necessary tools to build projects using Mojo language are available under the Apache 2.0 license with exceptions from the LLVM project allowing mixing with GPLv2 licensed code. Mojo 1.1 marks the beginning of accepting contributions from third-party developers to the compiler codebase.

Chris Lattner (Chris_Lattner), founder of the LLVM project and creator of Swift programming language, leads the development of Mojo language. Based on Python syntax and a type system similar to C/C++, Mojo is positioned as a versatile language enhancing Python with systems programming capabilities suitable for various tasks, from research and rapid prototyping to high-performance product development.

Mojo language’s simplicity, familiar through Python syntax, and its capability to compile into machine code, ensure ease of development and safety mechanisms for memory operation and hardware acceleration tools to streamline the final product creation process. It supports parallelization for high performance using all available hardware resources like GPUs, specialized ML accelerators, and SIMD instructions, outperforming C/C++ applications in intensive computations.

Static typing, safe low-level memory handling features, and Rust-like reference tracking and borrow checker ensure safety for low-level operations. Mojo also allows direct access to memory in unsafe mode, individual SIMD instructions, and hardware extensions like TensorCores and AMX for low-level tasks. It supports both interpretation mode via JIT and compiling into executable files (AOT), with built-in optimization and caching technologies.

The Mojolanguage compiler leverages MLIR (Multi-Level Intermediate Representation), developed by LLVM, to convert source code into low-level intermediate code. Various MLIR-supporting backends are available to generate machine code from the Mojo language. Notable changes in Mojo 1.1 include reduced compilation time by faster processing of t-strings and implicit conversions, leading to improved code performance.

/Reports, release notes, official announcements.