Mobl: Un DSL pour sites web mobiles

Un article intéressant sorti cette semaine sur InfoQ présente un DSL (Domain Specific Language) spécialement adapté pour le développement de sites mobiles.
Mobl est un langage compilé et typé statiquement, il est prévu pour être utilisé travers un plugin Eclipse. Le plugin propose la coloration syntaxique, l’affichage d’erreurs, la résolution de références et la complétion de code. Le compilateur mobl (intégré à l’IDE) compile les modules mobl en une combinaison de fichiers HTML, JavaScript et CSS à chaque sauvegarde.
Les application mobl ne reposent pas sur une technologie serveur particulière, elle repose uniquement sur une gestion cliente de l’application. Le langage supporte les appels de services web JSON asynchrones.
Le langage mobl propose différentes fonctionnalités permettant d’améliorer la productivité des développeurs mobiles:
- Interfaces utilisateur spécifiées de façon déclarative.
- Gestion de la persistance de données transparantes via la déclaration d’entités. Les objets sont automatiquement sauvés en base de données, et peuvent être lues sans besoin de requêtage SQL.
- Statique en principe, le typage peut être dynamiquement typé. Le typage statique permet à l’IDe la détection rapides d’erreurs, la résolution de références, et la complétion de code. Grâce à l’inférence de type, dans la plupart des cas, il n’y a pas de besoin de déclaration explicite de types. Le type Dynamic permet l’utilisation de notions d’accès à des propriétés et méthodes de façon dynamique.
- Un scripting rédigé dans un style d’appel synchrone automatiquement transformé en appels asynchrones.
Tout ça donne l’eau à la bouche, et invite à aller creuser un peu plus ce DSL. Pour cela, je vous invite à aller jeter un coup d’oeil à l’article InfoQ qui en propose une bonne présentation/introduction: http://www.infoq.com/articles/Mobl
A quand un DSL facile et rapide à utiliser pour générer un site web mobile en Java? Bien oui, il faut bien satisfaire les java dependants ;)
Mobl propose entre autre des exemples permettant de générer des sites mobiles basés sur jQueryMobile et Sensha Touch
* Le site internet du langage: http://www.mobl-lang.org/