From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1014db,df854b5838c3e14 X-Google-Attributes: gid1014db,public X-Google-Thread: 109fba,df854b5838c3e14 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,df854b5838c3e14 X-Google-Attributes: gid103376,public From: woodruff@tanana.llnl.gov (John Woodruff) Subject: Re: Ada Parsing Tools (was Re: C/C++ knocks the crap out of Ada) Date: 1996/03/20 Message-ID: #1/1 X-Deja-AN: 143424718 references: <00001a73+00002504@msn.com> <4iah20$p7k@saba.info.ucla.edu> organization: Lawrence Livermore National Lab reply-to: woodruff1@llnl.gov newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++ Date: 1996-03-20T00:00:00+00:00 List-Id: >>>>> "Robert" == Robert I Eachus writes: > First Alex and Ayacc exist, and allow you to use lex and yacc > grammars in Ada. > Second, yacc is the worst product I have ever used to build > LALR parsers. It works, and it does what it says it > does. (Although there are cases where it does not correctly handle > LALR1 grammars, don't get me started.) However, it is woefully > inadequate as a tool for designing grammars. All the other tools > I have used for building grammars and parsers have had at least > the following properties: > 1) Support either full LR(1), LALR(k), LR(k) or even implement > Early's Algorithm. > 2) Lots of built-in support for error messages and error > recovery in the final product. > 3) Lost of built-in diagnostics so that grammar errors--or > grammar forms not supported by the tool--can be diagnosed and > fixed. > Yacc is a least common denominator product, however it is not > currently the state of the (1980) art. I would like to have leads to such language parsing products as are available in Ada now. I'm about to undertake a preliminary prototype exercise to use ayacc in my project, and if there's a significantly easier-to-use alternative I want to know about it. BTW the application I'm prototyping is a "sequence control" language for operation of an experimental facility. My goal is to define a fairly simple grammar (iteration, selection, ...), to construct a graphic tool for writing small "programs" in the language, and to deploy the language in a control system. The interesting part in my view is that the language is not composed of textual input, but of tokens some of which are control-system primitives that are executable either from control screen GUI's or from within the sequence control language described here. -- John Woodruff N I F \ ^ / Lawrence Livermore National Lab =====---- < 0 > 510 422 4661 / v \