Sortie de la version 2.5 du langage Tom

Posté par  . Modéré par Jaimé Ragnagna.
Étiquettes :
0
13
juil.
2007
Technologie
Après neuf mois de gestation depuis la dernière version, la version 2.5 du langage Tom vient de sortir, apportant son lot d'innovations.

Tom est un langage de programmation développé au sein de l'INRIA et qui ajoute des capacités de réécriture à des langages de programmation impératifs (actuellement Java, C et OCaml). Concrètement, cela signifie que Tom permet de décrire des transformations de structures de données par un mécanisme de filtrage (pattern-matching) puissant et de spécifier comment ces transformations s'appliquent à l'aide d'un langage de stratégie.

Ce style de programmation est particulièrement adapté à la manipulation d'arbres, comme des arbres XML par exemple, mais aussi des arbres représentant des programmes (cf. la dépêche de jeudi concernant CFE). Ces arbres peuvent être des structures de données du langage hôte (on pourrait par exemple fournir une description à Tom des arbres générés par CFE), ou simplement des termes algébriques à la Caml, pour lesquels Tom fournit une implémentation efficace en Java.

Il est activement utilisé par des équipes de recherche ainsi que des industriels pour :
  • développer des compilateurs (comme le compilateur Tom lui-même) ;
  • transformer à la volée du bytecode Java ;
  • le développement d'un assistant à la démonstration ;
  • la traduction de requêtes vers des bases de connaissance.

La documentation est exhaustive et à jour. Le compilateur est stable et mature. Il est accompagné des outils indispensables à son utilisation : greffon pour Eclipse, mode pour vim et tâche ant. Le tout est publié sous licences libres (GPL, APL et BSD).

Sortie du langage de programmation Tom 2.4

Posté par  . Modéré par Mouns.
Étiquettes :
0
5
oct.
2006
Technologie
Six mois après la dernière version, la version 2.4 du langage TOM vient de sortir, apportant son lot d'innovations.

TOM est un langage de programmation développé au sein de l' INRIA et qui marie le meilleur des mondes des langages fonctionnels et impératifs en ajoutant du filtrage de motifs («pattern matching») et de la programmation par statégies à Java, C ou OCaml.

TOM permet de manipuler des arbres (termes, AST, XML, ...) grâce à un mécanisme de filtrage puissant (travaillant aussi sur des listes) sur les types Java/C. De plus, il fournit un outil permettant de générer des arbres non-mutables en Java avec partage maximal de la mémoire et invariants (listes triées, sans doublons, arbres balancés, ...).

Combiné avec un langage de stratégies réflexives, il est utilisé entre autres pour :
  • développer des compilateurs (comme le compilateur Tom) ;
  • transformer à la volée du bytecode Java ;
  • le développement d'un assistant à la démonstration ;
  • générer des sites web (transformations de XML plus puissantes que XSLT grâce aux stratégies)

Le compilateur est stable et mature, et la documentation est fournie et à jour. De plus, l'environnement de programmation est multi-plate-forme et convivial : greffon vim, tâches ant, greffon pour l'IDE Eclipe.

Le tout est publié sous des licences libres (GPL et BSD).

Sortie de TOM 2.3

Posté par  . Modéré par Mouns.
Étiquettes :
0
28
avr.
2006
Communauté
Après un an de travail, la version 2.3 du langage TOM vient de sortir. TOM est un langage de programmation développé par l'INRIA et qui marie le meilleur des mondes des langages fonctionnels et impératifs en ajoutant des capacités de réécriture à Java, C ou OCaml (autres backends à venir).

L'utilisation de TOM est pertinente dès qu'il s'agit de manipuler des données arborescentes (termes, arbres syntaxiques, arbres XML...), ce qui est très courant en programmation.

En plus de proposer un mécanisme de pattern matching puissant (associatif) sur les types Java/C, TOM est fourni avec un langage permettant de définir des types inductifs (comme en Caml) reposant sur une bibliothèque garantissant le partage maximal de la mémoire. Enfin le langage fournit un système de définition de stratégies de parcours des arbres par combinaison de stratégies de base.

Le compilateur est une application stable, bien documentée et réellement utilisable (tâche Ant, plugin Vim...). De nombreux exemples sont fournis.

Libre en fête à Nancy

Posté par  . Modéré par Jaimé Ragnagna.
Étiquettes :
0
17
mar.
2005
Lug
Dans le cadre de la manifestation nationale "Libre en fête", les élèves de l'ESIAL (Ecole Supérieure d'Informatique et Applications de Lorraine) organisent une install party et une journée de présentation des logiciels libres le vendrdi 18 à 19 h et le samedi 19 après-midi.