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

Re: issue PROCLAIM-ETC-IN-COMPILE-FILE



I just asked some people around here what they thought of this issue.
I talked to people mostly individually and didn't tell them until near
the end of discussion where any of the suggestions came from.
The people I talked to were David Andre (DLA), Scott Cyphers, Bob Laddaga, 
Charlie Hornig, and Scott McKay (SWM). The following is a summary of the
results.

 -----
 No one liked the name DEFPROCLAIM. (What a surprise...)

 When I mentioned the idea of a cross between PROCLAIM and DECLARE to
 Scott Cyphers he immediately said ``PROCLARE? No... DECLAIM? Yeah...''
 repeating what Steele had done. He was pleased when I told him
 DECLAIM was just the name we were thinking of.

 No one liked the name DECLARE-GLOBALLY. Several people noted that
 it was trying hard not to be GLOBAL.

 No one liked COMPILER-DECLARE, especially since we just flushed
 COMPILER-LET.

 To one degree or another, Laddaga, SWM, DLA, Cyphers and Hornig liked
 the names like FILE-DECLARE (or DECLARE-IN-FILE). Hornig also 
 suggested FILE-PROCLAIM. [In fact, since it's half PROCLAIM, half DECLARE,
 I think the way we should decide whether it's -DECLARE or -PROCLAIM
 if we go this route is to call it FILE-DECLARE if SPECIAL declarations
 are not pervasive and FILE-PROCLAIM otherwise.]

 Some people noted a possible conflict with a Zetalisp function called
 FILE-DECLARE but since that's in a different package, it's really not
 a concern.

 KMP, DLA, SWM, and Cyphers liked the name DECLAIM. Laddaga was initially
 unhappy with it but liked it better after the pun was explained.
 -----

My dictionary says, among other things, that ``declaim'' means to
``speak pompously of.'' Tracking the definitions of related words
around, you find lots of references to ``vainglory'' and ``self
importance.'' I personally think this is a completely appropriate
connotation for a declaration which effectively wants to be seen
as being as important as a proclamation but which we the readers
secretly know will never have the power to be one. It is effectively
a ``pretend proclamation.''  This is an after-the-fact justification,
but we've used weaker ones.

Btw, I feel a little like we're repeating the ``Tower nomination''
phenomenon here.  If you subject this poor little word to such scrutiny,
why not go back and subject other words in the language to equivalent
scrutiny. For example, similar arguments about the inappropriateness of
``proclaim'' could have been made -- ``proclaim'' sounds to me like it
ought to have been an I/O function.  But the fact is that I quickly
learned it as a formal term and didn't care much after the first
fifteen seconds.

If we chose this name, I wonder if we could also introduce an English
``claimed to be X'' mean ``proclaimed, declaimed, or declared to be X.''
I personally have always tired of having to write even
``proclaimed or declared...''

It was not initially obvious to me before this survey that it mattered
whether DECLAIM (or whatever) scoped to a file or a compilation unit,
but since discussion with Hornig it's clear to me that it must scope to
a file.

[I think that ultimately PROCLAIM should be made to scope to a
compilation unit when seen in a compile-time-too context, just as I
think that property list references, variable assignments, etc. should
do. But all of that is beyond the scope of what we are likely to get
done on this standardization pass unless it's necessary for CLOS.]