[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Issue: KEYWORD-ARGUMENT-NAME-PACKAGE (Revision 1)



    Date: Sat, 2 May 1987  00:16 EDT
    From: "Scott E. Fahlman" <Fahlman@C.CS.CMU.EDU>

    ... One might question whether this is the best way, or even a
    reasonable way, to pass this collection of stuff on to 
    Make-Instance-Internal.  Why pass Explicit as a keyword at all?  Why not
    as a required arg ...

What if MAKE-INSTANCE-INTERNAL takes 47 such internal keywords? Just
because I only used one in the call doesn't mean that's all it receives.
Would you have me pass all 47 internal arguments on every call?

Also, the caller of MAKE-INSTANCE might be within package SYSTEM and so
it might not be an abstraction violation for him to pass other packaged
symbols. That means that more keywords than those you see might be being
received in the main arglist, though presumably none that the caller
worries are going to be overridden by MAKE-INSTANCE.

Or there might be other situations in which keyword-style calling is
more important than in the particular call that you have there.

I could add some of these issues to the add rationale, too, if you like.
Almost by definition, any two-line example is not going to leave you
feeling satisfied about something which is claimed to be useful in
complex situations involving modularity boundaries.

Anyway, the fact that you can figure out what is being hinted at by the
small example makes me feel like the example did its job.