X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FCookbook%2FFAQ.pod;h=74f06d1bd2e0541c3fd23fe3e8fad36606871505;hb=bb6c833559f9e6ac403628d8ec4d09af2a0477e1;hp=2518660ffe7497a95bf9eae506efefd230186d3a;hpb=5cfe38055a8397c20063f7e76c29f0734f86890b;p=gitmo%2FMoose.git diff --git a/lib/Moose/Cookbook/FAQ.pod b/lib/Moose/Cookbook/FAQ.pod index 2518660..74f06d1 100644 --- a/lib/Moose/Cookbook/FAQ.pod +++ b/lib/Moose/Cookbook/FAQ.pod @@ -85,7 +85,7 @@ or any other format To change the handling of individual parameters, there are I (See the L for a complete example and -explaination of coercions). With coercions it is possible to morph +explanation of coercions). With coercions it is possible to morph argument values into the correct expected types. This approach is the most flexible and robust, but does have a slightly higher learning curve. @@ -97,7 +97,7 @@ delegation. Moose makes this easy using the C keyword, coercions, and C, so subclassing is often not the ideal route. -That said, the default Moose constructors is inherited from +That said, the default Moose constructor is inherited from L. When inheriting from a non-Moose class, the inheritance chain to L is broken. The simplest way to fix this is to simply explicitly inherit from L @@ -172,7 +172,7 @@ L. This will allow you to write: is => 'rw', ); -And have Moose create seperate C and C methods +And have Moose create separate C and C methods instead of a single C method. NOTE: This B be set globally in Moose, as that would break @@ -282,6 +282,21 @@ release. See L and specifically the B question in the B section. +=head3 What are Traits, and how are they different to Roles? + +In Moose, a trait is almost exactly the same thing as a role, except +that traits typically register themselves, which allows you to refer +to them by a short name ("Big" vs "MyApp::Role::Big"). + +In Moose-speak, a I is usually composed into a I at +compile time, whereas a I is usually composed into an instance +of a class at runtime to add or modify the behavior of B. + +Outside the context of Moose, traits and roles generally mean exactly the +same thing. The original paper called them Traits, however Perl 6 will call +them Roles. + =head1 AUTHOR Stevan Little Estevan@iinteractive.comE