Home » Archived » IMP » state of lpg
|
Re: state of lpg [message #18311 is a reply to message #18269] |
Tue, 25 March 2008 13:34 |
Robert M. Fuhrer Messages: 294 Registered: July 2009 |
Senior Member |
|
|
julien wrote:
> hi all.
>
> I ve seen that imp use LPG, but in the download page
> http://sourceforge.net/project/showfiles.php?group_id=155963
> that tye only thing who is update is LPG Java Runtime.
>
> what is the difference between lpg V1.1 and lpg java?? is it the same
> thing except you use java? and can I use lpgdocumentation-V1 with LPG
> java Runtime? (is it the same option?)
Hi there,
The feature "LPG Runtime" (whose ID is "lpg.runtime") contains the C++
executable for the parser generator itself, as well as the Java runtime
library, on which the generated parsers/lexers depend. The feature
consists of the main plugin housing the Java runtime, along with a set
of platform-specific plugin fragments containing the parser generator
itself built for various platforms (right now: Win32/x86, Linux/x86,
and MacOS/x86).
Both have been updated quite a bit, and the 2.x runtime library is not
backward-compatible with the 1.x version. I believe the 2.x generator
itself will accept older grammars that the 1.x generator would have
accepted, so if you use correspondingly older grammar/lexer template
files, you *might* get something that will work with the old runtime,
and then again, you might not. We don't recommend it.
To answer your specific questions, "lpg v1.0", "lpgdistribution v1.1"
and "LPG Java Runtime v2.0.10" are named differently, but actually
contain the same basic set of files (though for different versions,
of course). However, Philippe hasn't made a "file release" on
SourceForge for the latest version, 2.0.12. To get that, at the
moment, you have to use the Eclipse Update Manager, as the IMP
installation instructions describe.
[If for some reason that isn't appealing, let us know, and I'll prod
Philippe to do a file release.]
In any case, the documentation in the "lpgdocumentation-v1" release
should be substantially correct, even for the latest release.
Also, to be clear, although IMP does distribute a couple of LPG-
dependent components (as part of the implementation of certain DSL's
we've developed using LPG), IMP does not require that IDE's built
using IMP use an LPG-generated parser. You can use any kind of
parser you want, including a hand-written parser, if that's what
you're into. ;-)
I should also mention that recently Philippe (LPG's author) has fixed
all of the bugs that the tool "valgrind" was able to discover (e.g.
array indexing problems, double-freeing/double-deleting memory blocks,
and so on), which should hopefully remove the last source of crashes.
--
Cheers,
-- Bob
--------------------------------
Robert M. Fuhrer
Research Staff Member
Programming Technologies Dept.
IBM T.J. Watson Research Center
IMP Team Lead (http://eclipse-imp.sourceforge.net)
X10: Productivity for High-Performance Parallel Programming (http://x10.sf.net)
|
|
|
Re: state of lpg [message #570001 is a reply to message #18269] |
Tue, 25 March 2008 13:34 |
Robert M. Fuhrer Messages: 294 Registered: July 2009 |
Senior Member |
|
|
julien wrote:
> hi all.
>
> I ve seen that imp use LPG, but in the download page
> http://sourceforge.net/project/showfiles.php?group_id=155963
> that tye only thing who is update is LPG Java Runtime.
>
> what is the difference between lpg V1.1 and lpg java?? is it the same
> thing except you use java? and can I use lpgdocumentation-V1 with LPG
> java Runtime? (is it the same option?)
Hi there,
The feature "LPG Runtime" (whose ID is "lpg.runtime") contains the C++
executable for the parser generator itself, as well as the Java runtime
library, on which the generated parsers/lexers depend. The feature
consists of the main plugin housing the Java runtime, along with a set
of platform-specific plugin fragments containing the parser generator
itself built for various platforms (right now: Win32/x86, Linux/x86,
and MacOS/x86).
Both have been updated quite a bit, and the 2.x runtime library is not
backward-compatible with the 1.x version. I believe the 2.x generator
itself will accept older grammars that the 1.x generator would have
accepted, so if you use correspondingly older grammar/lexer template
files, you *might* get something that will work with the old runtime,
and then again, you might not. We don't recommend it.
To answer your specific questions, "lpg v1.0", "lpgdistribution v1.1"
and "LPG Java Runtime v2.0.10" are named differently, but actually
contain the same basic set of files (though for different versions,
of course). However, Philippe hasn't made a "file release" on
SourceForge for the latest version, 2.0.12. To get that, at the
moment, you have to use the Eclipse Update Manager, as the IMP
installation instructions describe.
[If for some reason that isn't appealing, let us know, and I'll prod
Philippe to do a file release.]
In any case, the documentation in the "lpgdocumentation-v1" release
should be substantially correct, even for the latest release.
Also, to be clear, although IMP does distribute a couple of LPG-
dependent components (as part of the implementation of certain DSL's
we've developed using LPG), IMP does not require that IDE's built
using IMP use an LPG-generated parser. You can use any kind of
parser you want, including a hand-written parser, if that's what
you're into. ;-)
I should also mention that recently Philippe (LPG's author) has fixed
all of the bugs that the tool "valgrind" was able to discover (e.g.
array indexing problems, double-freeing/double-deleting memory blocks,
and so on), which should hopefully remove the last source of crashes.
--
Cheers,
-- Bob
--------------------------------
Robert M. Fuhrer
Research Staff Member
Programming Technologies Dept.
IBM T.J. Watson Research Center
IMP Team Lead (http://eclipse-imp.sourceforge.net)
X10: Productivity for High-Performance Parallel Programming (http://x10.sf.net)
|
|
|
Goto Forum:
Current Time: Mon Sep 23 21:07:42 GMT 2024
Powered by FUDForum. Page generated in 0.04203 seconds
|