Time for a rewrite

2009-11-10 Thread Yuval Kogman
Just kidding ;-) But there is some truth: 1. MooseX::Declare has gained us a lot of insight on what we can do substantially better 2. We learned how to structure extensibility with traits 3. we got a bunch of stuff wrong (ranging from slightly annoying to oops, sorry) 4. we have probably gotten

Re: Time for a rewrite

2009-11-10 Thread John Napiorkowski
...@woobling.org To: moose@perl.org Sent: Tue, November 10, 2009 2:49:44 PM Subject: Time for a rewrite Just kidding ;-) But there is some truth: 1. MooseX::Declare has gained us a lot of insight on what we can do substantially better 2. We learned how to structure extensibility

Re: Time for a rewrite

2009-11-10 Thread Yuval Kogman
this tension. 5. THE CODE GEN I HATES IT OMG OMG I HATES IT SO MUCH. Unfortunately I've tried time and time again to rewrite it and failed. It's just too painful. Figuring out which features make it unreasonably hard to redo the codegen (i've since forgotten most of the annoying details) might

Re: Time for a rewrite

2009-11-10 Thread Yuval Kogman
Let's please focus on things that are wrong and need fixing first, not things that we might like to have in some fancy future moose.

Re: Time for a rewrite

2009-11-10 Thread Yuval Kogman
To clarify, this is not an RFC on how to improve Moose. We are already doing that, it's called MooseX and it's doing the job just fine. As always, after a feature is fleshed out a feature as a MooseX module we decide on whether or not to include it. If you want to propose a feature, do it that

Re: Time for a rewrite

2009-11-10 Thread Yuval Kogman
2009/11/10 Yuval Kogman nothingm...@woobling.org 1. few people understand when 'trigger' is fired, it could use a rethink (either make it *every* time something is set, or make 3 separate triggers, for accessors, constructors, and default values). If we find a way i guess i saw a balloon or

Re: Time for a rewrite

2009-11-10 Thread Evan Carroll
I've always liked the interaction between lazy and clear, clear resets the slot. That makes sense. The rest of it is all great. Trigger and Initializer were so confusing for me personally that I had to write specific notes about them.