The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 0.33

  • !! Moose now loads ~45% faster !! !! with new Class::MOP 0.49 !!
  • new ooose.pm module to make command line Moose-ness easier (see POD docs for more)
  • Moose::Meta::Class
  • Moose::Meta::Role
    • several tweaks to take advantage of the new method map caching in Class::MOP
  • Moose::Meta::TypeConstraint::Parameterized
    • allow subtypes of ArrayRef and HashRef to be used as a container (sartak)
      • added tests for this
    • basic support for coercion to ArrayRef and HashRef for containers (sartak)
      • added tests for this
  • Moose::Meta::TypeCoercion
    • coercions will now create subtypes as needed so you can now add coercions to parameterized types without having to explictly define them
      • added tests for this
  • Moose::Meta::Method::Accessor
    • allow subclasses to decide whether we need to copy the value into a new variable (sartak)

Documentation

How to cook a Moose
Frequently asked questions about Moose
The (always classic) Point example.
The meta-attribute example
A simple BankAccount example
A lazy BinaryTree example
Subtypes, and modeling a simple Company class hierarchy
More subtypes, coercion in a Request class
The Moose::Role example
The augment/inner example
Snippets of code for using Types and Type Constraints
For when things go wrong with Moose
Formal spec for Role behavior

Modules

A complete modern object system for Perl 5
The Moose attribute metaclass
The Moose metaclass
The Moose Instance metaclass
A Moose Method metaclass
A Moose Method metaclass for accessors
Method Meta Object for constructors
Method Meta Object for destructors
A Moose Method metaclass for overriden methods
The Moose Role metaclass
A Moose Method metaclass for Roles
A Moose metaclass for required methods in Roles
The Moose Type Coercion metaclass
The Moose Type Coercion metaclass for Unions
The Moose Type Constraint metaclass
Higher Order type constraints for Moose
registry for type constraints
A union of Moose type constraints
The base object for Moose
The Moose Role
Utilities for working with Moose classes
Type constraint system for Moose
Test functions for Moose specific features
syntactic sugar to make Moose one-liners easier