Guys, This may be a known bug with MooseX::Declare, but I didn't see any mention of it in my cursory web search, so I thought I would ask about it here.
This code: use MooseX::Declare; class Foo { } class Bar extends Foo { } compiles fine. But this code: use MooseX::Declare; class Foo { } class Bar # this is my new class! extends Foo { } Gives me an error, specifically: Unmatched right curly bracket at mxdecl_bug line 9, at end of line Not enough arguments for main::class at mxdecl_bug line 9, near "}" syntax error at mxdecl_bug line 9, near "}" mxdecl_bug had compilation errors. I assume this is something about the way Devel::Declare works, but I don't understand that nearly well enough to offer a patch or anything. Is this something that can be fixed? I don't mind it myself so much, but I'm trying to convert an 11-person team here from using "whatever homegrown object I felt like making that day" to Moose, and as few things as possible such as "oh, and remember: don't put comments into the middle of your class declarations" would really be helpful. (I've got a few "change is Evil!" types over here who would jump on that as "proof" that switching to Moose would be bad. Not that that's your problem, of course, but hopefully you have some sympathy for my situation. <s>) Have to say in general, though, that Moose is rockin' my world right now. I looked at it several years ago, but the improvements (especially in terms of startup performance) combined with just overall kickass design really make Moose a pleasure to program in. I left C++ over a decade ago and never looked back, but on those rare occasions when I miss something about it, the things I miss are exactly what Moose provides. I know that lists like this are mainly for people to post problems, so I just wanted to make sure you guys got some good feedback too. Thanx for all the antlers! :-) -- Buddy