http://www.perlmonks.org?node_id=930076


in reply to Re^3: How Large Does Your Project Have To Be to Justify Using Moose? (modular)
in thread How Large Does Your Project Have To Be to Justify Using Moose?

That's funny, given that what else you said in this thread is only slightly truncated at:

Sure, but when I write code that's completely stateless, I rarely need polymorphism and probably don't need objects at all.

Yet even if someone's going to write OO spaghetti, I'd rather debug Moosified OO spaghetti than hand-rolled OO spaghetti, because there's a non-zero chance that the Moose version at least pretends to care about things like encapsulation and declaration of attributes.


Improve your skills with Modern Perl: the free book.

  • Comment on Re^4: How Large Does Your Project Have To Be to Justify Using Moose? (modular)

Replies are listed 'Best First'.
Re^5: How Large Does Your Project Have To Be to Justify Using Moose? (modular)
by JavaFan (Canon) on Oct 13, 2011 at 06:25 UTC
    Sure, but when I write code that's completely stateless,
    Eh? Just because an object has state, doesn't mean it has to expose its internal state on an API.

    My objects typically aren't stateless. Most of the time, the external world will not be able to peak at the internal implementation of state.

    I rarely need polymorphism and probably don't need objects at all.
    When I write code and I have the need to group a bunch of attributes in a container, I use a hash, and probably don't need objects at all.

    But if I want to encapsulate something, I use objects, and actually encapsulate by not making most of the attributes visible.