Related articles |
---|
EDIF2 Lex/YACC parser needed dpappas@ichips.intel.com (1994-08-03) |
Re: EDIF2 Lex/YACC parser needed wjw@iaehv.iaehv.nl (1994-08-03) |
Re: EDIF2 Lex/YACC parser needed gdonl@gv.ssi1.com (1994-08-04) |
Re: EDIF2 Lex/YACC parser needed bevan@cs.man.ac.uk (1994-08-04) |
Newsgroups: | comp.compilers |
From: | bevan@cs.man.ac.uk (Stephen J Bevan) |
Keywords: | parse |
Organization: | Department of Computer Science; University of Manchester |
References: | 94-08-042 |
Date: | Thu, 4 Aug 1994 08:25:45 GMT |
Status: | RO |
In article 94-08-042 dpappas@ichips.intel.com (Derek Pappas) writes:
I need an EDIF2 Lex/YACC parser. Please send me a pointer to an ftp
site and the ip address if you know it. ...
[This question has come up occasionally since 1987 without anyone ever
offering one. Perhaps the EDIF users can get together and whip one up.
-John]
Producing an EDIF version 2 0 0 parser using Lex/YACC is a bit awkward
given that the language is defined in three levels each of which has a
grammar which is a superset of the next level down and all of which
can appear at some point in a single file. If you punt on dealing
with the higher levels and concentrate on level 0 so you only have one
grammar, you still have the problem that "standard" YACCs usually blow
up because there are too many productions* -- BISON can cope ok,
though. You then have the fun of trying to put some decent error
recovery into the grammar. All in all, a pretty tedious job -- at
least I found it so.
If you aren't tied to using YACC, then there are some alternatives.
There is the Berkeley EDIF version 2 0 0 toolkit, see the comp.lsi.cad
FAQ for more information. If you aren't averse to commercial software
then contact edif-support@cs.man.ac.uk and ask about companies that
provide parsers/toolkits for EDIF version 2 0 0 and/or the recently
released version 3 0 0.
------------
* just under 300 in the official EBNF, probably at least twice that
when you expand out any use of { ... } and probably into the
thousands if you try and expand out any use of < ... > into a format
YACC can accept.
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.