Ouvrir le menu principal

MacGeneration

Recherche

Mojo 🔥, le nouveau langage de Chris Lattner, est disponible sur macOS

Nicolas Furno

vendredi 20 octobre 2023 à 15:02 • 39

Logiciels

Chris Lattner adore manifestement créer de nouveaux langages de développement. C’est lui qui a créé Swift au sein d’Apple, le développeur a quitté la Pomme et après une tentative ratée chez Tesla, il a été embauché par Google où il a adapté Swift à TensorFlow, avant de quitter l’entreprise puis… Swift lui-même. C’était en février 2022 et cette décision semblait liée autant à la culture du secret d’Apple qui colle mal avec son désir de développer en public et des décisions qui ne lui convenaient pas. Il avait peut-être déjà en tête Mojo 🔥1, son nouveau langage de développement qui est désormais disponible sur macOS.

Du code en Mojo, ici dans Visual Studio Code qui dispose d’une extension officielle pour gérer le langage et sa coloration syntaxique.

Mojo a les mêmes ambitions que Swift, à savoir être un langage de développement universel, qui peut servir autant à écrire des scripts que du code bas niveau. Son concept de base est de combiner la souplesse de Python, avec les performances de C, soit deux autres langages de développement respectivement de haut et bas niveau. Ses objectifs le rapprochent davantage de Rust ou même de C++ que de Swift toutefois, avec en plus un accès complet à Python. On peut ainsi écrire du code en Python 3 et l’utiliser avec des programmes entièrement écrits dans ce langage, mais il est aussi possible de les convertir en grande partie en Mojo.

Pourquoi faire ? Améliorer les performances est peut-être la promesse initiale la plus importante de Mojo. L’un des exemples fournis par ses concepteurs permet de mesurer le gain de performance pour un même code, exécuté en Python et en Mojo et la différence est impressionnante. Sur mon Mac Studio M1 de base, le nouveau langage est 76 892 fois plus rapide. Il faut dire que Python ne gère pas les tâches en parallèle, alors que ce nouveau-venu est entièrement optimisé pour cela et il peut ainsi exploiter tous les cœurs de mon ordinateur pour offrir ces résultats incomparables.

Mojo en action : résultats d’un benchmark en haut, un « Hello, world! » en bas.

Le choix de Python ne doit rien au hasard : ce langage de développement est couramment utilisé dans le domaine de l’intelligence artificielle, un domaine qui intéresse tout particulièrement Mojo. Même si le nouveau-venu entend répondre à tous les besoins, il met l’accent sur l’IA et sert de fondations au moteur de Modular, l’entreprise derrière cette initiative. Il s’agit avant tout d’offrir aux spécialistes du domaine une solution plus rapide pour entraîner et exploiter des modèles construits sur les apprentissages automatisés, avec des gains de performances notables face à PyTorch et TensorFlow.

Que ce soit votre domaine ou non, vous pouvez découvrir Mojo sur macOS et Linux, en suivant les instructions affichées sur le site officiel. Le langage de développement doit être rendu open-source à terme, mais ce n’est pas encore le cas et il faut ouvrir un compte en laissant une adresse mail pour récupérer le kit de développement.

Terminons en notant que Mojo n’est compatible nativement qu’avec les Mac Apple Silicon pour le moment. Il est toutefois possible de l’installer sur un Mac Intel, via Linux et un système de virtualisation comme Docker. Cette même méthode permet aussi de l’exploiter sous Windows, via le sous-système Linux.


  1. L’emoji est utilisé non seulement pour agrémenter le nom du langage, mais aussi pour les extensions des noms de fichier. On peut ainsi créer un fichier code.🔥 et Mojo l’identifiera autant qu’un fichier code.mojo. On n’arrête pas le progrès…  ↩︎

Source :

Soutenez MacGeneration sur Tipeee

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

iOS 26 : RCS, nouveau Siri, météo par satellite… le programme des prochains mois

08:03

• 7


macOS 15.7 ainsi qu'iOS 18.7 corrigent des failles de sécurité, et l'iPhone 6s a aussi droit à sa mise à jour 🆕

16/09/2025 Ă  22:31

• 29


iOS 26 : notre guide des nouveautés est en vente !

16/09/2025 Ă  22:10

• 83


ChatGPT va essayer de deviner l’âge de ses utilisateurs pour protéger les ados

16/09/2025 Ă  21:50

• 4


Revue de tests des Apple Watch SE 3, Series 11 et Ultra 3 : des fortunes très diverses

16/09/2025 Ă  19:13

• 47


Sur iOS 26, Apple Plans se rapproche un petit peu de Waze

16/09/2025 Ă  19:13

• 91


À quoi ressemble le nouvel Assistant de réparation de macOS Tahoe 26

16/09/2025 Ă  17:13

• 9


Back to School : Microsoft Office 2021 à vie pour Mac à prix cassé 📍

16/09/2025 Ă  16:01

• 0


SFR Box 10+ : la box Wi-Fi 7 de SFR est disponible pour tous

16/09/2025 Ă  15:43

• 23


macOS Tahoe : Safari disparait de la partition de restauration (ou presque)

16/09/2025 Ă  15:15

• 12


watchOS 26 apporte les notifications d’hypertension sur plusieurs Apple Watch

16/09/2025 Ă  12:27

• 60


Free Mobile inclut un VPN gratuit, qui permet par hasard de contourner le blocage anti-porno

16/09/2025 Ă  12:08

• 61


Liquid Glass sur le web : c’est possible, mais c’est compliqué

16/09/2025 Ă  12:00

• 3


Astuce : récupérer les icônes dans les boîtes grises sur macOS Tahoe

16/09/2025 Ă  09:28

• 54


L'alimentation adaptative activée par défaut sur les iPhone 17

16/09/2025 Ă  09:06

• 20


Amazon annonce le retour des « Jours Flash Prime », les 7 et 8 octobre 2025

16/09/2025 Ă  08:13

• 14