Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
IBM

IBM Alphaworks Jikes Parser Generator released 15

The Source of the Jikes Parser Generator has been released. It's hiding here. While Bison deals with LALR(1) grammars, it can generate parsers for LALR(k) grammars. David Shields also claims it makes providing good error support easier to program. In other programming news, Code Crusader 1.2.0 has been released as opensource. Anyone have any experience of this tool?
This discussion has been archived. No new comments can be posted.

IBM Alphaworks Jikes Parser Generator released

Comments Filter:
  • Posted by Mr. Assembly:

    I have read that Mortice Kern is the best parser around and has the best manual. I am not famaliar with using grammers and parsers. Is this true and does anybody have used Mortice Kern software they would be willing to sell??
  • Code Crusader is really quite nice, though I think the author perhaps suffers a bit from the NIH (not-invented-here) syndrome ;)

    It's a very full featured IDE that integrates well with a graphical debugger (Code Medic) by the same author. Try it out if you do C or C++ development on Linux.
  • SableCC is a very good alternative to most well-known Java Compiler-Compilers and it is LGPL'd. It uses LALR, is very easy to use and generates AST and so-called Tree-Walker-classes instead of putting action code in the grammar file. I haven't seen the Jikes thing yet, but I can highly recommend SableCC, it is superior to any compiler generator I've seen.
    You can get it at http://www.sable.mcgill.ca [mcgill.ca].
  • Code Crusader needs the JX [caltech.edu] library, which is under the syppp license [caltech.edu] which isn't Open Source (it disciminates against commercial development (note the difference with GPLed libraries: they disallow proprietary development, not commercial development)).

    Thus Code Crusader still can't go in Debian proper. (Though in Debian's classification it is now suitable for "contrib", whereas it was only suitable for "non-free").

  • Just to note that Code Crusader was always open source.
  • The source can also be found in Download Jikes Current Distribution [ibm.com].

    xlC is IBM's C compiler; you can plug in the name of your own C compiler. Note that we promise no support now other than to make sure jikespg properly processes the Java grammar, java.g, included in the Jikes compiler source, as we attach higher priority to work on the Jikes compiler.

    We put out the source mainly to meet the (understandable) objections raised about the use of machine-generated source in the Jikes compiler source.

    dave
  • I liked using Code Crusader when I was doing a lot of coding. Didn't completely replace cc-mode, but it was nice to have around.
  • Having a LALR(k) grammar means we can parse more complex grammars than yacc, which only supports LALR(1). This is a Good Thing, I suppose (but most languages can be parsed by LALR(1) easily enough).

    But, if I remember rightly, the reason why we use LALR(k) over LR(k) is that LALR grammars require less time and memory to construct parsing tables for. This was a problem back in the 1970's when yacc was originally written, but is that still the case? Secondly, are the grammars that are LR(1) a subset of those that are LALR(k)?

    Anybody out there savvy on this stuff?
  • The parser generator makefile is configured
    by default to use "XLC" as it's compiler. What
    is it?
    Jus curious

    -laxative
  • "Open Source" doesn't mean anything to me. Is it a BSD license, GPL, ?? Or some other legal mumbojumbo thing like NPL or QPL?

    PS: Will I get sued for not putting "TM" after the words Open Source?
  • I have a feeling that a disproportionate number of people will end up downloading binaries for this one, even though they want to download source, since all us poor RedHat users have ecgs, and ecgs has a bug that the ecgs people have no interest in fixing that prevents Code Crusader from being working (it compiles, then segfaults all over the place when you try to use it). Let's put the slashdot effect to use and tell the ecgs people they need to be compliant with obscure c++ features, as well as commonly used ones! The Code Crusader home page has a good description of what the problem is, and what the ecgs people seem to think about it (our thunk optimization is more important than compliance with ANSI standards). Their attitude reminds me of our favorite locutus lookalike.

Mater artium necessitas. [Necessity is the mother of invention].

Working...