Modverse Weekly - Issue 14

December 19, 2023

Jack Clayton

AI Developer Advocate

Introduction

We released some fixes and improvements before the holiday season with modular 0.3.1 and mojo 0.6.1. The download size and speed when installing Mojo is far improved. Mojo has been updated to make the @value decorator more valuable, it will now conform to the Movable and Copyable traits, so that you don't need to implement those yourself to allow your type to be used with a DynamicVector.

The stdlib team has started building towards making the language more familiar to Python devs. To align with Python, utils.vector has moved to collections.vector, ready for other data collection types. A Hashable trait has also been added, along with toupper() and tolower() methods on String which matches Python's API.

The Mojo team is considering implicit conformance for traits. For example, you'll be able to just implement __str__() on a struct to make it printable, as Python devs expect. We believe we have a path forward for this, while retaining good error messages when a type doesn't conform, and fitting into other design goals of the language. It will be a novel approach, avoiding complexity traps that other languages have fallen into. We'll reveal more as we make progress, stay tuned for updates.

Modular will be away on break next week, happy holidays!

Official Content 🔥

Press 📰

Community 📡