From marcs Mon Jan 24 15:47:52 1994
>From marcs  Mon Jan 24 15:47:50 1994
Received: from localhost by zeus.cs.kun.nl id PAA02301
	(8.6.4/1.4 for marcs); Mon, 24 Jan 1994 15:47:50 +0100
Date: Mon, 24 Jan 1994 15:47:50 +0100
From: Marc Seutter <marcs>
To: marcs
Subject: EAG
Status: R

Hi Terrence,

The only reference that I can give on my EAG compiler package is that
of the user documentation:

[Seu93] M. Seutter
        ``Informal introduction to the Extended Affix Grammar formalism and
        its compiler",
        Technical report No 93-19, University of Nijmegen, Sept. 1993

There are not yet any publications on my implementation. There are however
references to earlier work of my department on EAG. You can find them
in one of the appendices of the user documentation. By the way, I just
put the next version of the EAG compiler and documentation on ftp
(hades.cs.kun.nl directory: /pub/eag).

The difference between L attributed grammars and EAG is that attribute
flow is restricted in L attributed grammars whereas the affix flow
is completely free in EAG. Specifically, each attribute in a L attributed
grammar is either synthesized or it is an inherited attribute of a member
of a production rule that only depends on the attributes of the
preceding members in that production rule or the inherited attributes
of the nonterminal. In short only a ``left to right" attribute flow
is possible.

In my EAG implementation affix flow is data driven that is: as soon as
an affix receives a value, this value is propagated to affixes that
depend on it. Affix evaluation and parsing are therefore completely
mixed allowing for instance affix directed parsing and context sensitive
checks while parsing. In the examples subdirectory of the compiler
package you will find the grammar lazy.eag which shows a possible use
of this mechanism.

					Best regards,

					Marc Seutter
					(marcs@cs.kun.nl)


