Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!mcsun!ukc!icdoc!sot-ecs!sra From: sra@ecs.soton.ac.uk (Stephen Adams) Newsgroups: comp.lang.misc Subject: Re: Parsers using OOP . What objects to use ? Examples ? Message-ID: Date: 13 Jun 91 11:33:37 GMT References: <1991Jun11.185402.21089@eagle.lerc.nasa.gov> Sender: news@ecs.soton.ac.uk Organization: Southampton University Computer Science Lines: 53 In-reply-to: sshws@convx1.lerc.nasa.gov's message of 11 Jun 91 18:54:02 GMT In article <1991Jun11.185402.21089@eagle.lerc.nasa.gov> sshws@convx1.lerc.nasa.gov (Herb Schilling) writes: > We would like to implement a parser using Turbo Pascal. It seems that > using OOP concepts could naturally be applied to the problem. It > would help with developing, debugging and extending the code. Has anybody > out there done or thought about writing a parser using > objects ? I would be interested in reading about the structure of the objects. I know of two references that would interest you. The first deals with writing a parser in a way that makes your typical huge recursive descent parser become a collection of modules. The second is more general, discussing further issues of modularity in a compiler. I would re-read both if I had to write a language processor in Turbo Pascal / Modula-2 / C++ etc. @ARTICLE{ko:lazy, AUTHOR = "Kai Koskimies", TITLE = "Lazy Recursive Descent Parsing for Modular Language Implementation", JOURNAL = "{Software---Practice and Experience}", YEAR = 1990, MONTH = aug, VOLUME = 20, NUMBER = 8, PAGES = "749-772", } @INPROCEEDINGS{ko:soft, AUTHOR = "Kai Koskimies", TITLE = "Software Engineering Aspects in Language Implementation", CROSSREF = "CCHSC88", PAGES = "39-51", } @PROCEEDINGS{CCHSC88, KEY = "CCHSC88", EDITOR = "D. Hammer", TITLE = "Compiler Compilers and High Speed Compilation", BOOKTITLE = "Compiler Compilers and High Speed Compilation", YEAR = 1988, MONTH = oct, SERIES = "Lecture Notes in Computer Science", VOLUME = 371, CITY = "Berlin", PUBLISHER = S-V, } -- Stephen Adams S.R.Adams@ecs.soton.ac.uk Computer Science University of Southampton Southampton SO9 5NH, UK