Hi,
Just to clarify the situation. We have two parsers that are mature enough for large cases
studies. They are both closed source:
- VerveineJ: is closed source and it is likely to gain a license that will allow
"friends" to use it for free, or something in this direction. At the moment, the
sources and the build are available for anyone (although the license is not yet
specified). It is mainly built by Nicolas Anquetil (and I helped a bit).
- inFamix: is free to use in any context, but you have to agree with their license usage
(so, no real automated download). It is a subset from the inFusion commercial platform. It
also supports C/C++. It is built by
www.intooitus.com and I helped them a bit, too.
For what they cover, neither is quite complete in the little details, but they are almost
there. VerveineJ is slightly better in the coverage of Annotations and a couple of more
details (like References). They both export about the same metrics.
I would be interested in working with someone to build a little comparison infrastructure:
we take some source code, and we generate a simple diff report on the build server.
It would be important for this community to get a robust solution for Java. I worked quite
long on getting both of these mature enough and in evolving FAMIX to support the new
language constructs in Java (e.g., Generics and Annotations), and I would still be
interested in continuing this enhancement. inFamix also offers C/C++ support, and there
one of the major headaches was given by the type alias possibilities, but that is solved
now both in FAMIX and in the parser.
From my experience, the most tedious work in this area
is to go through each case study and deal with all the little details not just at the
parser level, but also at the meta-model level. We are getting close to a solid solution
for Java, but we need to push for the extra mile.
Talking about the meta-model we need to rethink completely the navigation API and be based
solely on MooseChef (and possibly Lift). I would be interested in getting people to work
with me on this, as well.
Cheers,
Doru
--
www.tudorgirba.com
"Reasonable is what we are accustomed with."