Skip to content

Instantly share code, notes, and snippets.

@nicomen
Created August 1, 2012 05:17
Show Gist options
  • Save nicomen/3223904 to your computer and use it in GitHub Desktop.
Save nicomen/3223904 to your computer and use it in GitHub Desktop.
thoughts/questions re p5-mop
just some quick thoughts/questions after reading the docs in the github repo.
1. is it intentional that has mimics our/my using a sigil for the attribute name, rather than be consistent with class/method syntax with no sigil. (I understand it makes partly more sense in one way as that variable is later accessible with a sigil as if it was declared with my/our, but that part is kind of non-logical already, so maybe has foo, still could expose $foo,
1b) or allow attributes be accessed just as special methods that can be lvalues, or moose-like treated as subs all the way. which brings me to
2) aren't attributes now enforced to be scalars?
Should they be objects of the type attribute, or perhaps,
again, be a sub-like entity. Which in turn brings me to
setters/getters/deleters for attributes, which are popular in
other languages and would enable some more Moose
functionality.
3) I'm also wondering if the name DEMOLISH
couldn't be DESTROY, even if there already is such a special
function for packages? 3) How about before/after/around
keywords that are similar to method but are dispatched in the
corresponding order given a call to the corresponding method?
5) is the intention to be as low level as possible just to replace Class::MOP and the like, rather than replace Mo(o(u|ouse), only to provide a faster underlying MOP? (to me now this seems like something in between?)
Other than that, really nice work, and I've been drooling over the project for a while
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment