[svn:perl6-synopsis] r11977 - doc/trunk/design/syn

2006-09-13 Thread larry
Author: larry
Date: Wed Sep 13 11:05:34 2006
New Revision: 11977

Modified:
   doc/trunk/design/syn/S02.pod
   doc/trunk/design/syn/S03.pod
   doc/trunk/design/syn/S06.pod
   doc/trunk/design/syn/S09.pod
   doc/trunk/design/syn/S12.pod

Log:
Metamethod revamp.


Modified: doc/trunk/design/syn/S02.pod
==
--- doc/trunk/design/syn/S02.pod(original)
+++ doc/trunk/design/syn/S02.podWed Sep 13 11:05:34 2006
@@ -12,9 +12,9 @@
 
   Maintainer: Larry Wall [EMAIL PROTECTED]
   Date: 10 Aug 2004
-  Last Modified: 27 Aug 2006
+  Last Modified: 13 Sept 2006
   Number: 2
-  Version: 66
+  Version: 67
 
 This document summarizes Apocalypse 2, which covers small-scale
 lexical items and typological issues.  (These Synopses also contain
@@ -455,13 +455,11 @@
 can speed it up.)
 
 Some object types can behave as value types.  Every object can produce
-a safe key identifier (CSKID for short) that uniquely identifies the
+a WHICH value that uniquely identifies the
 object for hashing and other value-based comparisons.  Normal objects
 just use their address in memory, but if a class wishes to behave as a
-value type, it can define a C.SKID method that makes different objects
+value type, it can define a C.WHICH method that makes different objects
 look like the same object if they happen to have the same contents.
-SKID may also stand for static key id, or silly key id, or
-secret key id, or supercalifragilisticexpialidocious key id.
 
 =item *
 
@@ -483,13 +481,13 @@
 
 =item *
 
-Every object supports a CMETA function/method that returns the
+Every object supports a CHOW function/method that returns the
 metaclass instance managing it, regardless of whether the object
 is defined:
 
-'x'.META.get_method_list;   # get available methods for strings
-Str.META.get_method_list;   # same thing with the prototype object Str
-META(Str).get_method_list;  # same thing as function call
+'x'.HOW.get_method_list;   # get available methods for strings
+Str.HOW.get_method_list;   # same thing with the prototype object Str
+HOW(Str).get_method_list;  # same thing as function call
 
 'x'.get_method_list;# this is an error - not a meta object
 Str.get_method_list;# same thing

Modified: doc/trunk/design/syn/S03.pod
==
--- doc/trunk/design/syn/S03.pod(original)
+++ doc/trunk/design/syn/S03.podWed Sep 13 11:05:34 2006
@@ -14,7 +14,7 @@
   Date: 8 Mar 2004
   Last Modified: 13 Sep 2006
   Number: 3
-  Version: 62
+  Version: 63
 
 =head1 Changes to Perl 5 operators
 
@@ -373,7 +373,7 @@
 CArray objects, but it is true that C@a === @a because those are
 the same CArray object).
 
-Any object type may pretend to be a value type by defining a C.SKID
+Any object type may pretend to be a value type by defining a C.WHICH
 method which returns a value type that can be recursively compared
 using C===, or in cases where that is impractical, by overloading
 C=== such that the comparison treats values consistently with their
@@ -494,7 +494,7 @@
 for ^(3,3) { ... } # (0,0)(0,1)(0,2)(1,0)(1,1)(1,2)(2,0)(2,1)(2,2)
 
 If applied to a type name, it indicates the metaclass instance instead,
-so C^Moose is short for CMETA(Moose) or CMoose.META.  It still kinda
+so C^Moose is short for CHOW(Moose) or CMoose.HOW.  It still kinda
 means what is this thing's domain in an abstract sort of way.
 
 =item * The C... operator is the yada, yada, yada list operator,
@@ -512,7 +512,7 @@
 variants C.*, C.?, and C.+ to control how multiple related methods
 of the same name are handled.  The C.= operator does inplace modification
 of the object on the left.  The C.^ operator calls a class metamethod;
-Cfoo.^bar is short for Cfoo.META.bar.
+Cfoo.^bar is short for Cfoo.HOW.bar.
 
 =item * Unary C= reads lines from a filehandle or filename, or
 iterates an iterator, or in general causes a scalar to explode its guts

Modified: doc/trunk/design/syn/S06.pod
==
--- doc/trunk/design/syn/S06.pod(original)
+++ doc/trunk/design/syn/S06.podWed Sep 13 11:05:34 2006
@@ -13,9 +13,9 @@
 
   Maintainer: Larry Wall [EMAIL PROTECTED]
   Date: 21 Mar 2003
-  Last Modified: 25 Aug 2006
+  Last Modified: 13 Sept 2006
   Number: 6
-  Version: 53
+  Version: 54
 
 
 This document summarizes Apocalypse 6, which covers subroutines and the
@@ -1358,7 +1358,7 @@
 
 Objects with these types behave like values, i.e. C$x === $y is true
 if and only if their types and contents are identical (that is, if
-C$x.SKID eqv C$y.SKID).
+C$x.WHICH eqv C$y.WHICH).
 
 Bit Perl single bit (allows traits, aliasing, undef, etc.)
 Int Perl integer (allows Inf/NaN, arbitrary precision, etc.)
@@ -1382,7 +1382,7 @@
 
 =head2 Mutable types
 
-Objects with these types have 

Re: [svn:perl6-synopsis] r11977 - doc/trunk/design/syn

2006-09-13 Thread Darren Duncan

At 11:05 AM -0700 9/13/06, [EMAIL PROTECTED] wrote:

Modified: doc/trunk/design/syn/S02.pod
+'x'.HOW.get_method_list;   # get available methods for strings

snip

Modified: doc/trunk/design/syn/S12.pod
+The C.HOW.getmethods method returns method-descriptors containing:


As you can see, there is a repeated inconsistency here as to the name 
of this meta-object method.  While it is possible that the actual 
meta-object API hasn't been decided on yet, the stand-in Synopsis 
examples should at least be consistent. -- Darren Duncan