🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.clos
Article #155

Re: Beginner's question and method lookup

#155
From: David C. Martin
Date: Thu, 20 Aug 1992 01:48
29 lines
1612 bytes
john@linus.mitre.org writes:

and David C. Martin (dcmartin@msi.com) replies:

	Yes, if you did things that way.  In fact, you can determine at
	compile time what the argument types are and then put in the
	appropriate call to the appropriate function.

    I think this is often true, but not in general, even with extensive
    may only be able to narrow the type to partway down the hierarchy, or
    to a disjunction of types, not to a leaf.  A SSC may be able to make
    use of this information, but I'm not sure many commercial CLOSes could.

You might be surprised at the work that both Franz and Lucid have done with
their CLOS implementations.  I have talked about this issue with John
Foderero @ Franz and he has put hooks in so that if you wish to have
static class hierarchies you can do complete determination, i.e. static 
binding for the executable.

    In the most ridiculous case, an argument to a generic-function may be
    computed via a call to READ; there's little the compiler can do then.

    John Burger
    john@mitre.org

Ah, true.  So you can't do everything, but then again, you can't do static
binding in C++ for that case either.

dcm
Technical Details
Message-ID: <9208201548.AA28777@fascet.msi.com>
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!fascet.msi.com!dcmartin
References: <9208201523.AA01165@thelonius.mitre.org>

Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.clos
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!fascet.msi.com!dcmartin
From: dcmartin@fascet.msi.com (David C. Martin)
Subject: Re: Beginner's question and method lookup
Message-ID: <9208201548.AA28777@fascet.msi.com>
Sender: dcmartin@msi.com
Organization: Molecular Simulations, Inc.
References: <9208201523.AA01165@thelonius.mitre.org>
Date: Thu, 20 Aug 1992 01:48:16 GMT
Lines: 29