On Thu, Jul 2, 2009 at 3:59 PM, Hans Dieter Pearcey<h...@pobox.com> wrote:
> On Thu, Jul 02, 2009 at 03:32:54PM -0400, Stevan Little wrote:
>> The result is that we would have something like this:
>>
>>   has foo => (traits => [ 'Basic::ArrayRef' ], isa => ArrayRef, ...);
>>
>>   has web_hits => (traits => [ 'Pattern::Counter' ], ...);
>>
>> As long as the traits are below the right Moose::*::*:: namespace we
>> should be good.
>
> Do not forget to distinguish between full names
> (Moose::Meta::Attribute::Trait::whatever) and short names
> (register_implementation).
>
> It may be reasonable for 'ArrayRef' to be the shortname but 
> 'DataType::ArrayRef'
> to be the namespace under Moose::Meta::Attribute::Trait.

DataStructure:: is fine if the registerd version doesn't require
typing DataStructure:: every time ... that said Structure:: is I think
enough for Structural things.

Queue / Stack are stuck into DataStructures in CS classes but I don't
see them as being any more or less structural than a Counter which is
really a monotonic variable ... or a snapshot of a vector ... or ....
the fact is that a Queue or a Stack is a List with pre-defined
operations you can perform upon it (push/pop and enqueue/dequeue) this
is why I put them into the pattern category rather than the Data
Structure one ... despite what my CS text books might have claimed.

Reply via email to