[comp.lang.pascal] lexical scan, parsing

wsinpp@lso.win.tue.nl (Peter Peters) (01/03/90)

Hi fellow netters,

I while ago I read something in comp.object about OOP being
very useable for implementation of lexical scanners/parsers.
I'd like to look into this subject, so if anyone can give
me some idea's, examples or "show" me some literature about
this subject (NOT about lexical scanners/parsers but about
OOP use for this type of work) I'd be grateful.

		Tnx in advance.

| Peter Peters                              | UUCP : wsinpp@lso.win.tue.nl  |
| Eindhoven University of Technology (TUE)  | SURF : heithe5::wsdcpp        |
| Dept. of Mathematics and Computer Science | VHF  : PA0PPE                 |
| Disclaimer : I said WHAT ???              | TUE  : HG 8.86 tst. 4283      |
-- 
| Peter Peters                              | UUCP : wsinpp@lso.win.tue.nl  |
| Eindhoven University of Technology (TUE)  | SURF : heithe5::wsdcpp        |
| Dept. of Mathematics and Computer Science | VHF  : PA0PPE                 |
| Disclaimer : I said WHAT ???              | TUE  : HG 8.86 tst. 4283      |

sakkinen@tukki.jyu.fi (Markku Sakkinen) (01/05/90)

At ECOOP'89 there was a talk by Gorel Hedin (o with umlaut)
from Lund University, Sweden, on
"An object-oriented notation for attribute grammars".
(Proceedings published by Canbridge University Press)

Markku Sakkinen
Department of Computer Science
University of Jyvaskyla (a's with umlauts)
Seminaarinkatu 15
SF-40100 Jyvaskyla (umlauts again)
Finland

kim@helios.enea.se (Kim Wald`n) (01/05/90)

Try "The Eiffel Object-Oriented Parsing Library" by Philip Hucklesby and
Bertrand Meyer in proc. Technology of Object-Oriented Languages and Systems
(TOOLS'89), pp. 501-507, Paris, France, Nov. 1989.

The article describes a library of classes for lexical analysis and parsing,
along with a tool, yoocc ("Yes! and Object-Oriented Compiler Compiler),
making it possible to generate parsers, where the syntactic and semantic parts
are cleanly separated.

Unlike other parser generators (notably yacc), it permits reusing the same 
syntactic analysis for different purposes like compiling, extracting for
documentation, pretty-printing etc., only adding new classes for different
semantic actions.

For most object-oriented languages, the complex inheritance structures needed
to achieve this flexibility prevents its use in production quality compilers,
due to bad performance.

In the strongly typed Eiffel language, it becomes feasible thanks to the 
efficient implementation of multiple inheritance and dynamic bindning.

-- Kim Walden
Enea Data, Sweden
kim@enea.se