From: Jesse Luehrs Date: Sat, 30 Jul 2011 23:02:50 +0000 (-0500) Subject: more todo X-Git-Tag: 2.0205~17 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=f7cff4ecace50646ea67ca05264a7c766fa9b6a6;p=gitmo%2FMoose.git more todo --- diff --git a/TODO b/TODO index e251ce0..95ad01c 100644 --- a/TODO +++ b/TODO @@ -145,6 +145,36 @@ that people would think to use first is the method that they actually mean. Something like renaming find_method_by_name to find_method, and get_method to find_local_method or something along those lines. +=== Move load_class and related stuff out to an external module + +Choices include Class::Load, Module::Runtime, or writing something ourselves. +Module::Runtime doesn't currently support is_class_loaded, and neither of those +two support load_first_existing_class, and we have is_class_loaded in XS at the +moment, because we call it enough internally (mostly by load_class) for it to +be noticeable. + +=== Move method modifiers out to an external module + +Class::Method::Modifiers uses a different method for doing method modifiers, +which I'm not sure why we aren't using in Moose right now. Optionally using +Class::Method::Modifiers::Fast would be even better - it uses Data::Util to +implement XS method modifiers, which could help things a lot. + +=== Move type constraints out to an external module + +There's nothing about our type constraint system that requires being tied to +Moose - it's conceptually an entirely separate system that Moose just happens +to use. Splitting it out into its own thing (that Moose could extend to add +things like role types) would make things conceptually a lot cleaner, and would +let people interested in just the type system have that. + +=== Merge Class::MOP and Moose + +This is a long term goal, but would allow for a lot of things to be cleaned up. +There's a bunch of stuff that's duplicated, and other stuff that's not +implemented as well as it could be (Class::MOP::Method::Wrapped should be a +role, for instance). + == Things to contemplate