v0.2.1 (2023-09-07)
The first versioned release of Mojo! 🔥
All earlier releases were considered version 0.1.
🔥 Legendary
-
First release of the Mojo SDK!
You can now develop with Mojo locally. The Mojo SDK is currently available for Ubuntu Linux systems, and support for Windows and macOS is coming soon. You can still develop from a Windows or Mac computer using a container or remote Linux system.
The Mojo SDK includes the Mojo standard library and the Mojo command-line interface (CLI), which allows you to run, compile, and package Mojo code. It also provides a REPL programming environment.
-
First release of the Mojo extension for VS Code.
This provides essential Mojo language features in Visual Studio Code, such as code completion, code quick fixes, docs tooltips, and more. Even when developing on a remote system, using VS Code with this extension provides a native-like IDE experience.
⭐️ New
-
A new
clobber_memoryfunction has been added to thebenchmarkmodule. The clobber memory function tells the system to flush all memory operations at the specified program point. This allows you to benchmark operations without the compiler reordering memory operations. -
A new
keepfunction has been added to thebenchmarkmodule. Thekeepfunction tries to tell the compiler not to optimize the variable away if not used. This allows you to avoid compiler's dead code elimination mechanism, with a low footprint side effect. -
New
shift_rightandshift_leftfunctions have been added to thesimdmodule. They shift the elements in a SIMD vector right/left, filling elements with zeros as needed. -
A new
cumsumfunction has been added to thereductionmodule that computes the cumulative sum (also known as scan) of input elements. -
Mojo Jupyter kernel now supports code completion.
🦋 Changed
- Extends
rotate_bits_left,rotate_left,rotate_bits_right, androtate_rightto operate on Int values. The ordering of parameters has also been changed to enable type inference. Now it's possible to writerotate_right[shift_val](simd_val)and have thedtypeandsimd_widthinferred from the argument. This addresses Issue #528.
🛠️ Fixed
-
Fixed a bug causing the parser to crash when the
withstatement was written without a colon. This addresses Issue #529. -
Incorrect imports no longer crash when there are other errors at the top level of a module. This fixes Issue #531.