At 4:40 PM -0700 5/29/07, Larry Wall wrote:
Hmm, maybe we should just rename Object to something more generic.
There are plenty of candidates:
Top
Idea
Noun
Item
Proto
Thing
Notion
Concept
Subject
Reality
Invocant
Universal
EveryThing
Abstraction
TheCosmicAll
Life::Universe::Everything
If you are going to rename Object, I put my vote in for Universal.
For one thing, that is the/a term used in set theory to refer to set
of everything (under consideration). And "universe" in general means
the one that contains all. We also have the advantage of continuity
with Perl 5, which calls its maximal data type UNIVERSAL.
Object is inferior to this as, at least among computer people, Object
smacks as describing the implementation of a type rather than of its
meaning, and generally speaking types should be named after what they
mean. (Mind you, Hash very much smacks of describing implementation
too, but there is less of a case to change that since Perl 5 people
may revolt.)
Universal also gets the huffmanizing stuff about right ... not too
short and not too long.
Actually, I hereby actively propose that Object be renamed to
Universal, assuming that Object is actually the maximal data type.
And in Perl 6, "Any" does not really mean "any kind of whatever".
"Any" is just short for "any single bindable item", and a Junction is
not a single bindable item, since it autothreads instead. Note that
"any" is considered a singular noun in English, and so used in
junctional phrases like "any of A, B, or C", where it picks out
one or another of them semantically, which is basically the same
operation that autothreading a parameter does. We're using "any"
more in that "any of a restricted set" sense than in the "any of
the universal set" sense.
Now that I've heard the explanation of what Any means, I also have no
objection to continuing to use that, such that Any is the complement
of Junction under Universal/Object.
-- Darren Duncan