Comme l’a fait Microsoft avec TypeScript, les développeurs de Mint ont aussi identifié le typage très faible de JavaScript comme étant l’une des principales lacunes du langage. Selon ces derniers, cela rend l’écriture de code source dans JavaScript sujette à de multiples erreurs, ce qui conduit à une mauvaise expérience de développement. De même, une autre de ses insuffisances est qu’il ne dispose pas d’outils nécessaires pour la création d’applications Web prêtes à l’emploi. Il faut donc ajouter des frameworks, des compilateurs et des outils qui augmentent la complexité.
Dans le cas du langage Elm, les créateurs de Mint estiment qu’il a une bonne cote auprès des développeurs, mais qu’il s'agit d'un langage purement fonctionnel. Ainsi donc, le code n'est pas très clair et il est plus difficile à apprendre. « De même, il n'est pas possible de contribuer ou d'influencer le langage de manière significative », expliquent-ils. Ce sont les principales raisons qui les ont conduits vers la création du langage. Mint combine l'expérience des développeurs d'Elm et l'expressivité de React pour créer le langage parfait pour la création d'applications monopage.
Mint disposerait de tous les outils dont vous pourrez avoir besoin pour créer des applications sans erreur, facilement lisibles et maintenables en un temps record. Par exemple, dans Mint, le stylisme est plus simple. Vous pouvez styliser les éléments directement avec le CSS en utilisant des blocs de style. À l'intérieur d'un bloc de style, vous pouvez emboîter autant de sous-sélecteurs et de requêtes de médias que vous le souhaitez. Vous pouvez même utiliser des expressions "if" et "case" à l'intérieur de n'importe quel bloc pour appliquer des styles de manière conditionnelle.
Les données sont gérées par un magasin de données. Ces magasins sont accessibles de partout dans le monde et peuvent être connectés à des composants. Lorsque les données d'un magasin changent, les composants connectés sont restitués. Avec Mint, le routage est un élément linguistique plutôt qu'une bibliothèque. Les routes peuvent être définies dans un bloc de routes, avec prise en charge des paramètres de chemin d'accès typés. Le runtime gère les clics sur les balises d'ancrage et navigue de manière intelligente pour que vous n'ayez pas à le faire.
Par ailleurs, vous pouvez facilement insérer n'importe quel code JavaScript en utilisant des backticks (`...`). Mint permet une interopérabilité avec JavaScript. L'interpolation du code source Mint dans le JavaScript intégré peut être effectuée avec la syntaxe d'interpolation : #{...}. Selon les créateurs de Mint, le développement du langage a déjà duré un an. Voici les caractéristiques de Mint les plus mises en avant :
- un excellent système de typage ;
- de beaux messages d'erreur ;
- un formateur de code ;
- des outils de construction ;
- des magasins de stockage de données ;
- un système de style intégré ;
- un système de routage intégré ;
- une grande interopérabilité avec JavaScript ;
- des structures de données immuables ;
- etc.
Source : Mint
Et vous ?
Que pensez-vous de Mint ?
L'avez-vous déjà testé ? Quelles sont les insuffisances constatées ?
Mint pourra-t-il s'imposer face à JavaScript ?
Voir aussi
Le langage JavaScript est-il responsable de la lenteur des sites Web de nos jours ? Oui, selon un expert
Samsung propose son framework open source IoT.js pour « fournir une plateforme interopérable de service dans le monde de l'IdO »
Le langage Scala s'ouvre au Web. Scala.js permet de compiler du code Scala en JavaScript
Mozilla, Fastly, Intel et Red Hat lancent l'Alliance Bytecode, une initiative construite autour de WebAssembly qui propose d'apporter plus de sécurité, d'ubiquité et d'interopérabilité sur le Web