Author: wayland
Date: 2009-02-26 13:04:15 +0100 (Thu, 26 Feb 2009)
New Revision: 25583

Added:
   docs/Perl6/Spec/S32-setting-library/Callable.pod
Modified:
   docs/Perl6/Spec/S32-setting-library/Containers.pod
   docs/Perl6/Spec/S32-setting-library/Exception.pod
   docs/Perl6/Spec/S32-setting-library/IO.pod
   docs/Perl6/Spec/S32-setting-library/Scalar.pod
Log:
Lots more stuff in S32.  Documented Callable objects, and extended Containers a 
fair bit.  
Added little bits elsewhere in S32.  


Added: docs/Perl6/Spec/S32-setting-library/Callable.pod
===================================================================
--- docs/Perl6/Spec/S32-setting-library/Callable.pod                            
(rev 0)
+++ docs/Perl6/Spec/S32-setting-library/Callable.pod    2009-02-26 12:04:15 UTC 
(rev 25583)
@@ -0,0 +1,79 @@
+=encoding utf8
+
+=head1 Title
+
+DRAFT: Synopsis 32: Setting Library - Executeable
+
+=head1 Version
+
+ Author:        Tim Nelson <wayl...@wayland.id.au>
+ Maintainer:    Larry Wall <la...@wall.org>
+ Contributions: Tim Nelson <wayl...@wayland.id.au>
+ Date:          26 Feb 2009
+ Last Modified: 26 Feb 2009
+ Version:       1
+
+The document is a draft.
+
+If you read the HTML version, it is generated from the pod in the pugs 
+repository under /docs/Perl6/Spec/S32-setting-library/Exception.pod so edit it 
there in
+the SVN repository if you would like to make changes.
+
+This document documents Code, Block, Signature, Capture, Routine, Sub, Method, 
Submethod, 
+and Macro.  
+
+=head1 Roles
+
+=head2 Callable 
+
+role   Callable {...}
+
+The C<Callable> role implies the ability
+to support C<< postcircumfix:<( )> >>.
+
+=head2 Code
+
+# Base class for all executable objects
+role   Code {...}
+
+=head2 Block
+
+# Executable objects that have lexical scopes
+role   Block does Code does Callable {...}
+
+=head2 Signature
+
+# Function parameters (left-hand side of a binding)
+role   Signature {...}
+
+=head2 Capture
+
+# Function call arguments (right-hand side of a binding)
+role   Capture does Positional does Associative {...}
+
+=head1 Classes
+
+=head2 Routine
+
+class  Routine does Block {...}
+
+=head2 Sub
+
+class  Sub isa Routine {...}
+
+=head2 Method
+
+class  Method isa Routine {...}
+
+=head2 Submethod
+
+class  Submethod isa Routine {...} # XXX or should this be isa Sub
+
+=head2 Macro
+
+class  Macro isa Routine {...}
+
+=head1 Additions
+
+Please post errors and feedback to perl6-language.  If you are making
+a general laundry list, please separate messages by topic.


Property changes on: docs/Perl6/Spec/S32-setting-library/Callable.pod
___________________________________________________________________
Added: svn:mergeinfo
   + 

Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod
===================================================================
--- docs/Perl6/Spec/S32-setting-library/Containers.pod  2009-02-26 11:05:45 UTC 
(rev 25582)
+++ docs/Perl6/Spec/S32-setting-library/Containers.pod  2009-02-26 12:04:15 UTC 
(rev 25583)
@@ -26,12 +26,22 @@
 
 =head1 Function Roles
 
-This documents List, Seq, Range, Set, Bag, Junction.  
+=head2 Positional
 
-XXX So where are Seq, Range, Set, Bag?
+role   Positional {...}
 
+The C<Positional> role implies the ability to support C<< postcircumfix:<[ ]> 
>>.
+
+=head2 Associative
+
+role   Associative {...}
+
+The C<Associative> role implies the ability to support C<< postcircumfix:<{ }> 
>>.
+
 =head2 Container
 
+role   Container {...}
+
 =over
 
 =item cat
@@ -102,6 +112,8 @@
 
 All these methods are defined in the C<Array> role/class.
 
+role   Array does Positional {...}
+
 =over
 
 =item shape
@@ -252,6 +264,8 @@
 
 The following are defined in the C<List> role/class:
 
+role   List does Positional {...}
+
 =over
 
 =item cat
@@ -549,6 +563,8 @@
 
 The following are defined in the C<Hash> role.
 
+role   Hash does Associative {...}
+
 =over 4
 
 =item :delete
@@ -638,6 +654,58 @@
 
 =back
 
+=head2 Tieable
+
+role   Tieable {...}
+
+=head1 Classes
+
+This documents Buf, List, Seq, Range, Set, Bag, Junction, Array, Hash, 
KeyHash, KeySet, 
+KeyBag, Pair, and Mapping.  
+
+XXX So where are they?  Especially Set, Bag, KeyHash, KeySet, KeyBag, Pair, 
+and Mapping.
+
+=head2 Array
+
+class  Array does Array {...}
+
+=head2 Seq
+
+class  Seq does Positional {...}
+
+=head2 Range
+
+class  Range does Positional {...}
+
+=head2 Buf
+
+class  Buf does Positional {...}
+
+=head2 Hash
+
+class  Hash does Hash {...}
+
+=head2 
+
+class  Pair does Associative {...}
+
+=head2 
+
+class  Mapping does Associative {...}
+
+=head2 
+
+class  Set does Associative {...}
+
+=head2 
+
+class  Bag does Associative {...}
+
+=head2 
+
+class  KeyHash does Associative {...}
+
 =head2 Junction
 
 All method calls on Junctions autohread if there's no such method in the

Modified: docs/Perl6/Spec/S32-setting-library/Exception.pod
===================================================================
--- docs/Perl6/Spec/S32-setting-library/Exception.pod   2009-02-26 11:05:45 UTC 
(rev 25582)
+++ docs/Perl6/Spec/S32-setting-library/Exception.pod   2009-02-26 12:04:15 UTC 
(rev 25583)
@@ -22,7 +22,7 @@
 
 =head1 Roles
 
-role   Exception {
+role   Exception does Positional {
 # XXX How do we tell the difference between a warning and a fatal error?  
 }
 

Modified: docs/Perl6/Spec/S32-setting-library/IO.pod
===================================================================
--- docs/Perl6/Spec/S32-setting-library/IO.pod  2009-02-26 11:05:45 UTC (rev 
25582)
+++ docs/Perl6/Spec/S32-setting-library/IO.pod  2009-02-26 12:04:15 UTC (rev 
25583)
@@ -212,6 +212,8 @@
 This role represents objects that depend on some external resource,
 which means that data might not be available at request.
 
+role   IO::Streamable does IO {...}
+
 =over
 
 =item new()

Modified: docs/Perl6/Spec/S32-setting-library/Scalar.pod
===================================================================
--- docs/Perl6/Spec/S32-setting-library/Scalar.pod      2009-02-26 11:05:45 UTC 
(rev 25582)
+++ docs/Perl6/Spec/S32-setting-library/Scalar.pod      2009-02-26 12:04:15 UTC 
(rev 25583)
@@ -3,7 +3,7 @@
 
 =head1 Title
 
-DRAFT: Synopsis 32: Setting Library - Miscellaneous Scalars
+DRAFT: Synopsis 32: Setting Library - Scalar
 
 =head1 Version
 

Reply via email to