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 : Michael Tsai

illustration magazine 25 ans

MacGeneration a 25 ans !

Participez à la fête et découvrez l’histoire de votre site favori en précommandant notre magazine exclusif.

Je précommande le magazine

Black Friday : les AirPods Pro 2 maintenant à 199 €, un prix jamais vu 🆕

12:56


Incogni : - 58 % sur l'abonnement avec ce code promo Black Friday, foncez ! 📍

10:05


La maison au soleil : test du système SOLIX d’Anker, le solaire avec batterie

10:04


Black Friday : les AirPods Pro 2 à 210 € sur Amazon.fr, un prix jamais vu 🆕

10:04


Apple et la mémoire flash, une longue histoire d'amour

23/11/2024 Ă  11:00

• 22


Sortie de veille : télé Apple et iPhone 17 ultra-fin, des rumeurs folles ou crédibles ?

23/11/2024 Ă  08:00

• 0


Les meilleures promos du Black Friday : AirPods Pro 2, iPad 10, serrure connectée…

23/11/2024 Ă  07:30

• 15


Intrusion informatique, quand une entreprise joue le jeu de la communication ouverte

22/11/2024 Ă  20:45

• 17


Le SSD de certains MacBook Pro M4 Max atteint presque 11 Go/s

22/11/2024 Ă  20:30

• 17


Test du système mesh Wi-Fi 7 Netgear Orbi 970 : une poignée de mégabits, pour quelques centaines d’euros de plus

22/11/2024 Ă  17:00

• 12


Décodeur Orange : mise en veille automatique du boitier par le téléviseur

22/11/2024 Ă  16:30

• 37


macOS 15.2 : Safari dédouble ses fonctions d'import de données

22/11/2024 Ă  15:02

• 5


Buy Now : un documentaire sur la surconsommation avec le CEO d’iFixit et un ancien d’Apple

22/11/2024 Ă  12:15

• 74


Protégez votre Mac pour seulement 2,03 €/mois avec CyberGhost VPN : l'offre Black Friday à ne pas manquer ! 📍

22/11/2024 Ă  11:49


OpenAI envisagerait de lancer un navigateur web

22/11/2024 Ă  11:15

• 25


Black Friday : le Creative Cloud ainsi que les apps Affinity et DxO jusqu’à - 55 %

22/11/2024 Ă  10:10

• 16