Mojo (langage de programmation)
Mojo (langage de programmation) | |
Date de première version | |
---|---|
Dernière version | 24.5.0 ()[1] |
Influencé par | Python Rust C |
Site web | www.modular.com/mojo |
Extension de fichier | mojo et 🔥 |
modifier |
Mojo est un langage de programmation sorti en 2023 et visant à combiner la facilité d'utilisation du langage Python, avec les performances des langages de programmation de bas niveau[2],[3],[4].
Conçu pour être un sur-ensemble du langage de programmation Python[5], le langage de programmation Mojo est appelé par certains « Python++ »[6],[7],[8],[9],[10].
Mojo a été rendu disponible dans les navigateurs via les notebooks Jupyter en mai 2023 [4], localement sur Linux en septembre 2023 et sur macOS le 19 octobre 2023[11]. Une extension officielle de Visual Studio Code est également disponible[12].
Conception et développement d'origine
[modifier | modifier le code]En 2022, la société Modular a été fondée par Chris Lattner, l'architecte original du langage de programmation Swift, et Tim Davis, un leader d'opinion apprentissage automatique chez Google[13].
Mojo est développé pour le framework de compilation MLIR, qui fournit un cadre de programmation unifié pour le développement de logiciels, notamment dans le domaine de l'intelligence artificielle (IA)[3],[4].
En septembre 2022, une première version de Mojo a été publiée en interne par Modular Inc.[14] avec des fonctionnalités de compilation avancées optimisées par MLIR, le framework de compilateur Multi-Level Intermediate Representation[4].
Son système de types est hybride (quelque chose entre statique et dynamique), étant donné que le développeur peut opter pour un typage statique hautes performances en choisissant le mot-clé (entre fn et def) pour définir sa fonction[15].
Le moteur d'inférence modulaire qui l'accompagne comprend un compilateur et un moteur d'exécution[16].
Avancement du langage de programmation
[modifier | modifier le code]Le langage de programmation Mojo vise à être entièrement compatible avec l'écosystème Project Jupyter. Il prévoit d'ajouter un vérificateur d'emprunt, une influence de Rust, et d'ajouter une intégration pour importer de manière transparente des modules Clang C/C++ et générer de manière transparente une interface de fonction étrangère entre C/C++ et Mojo. Il peut appeler du code Python 3.x existant en réutilisant l'environnement d'exécution CPython.
Références
[modifier | modifier le code]- « Release 24.5.0 », (consulté le )
- (en) « Mojo 🔥: Programming language for all of AI », sur modular.com (consulté le )
- (en) « Modular Docs - Why Mojo🔥 », sur docs.modular.com (consulté le )
- (en) Paul Krill, « Mojo language marries Python and MLIR for AI development », sur InfoWorld, (consulté le )
- Welcome to Mojo 🔥, Modular, (lire en ligne)
- « Mojo🔥 programming manual », docs.modular.com, Modular, (consulté le ) : « Mojo is a programming language that is as easy to use as Python but with the performance of C++ and Rust. Furthermore, Mojo provides the ability to leverage the entire Python library ecosystem. »
- (en) « Modular: Mojo🔥 - It’s finally here! », sur www.modular.com (consulté le )
- (en) Jeremy Howard, « Mojo may be the biggest programming language advance in decades », sur fast.ai, (consulté le )
- (en) « Like Python++ for AI developers - Stack Overflow », sur stackoverflow.blog, (consulté le )
- (en) « Mojo🔥SDK has been released for Linux », sur DEV Community, (consulté le )
- « https://twitter.com/Modular_AI/status/1715024755093287042 », sur X (formerly Twitter) (consulté le )
- (en-US) « Mojo 🔥 - Visual Studio Marketplace », sur marketplace.visualstudio.com (consulté le )
- Claburn, « Modular finds its Mojo, a Python superset with C-level speed », The Register, (consulté le )
- (en) « Modular Docs - Mojo🔥 changelog », sur docs.modular.com (consulté le )
- (en) « Modular Docs - Mojo🔥 programming manual », docs.modular.com (consulté le )
- (en) « Modular Docs - Modular AI Engine », sur docs.modular.com (consulté le )