in reply to Re^8: Data Structures
in thread Data Structures
I'm not even anti-Moose. It is without any doubt the very best of the OO modules around.
Wait, your confusing me now :P
And (if it ever compiles for Win32), ...
The guys over at Best Practical are trying to replace all my XS usage with Pure Perl alternatives, so that may happen soon. Although I have to wonder if you have tried it on Strawberry Perl yet? I have heard of some people having success with that (we currently have a broken test on windows, but its the test, not Moose).
... whenever I have an application for a module that will benefit from OO, I will seriously consider using Moose.
Oh, please do, I would love to convert you :)
This exercise caused me to look deep into the guts of the beast and I am seriously impressed by both what it does and the way it does it.
<being_serious>Thanks, that actually means something coming from you given the depth to which you tend to analyze and look at stuff</being_serious>. Be careful though, Moose-guts tend to stain and are really smelly if you leave them out for too long.
I'm less impressed with some of the dependancies and the choice to use them. A couple of modules (IMO) substitue a module, a use line and a complicated line of code (in the calling program, and a lots of often unnecessary code in the module itself) for a rather simpler, single line of core perl code.
Could you be more specific as to what you mean? I would happily remove a dependency if the replacement were as simple as that.
Contrast that with facing the problem of refamiliarisation with Moose's 20+ modules and reams of documentation six months from now.
FWIW, to use Moose, you really just need to read the Moose::Cookbook, and the POD of Moose (maybe a little in Class::MOP::Class and Class::MOP::Attribute too, but we are gonna move the relevant bits up to Moose soon). If you want to use roles, then you need to skim the POD of Moose::Role too, but you will find it is very similar to what is in Moose. If you want to use types, you need to read the POD for Moose::Util::TypeConstraints. Everything else (especially everything in Moose::Meta::*) is optional, unless you want to dig into the MOP, in which case your needs are becoming quite complex and so you should expect to have to read 20+ modules worth of docs (and maybe even a book or two) to use it properly.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^10: Data Structures
by BrowserUk (Patriarch) on May 08, 2008 at 12:15 UTC | |
by stvn (Monsignor) on May 21, 2008 at 20:40 UTC | |
by BrowserUk (Patriarch) on May 23, 2008 at 06:28 UTC | |
by stvn (Monsignor) on May 23, 2008 at 21:42 UTC | |
by BrowserUk (Patriarch) on May 23, 2008 at 23:07 UTC | |
|