Re: Number of compiler passes

glen herrmannsfeldt <gah@ugcs.caltech.edu>
Tue, 29 Jul 2008 19:03:31 -0800

          From comp.compilers

Related articles
[6 earlier articles]
Re: Number of compiler passes gneuner2/@/comcast.net (George Neuner) (2008-07-25)
Re: Number of compiler passes m.helvensteijn@gmail.com (Michiel) (2008-07-26)
Re: Number of compiler passes gah@ugcs.caltech.edu (glen herrmannsfeldt) (2008-07-27)
Re: Number of compiler passes gneuner2@comcast.net (George Neuner) (2008-07-28)
Re: Number of compiler passes gneuner2@comcast.net (George Neuner) (2008-07-28)
Re: Number of compiler passes gah@ugcs.caltech.edu (glen herrmannsfeldt) (2008-07-29)
Re: Number of compiler passes gah@ugcs.caltech.edu (glen herrmannsfeldt) (2008-07-29)
Re: Number of compiler passes m.helvensteijn@gmail.com (Michiel) (2008-07-29)
Re: Number of compiler passes m.helvensteijn@gmail.com (Michiel) (2008-07-29)
Re: Number of compiler passes barry.kelly@codegear.com (Barry Kelly) (2008-07-30)
Re: Number of compiler passes gah@ugcs.caltech.edu (glen herrmannsfeldt) (2008-08-01)
Re: Number of compiler passes gneuner2@comcast.net (George Neuner) (2008-08-03)
Re: Number of compiler passes gneuner2@comcast.net (George Neuner) (2008-08-03)
| List of all articles for this month |

From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Newsgroups: comp.compilers
Date: Tue, 29 Jul 2008 19:03:31 -0800
Organization: Compilers Central
References: 08-07-041 08-07-044 08-07-048 08-07-058 08-07-061 08-07-066
Keywords: types, symbols

George Neuner wrote:
(snip)


> In practice, I think partial qualification is only an issue for
> languages with latent or no typing.
(snip)


> As for shadowing definitions, I would simply go with the inner one. I
> can see some minor utility to searching until you find a definition
> that works, but I think it would make the language very confusing to
> allow simultaneous access to multiple types of the same name.


Yes, I believe that is what PL/I does. (I believe that partial
qualification came from COBOL, but I don't know about that at all.)


It came up once when someone discovered that it would use
a partially qualified inner structure over a fully qualified
structure at an outer level.


It is a compilation error if it is ambiguous at the same
level, but not at different levels.


DCL B FIXED BIN(31);
BEGIN;
        DCL 1 A, 2 B FLOAT(6);
        B=3;
        PUT LIST(A.B);
END;


-- glen



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.