Related articles |
---|
Recursive Descent Parser e8rasmus@etek.chalmers.se (Rasmus Anthin) (2000-01-09) |
Re: Recursive Descent Parser world!cfc@uunet.uu.net (Chris F Clark) (2000-01-12) |
Re: Recursive Descent Parser biocyn@erols.com (2000-01-25) |
Re: Recursive Descent Parser chstapfer@bluewin.ch (Christian Stapfer) (2000-02-10) |
Re: Recursive Descent Parser rhyde@shoe-size.com (Randall Hyde) (2000-02-12) |
Re: Recursive Descent Parser mklarson@gte.net (Michael Larson) (2000-02-22) |
Re: Recursive Descent Parser paulyg@clara.net (2000-02-22) |
Re: Recursive Descent Parser world!cfc@uunet.uu.net (Chris F Clark) (2000-02-22) |
Re: Recursive Descent Parser fjscipio@rochester.rr.com (Fred J. Scipione) (2000-02-23) |
Re: Recursive Descent Parser adrian@dcs.rhbnc.ac.uk (2000-02-27) |
Re: Recursive Descent Parser anton@mips.complang.tuwien.ac.at (2000-02-27) |
From: | paulyg@clara.net (Paul Groves) |
Newsgroups: | comp.compilers |
Date: | 22 Feb 2000 09:26:39 -0500 |
Organization: | Compilers Central |
References: | 00-01-027 00-01-032 00-02-034 00-02-058 00-02-111 |
Keywords: | parse |
>Hmm... I am wrtting a shading language compiler for Renderman.... I
>have been having some problems with the language and putting various
>work arounds in to fix problems with yacc.... If the language is small
>enough and I am comfortable with recursive routines, should I try the
>recursive decent approach first?
>
>Mike Larson
Give it a go.
Recursive descent parsers aren't difficult to write for small 'proper'
LL1 languages.
One of our tutors at university believed than Lex and Yacc were evil
(seriously) and had us writing parsers for a language called Newt
within 4 weeks. Newt was a Pascal sub-set with only an integer
datatype (to stop us freshmen from throwing ourselves off the nearest
roof when coming to write the symbol table routines).
Looking back, it was a fantastic choice and I think that more
university lecturers should follow Chris' example.
Mind you, stepwise refinement via recursive descent is only really
'nice' when you can use nested procedures/functions ala Pascal.
And I agree with Stroustrup (which is nice :-) ), if you're writing a
langauge as an exeriment - hand writing the parser is the only way to
go.
Paul.
Return to the
comp.compilers page.
Search the
comp.compilers archives again.