=pod

=head1 NAME

PIL^N core classes

=head1 SYNOPSIS

This document describes a core set of PIL^N classes which will be 
used to build the Perl 6 core classes/roles/types. These are 
similar, in spirit, to the core Parrot PMC types in Parrot. These 
will be built upon the native PIL^N types, but will add many more 
methods as well as bring all these methods into the world of '.' 
methods.

=head1 ROLES

=head2 Seq

This is an immutable sequence role whose methods are based on the 
classic LISP/Scheme/ML/etc list operations. It is a very thin 
wrapper around the core PIL^N list type. It requires it's consumers 
to define .head and .tail (with some other restrictions too).

=head2 ... more to come 

=head1 CLASSES

=head2 Sequence

This is an immutable sequence built with the 'array' repr type 
and consuming the Seq role.

=head2 LazySequence

This is a lazy immutable sequence built with the 'opaque' repr 
type and consuming the Seq role.

=head2 ... more to come 
  
=head1 AUTHOR

Stevan Little <stevan@iinteractive.com>

=cut
