Re: [Transformers] Transformers 0.1 is released.

Martin Bravenboer <martin@cs.uu.nl> writes:
Hey Transformers,
Transformers 0.1 is now released.
Congrats!
Do you want to announce this to stratego-announce as well? If you want to do this, then it would nice if the announcement contains some more information on the project and what's offered by the Transformers package.
I've just installed the release on the latest sources of StrategoXT. This resulted in a few minor problems at installation time. After a succesful installation, I cannot figure out how to parse C++ files. I'm using the latest StrategoXT sources. Is that a problem?
Yes, it is. There so many changes in StrategoXT, that we have to change a lot of things in transformers to follow.
--------------------------------------------------------------------- configure: help2man is required, it wasn't available by default on my SuSE 9.0 system. Maybe it is a good idea to include the man page in a distribution?
We have discussed of that, and we decided to not distribute any generated files. But, if help2man is not so popular on every distribution, it will make us change our opinion.
--------------------------------------------------------------------- configure: "stlport" wasn't available at my system as well. Might be useful to mention this requirement explicitly.
Sorry, i forgot. It was added in the requirement of cxx-grammar, but not in the bundle.
--------------------------------------------------------------------- make: No pp entry found for: (1,["\"sdf-2.1\""]). This is our fault and probably does not occur in 0.9.5. Meanwhile, the pretty-printer has been improved considerably and has been upgraded to SDF as it appears in pgen 2.0. I've just fixed the latest pp-sdf to handle the old SDF constructs as well. The new ones are preferred. I don't think this results in problems.
I think we should add the transformers packages to our buildfarm. We are immediately warned if we break some of your tools then :) . We could also dailybuild tarballs and RPMs of Transformers.
We used to developped using the svn version of StrategoXT. But for this release we used StrategoXT 0.9.5.
--------------------------------------------------------------------- - make check after succesful installation:
Is this ok? ... XFAIL: warn/implicit-typename3 FAIL: warn/incomplete1 FAIL: warn/inline1 PASS: warn/noreturn-1 FAIL: warn/oldcast1 PASS: warn/pedantic1 FAIL: warn/return-reference PASS: warn/weak1 =========================================== 281 of 654 tests failed Please report to transformers@lrde.epita.fr =========================================== make[3]: *** [check-TESTS] Error 1 make[3]: Leaving directory `/home/martin/wc/transformers-0.1/cxx-grammar/test/gcc'
Argh. It does not work at all.
--------------------------------------------------------------------- A test by hand: ------------------------------------------ int main() { } ------------------------------------------ ./parse-cxx -i donothing.cpp ------------------------------------------ sglr: error in /tmp/TransformerOwrMHo, line 1, col 7: character `i' (\x69) unexpected ------------------------------------------
Normally, it must work. The generated parse table must be wrong. What "pp-aterm -i /pkg/transformers/2004-04-20-16-38/share/cxx-grammar/Cxx.tbl" says? It is very strange that sglr stop at the 7th charater, which is not so special.
A more complex one: ------------------------------------------ #include <iostream>
int main() { std::cout << "Hello world!\n"; }
This one is not supposed to work because we have still some troubles with iostream, it is the aim of the next release.
------------------------------------------ ./parse-cxx -i hello.cpp -of ast --verbose 10 ------------------------------------------ run sglr: FILE("/tmp/StrategoXTz3XkqY") xtc-find: Cxx.tbl xtc-load: Cxx.tbl xtc-loaded: Cxx.tbl xtc-find: /pkg/transformers/2004-04-20-16-38/share/cxx-grammar/Cxx.tbl xtc-find: sglr xtc-load: sglr xtc-loaded: sglr xtc-find: /home/martin/.nix-profile/bin/sglr sglr: opening parse table /pkg/transformers/2004-04-20-16-38/share/cxx-grammar/Cxx.tbl sglr: parsing file /tmp/StrategoXTz3XkqY (208 tokens) sglr: shifting [= ] / 7/208 ( 3%). sglr: writing error output to /tmp/StrategoXTvuPF5I sglr: error in /tmp/StrategoXTz3XkqY, line 1, col 13: character `d' (\x64) unexpected run sglr: FILE("/tmp/StrategoXTVcIeYt") ------------------------------------------ Line 1 is: namespace std { } ------------------------------------------
I suppose I'm doing something wrong, but I'm not sure about the direction
I think it is because you used the svn version of StrategoXT, well, i hope. -- Valentin David valentin@lrde.epita.fr

Hey Valentin,
Yes, it is. There so many changes in StrategoXT, that we have to change a lot of things in transformers to follow.
So we really should add the Transformers packages to our buildfarm. Then we can fix our stuff immediately if we break your tools.
Argh. It does not work at all. Normally, it must work.
That was really my fault. I just broke pp-sdf and this wasn't noticed because we usually don't have this kind of regular expressions in production rules. I've applied the necessary fixes to the latest sources of StrategoXT and 0.1 now runs fine :) . The check is ok and examples that don't use iostream can be parsed with parse-cxx. Looks promising! Cheers, -- Martin Bravenboer --------------------------------------------------------------------- Center for Software Technology Institute of Information and Computing Sciences Utrecht University

"De" == De Nazareth, Jesus <valentin@lrde.epita.fr> writes:
We have discussed of that, and we decided to not distribute any generated files. But, if help2man is not so popular on every distribution, it will make us change our opinion.
Better yet: we might just ship it.
participants (3)
-
Akim Demaille
-
Martin Bravenboer
-
valentin@lrde.epita.fr