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 :

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Un site web pour décoder les pages sauvées en .webarchive par Safari

11:00

‱ 1


Ulanzi présente une station d'accueil au look de petit Mac Pro

10:15

‱ 7


Promo : une batterie chameau de 27650 mAh capable de recharger Mac et iPhone à 114 € (-56 €)

09:18

‱ 9


DĂ©veloppeurs : Technotes ajoute des notes de la communautĂ© sur la documentation d’Apple

08:33

‱ 2


L’iPhone redĂ©colle en Chine, le Mac cartonne aux États-Unis : Apple souffle un peu avant les trimestriels le 31

07:52

‱ 28


Apple a creusĂ© l’idĂ©e de proposer des services de cloud computing aux dĂ©veloppeurs pour concurrencer AWS

03/07/2025 Ă  21:45

‱ 33


Apple sort des fonds d’écran aux couleurs de son nouvel Apple Store Ă  Osaka

03/07/2025 Ă  21:00

‱ 8


Test du ViewSonic ColorPro VP2788-5K : 27″, 5K et DCI-P3 pour le prix d’un demi-Studio Display

03/07/2025 Ă  20:30

‱ 8


Guerre commerciale : les produits fabriqués au Vietnam voient leur taxe multipliée par cinq

03/07/2025 Ă  20:20

‱ 20


Microsoft Office 2021 pour Mac Ă  49,99 € : une aubaine Ă  ne pas rater pendant les soldes d’étĂ© 📍

03/07/2025 Ă  20:07

‱ 0


L’iPhone 17 Pro Max pourrait avoir une grosse batterie de 5 000 mAh

03/07/2025 Ă  19:50

‱ 40


Une extension Chrome et Firefox désactive le doublage par IA de YouTube

03/07/2025 Ă  17:14

‱ 22


Le gĂ©nĂ©rateur de vidĂ©os Veo 3 est dĂ©sormais disponible en France dans l’application Gemini

03/07/2025 Ă  16:00

‱ 1


Starlink pourrait amener un Wi-Fi plus rapide et plus fiable dans les TGV

03/07/2025 Ă  15:39

‱ 50


Les identifiants d’une quinzaine de futurs Mac en fuite

03/07/2025 Ă  15:15

‱ 24


L'utilitaire pour faire tourner des LLM en local Ollama devient une application native

03/07/2025 Ă  14:27

‱ 29