Compilier Construction Tools?

shindle@toocool.com
26 Jul 1998 00:33:49 -0400

          From comp.compilers

Related articles
Compilier Construction Tools? shindle@toocool.com (1998-07-26)
Re: Compilier Construction Tools - ANTLR info thetick@magelang.com (Scott Stanchfield) (1998-07-26)
Re: Compilier Construction Tools? dwight@pentasoft.com (1998-07-27)
Re: Compilier Construction Tools? wclodius@aol.com (1998-07-27)
Re: Compilier Construction Tools? vmakarov@cygnus.com (Vladimir Makarov) (1998-07-27)
Re: Compiler Construction Tools? (ANTLR) jamz@my-dejanews.com (1998-07-27)
Re: Compiler Construction Tools? dimock@mass.eas.harvard.edu (Allyn Dimock) (1998-07-28)
[4 later articles]
| List of all articles for this month |
From: shindle@toocool.com
Newsgroups: comp.compilers
Date: 26 Jul 1998 00:33:49 -0400
Organization: Deja News - The Leader in Internet Discussion
Keywords: tools, question

Hello All,


    Please bear with me if I get all my terminology wrong, as I'm fairly
new to all this :-). I was wondering if someone could help me with an
overview of some of the various tools available ?? I've been doing a
lot of surfing, and have found quite a few tools, but I haven't seen a
comparision of the various tools. I would appreciate if someone could
help point me at few tools to really dig into, as there are just too
many to try and learn them all :-)


    I work for a company that makes re-engineering tools for computer
software (mostly old Cobol programs). If I have my terminology
correct, our work mainly revolves around parsing, creating AST's,
storing AST's for future use, light tree walking and Un-parsing. We
don't currently do any native code generation or optimizations.
Currently, we use flex/bison for our parsers, and, for some un-known
reason, they have not built standard libraries for name resolution
etc.


    Most of the new hires like myself, are un-familiar with yacc but are
experienced production coders. I think we would all find top-down LL
parsers (especially with backtracking, or follow rules) more intuitive
then LR bottom up parsers, and it would also be nice to be able to
generate a grammar, say SQL and call it/include it/utilize it from
within another grammar (like COBOL) without having to jump thru hoops,
modify the calling (COBOL) grammar etc. This way, we could build
systems by picking say a JCL, a processing language, and a database
language - without having to modify all the lexers/parsers. We would
also greatly benefit from having a standard toolkit available for name
resolution, tree walking, etc. Currently, our source is C/C++ with
some TCL thrown in for good measure :-) With these goals in mind, I
have been looking for a good tool set capable of handling large,
production grammars. So far I have found the following and would
appreciate it if someone could point out the strengths/weaknesses of
each and how they relate ??


    PCCTS:
          tried, true, supported, and apparently fairly popular. Unfortunately,
          our parser guy thinks the C support of the new java based ANTLR needs
          some more testing before we should try it.


    Eli:
          This looks REAL nice with some builtin symbol management, and large
          library of builtin functions. Appearently, spec files can be used
          to combine multiple lexer/parsers combinations into 1 executable
          (so we could combine Cobol, SQL, etc). On the downside, it uses
          LALR(1?) parsers. I have just got it built on my Linux box and am
          trying to learn it, but its HUGE :-). Is it likely to meet our
          needs ??


    GRDP/RDP:
          GRDP isn't finished yet..but it promises to be compatible with RDP
          grammars. The parser generator sounds like it would be good for us
          novices, but what other tools does it provide ??


    TXL:
          I played with ver. 7.4 a little, maybe a year or two ago. At the
          time, there was no way to store the AST's - has this changed in v8 ?
          The source to source nature of it seemed like it might be useful in
          our work, but we also need to track var. usage for metrics, etc.
          Can it be used for this ??


    Cocktail:
          Another one I ran into a couple of years ago, but doesn't seem to
          be used much anymore ?? I remember it was taken commercial - is
          freeware version still used ?? Would the it or the commercial version
          be good for our uses ??


    Gentile
          This is a new one to me - the page I saw was very sparse in terms of
          what tools it provides. Would it be a good fit for our uses ??


    SUIF
          Another one that I can't seem to find much info on. I realize its
          designed for parellizing compiliers, but would its tools be useful
          to us ??


    Scorpion
          An appearently dead project at Arizona State University and an
          University in Carolina. It looked real ambitious, but seems to
          have died ??


    The list goes on and on...Lisa, CoCo, BTYACC..Any help in sorting
all this out would be appreciated !! If anyone wants to reply
directly, I'm user shindle on toocool.com


TIA
Steve
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.