Hi gang,
I am looking for opinions on which program transformation systems may be considered somewhat mature.
Note that my definition of "mature" is rather loose in this context. I consider a system to be mature if a proficient developer (late undergrad, early grad student with a background in the field) can get up and running and start doing interesting work with it within a day (or tops two).
Also, I am not dictating which particular tasks the system must be able to perform. As long as the system can be used for constructing programs which can perform one or several tasks which reasonably fall under "program transformation" [1], I'm interested in knowing about it.
Working my way though the list on program-transformation.org, and checking references (publications, manuals, available downloads) for the systems, seems to suggest that "reasonably mature" systems might include ASF+SDF, DMS, Elegant, FermaT, Stratego/XT and TXL, but I'm sure there are more.
Pointers and opinions are welcome, both on and off list.
-- Karl T
[1] It is beyond the scope of this e-mail to provide a crisp, clear-cut definition of the term program transformation. I have left out "pure" compiler construction kits and "pure" editors from my list of stable systems, and do not want to consider those, even though this decision is may appear rather arbitrary.
ANTLR is quite a mature program transformation system. Within a day or two someone could download my C parser grammar & tree grammar and start doing things like wrapping function calls and whatnot. Alone ANTLR isn't a comprehensive system to start with, but in conjunction with the open source C or Java grammars it can go pretty far pretty fast.
Monty
Karl Trygve Kalleberg wrote:
Hi gang,
I am looking for opinions on which program transformation systems may be considered somewhat mature.
Note that my definition of "mature" is rather loose in this context. I consider a system to be mature if a proficient developer (late undergrad, early grad student with a background in the field) can get up and running and start doing interesting work with it within a day (or tops two).
Also, I am not dictating which particular tasks the system must be able to perform. As long as the system can be used for constructing programs which can perform one or several tasks which reasonably fall under "program transformation" [1], I'm interested in knowing about it.
Working my way though the list on program-transformation.org, and checking references (publications, manuals, available downloads) for the systems, seems to suggest that "reasonably mature" systems might include ASF+SDF, DMS, Elegant, FermaT, Stratego/XT and TXL, but I'm sure there are more.
Pointers and opinions are welcome, both on and off list.
-- Karl T
[1] It is beyond the scope of this e-mail to provide a crisp, clear-cut definition of the term program transformation. I have left out "pure" compiler construction kits and "pure" editors from my list of stable systems, and do not want to consider those, even though this decision is may appear rather arbitrary.
sts mailing list sts@lists.urchin.earth.li http://urchin.earth.li/mailman/listinfo/sts
Dear Karl,
Working my way though the list on program-transformation.org, and checking references (publications, manuals, available downloads) for the systems, seems to suggest that "reasonably mature" systems might include ASF +SDF, DMS, Elegant, FermaT, Stratego/XT and TXL, but I'm sure there are more.
I think you can add Tom (http://tom.loria.fr) to your list. It is not as "high level" as ASF+SDF or Stratego for example. On the other side, it allows you to develop a Java application, using associative pattern matching and traversal-strategies. Using ApiGen, Tom can be used to transform trees/terms produced by SDF.
kind regards, Pierre-Etienne
You can use the JastAdd system for transformation. We have recently made the system publically available, see http://jastadd.cs.lth.se . There is a complete Java compiler you can play with.
best regards, Görel Hedin
29 nov 2005 kl. 00.23 skrev Karl Trygve Kalleberg:
Hi gang,
I am looking for opinions on which program transformation systems may be considered somewhat mature.
Note that my definition of "mature" is rather loose in this context. I consider a system to be mature if a proficient developer (late undergrad, early grad student with a background in the field) can get up and running and start doing interesting work with it within a day (or tops two).
Also, I am not dictating which particular tasks the system must be able to perform. As long as the system can be used for constructing programs which can perform one or several tasks which reasonably fall under "program transformation" [1], I'm interested in knowing about it.
Working my way though the list on program-transformation.org, and checking references (publications, manuals, available downloads) for the systems, seems to suggest that "reasonably mature" systems might include ASF+SDF, DMS, Elegant, FermaT, Stratego/XT and TXL, but I'm sure there are more.
Pointers and opinions are welcome, both on and off list.
-- Karl T
[1] It is beyond the scope of this e-mail to provide a crisp, clear- cut definition of the term program transformation. I have left out "pure" compiler construction kits and "pure" editors from my list of stable systems, and do not want to consider those, even though this decision is may appear rather arbitrary.
sts mailing list sts@lists.urchin.earth.li http://urchin.earth.li/mailman/listinfo/sts
Hello all,
This message concerns the French teams (sorry to the others to use this list).
You may know that Yves Ledru is starting to create a GDR GPL group (Génie Logiciel et Programmation). I suggested him to create a working group on program and model transformations and he told me I could start to prospect which team could be interested to form such a group.
I am sure that model-driven engineering will receive a lot of attention so I think this group should also focus on other kinds of transformational approaches (e.g. semi-automatic refinement of say B specifications, code refactoring, refinement and code generation from domain-specific languages...).
If you are interested to help create or be part of this group please let me know.
Mikal Ziane http://www-poleia.lip6.fr/~ziane/perso.html