duckduckgo / p5-app-duckpan

DuckDuckHack OpenSource Development Application
http://metacpan.org/module/App::DuckPAN
Other
53 stars 47 forks source link

Usage of Moose #337

Closed GuiltyDolphin closed 8 years ago

GuiltyDolphin commented 8 years ago

@zachthompson @moollaza A question about Moose vs Moo:

Understandably, for Roles and other elements of the ZCI repositories it is undesirable to use Moose as it doesn't offer enough features useful to those use-cases to compensate for the loss in speed - I've experienced 'large' increases in speed switching from Moose to Moo in those cases where the IAs get used repeatedly very often (in tests, for example).

However, there is no such restriction for DuckPAN - we do not have the overhead of needing to call DuckPAN over-and-over with 'fresh copies'; and DuckPAN is rather large so would likely benefit from some of Moose's features.

What do you think? Moo/Moose are highly compatible so would you have any objections to the use of Moose where appropriate; where the features would be useful?

Additionally, working on this large project some form of typing would be quite useful to improve clarity for any new users, as well as ensure we aren't doing anything too wild!

zachthompson commented 8 years ago

We generally steer clear of Moose unless absolutely necessary. Not sure where you think it would have benefits.

GuiltyDolphin commented 8 years ago

@zachthompson Oh, why steer clear?

Moo is probably fine - I'm mainly just thinking things like the more advanced typing system might come in handy, but we can probably get away with typing primitive structures where necessary!

zachthompson commented 8 years ago

@GuiltyDolphin It is slow loading, which is fairly important for duckpan. We don't want duckpan to feel sluggish, as much as possible, and it would likely not help.

GuiltyDolphin commented 8 years ago

@zachthompson Mmm, DuckPAN ain't the fastest, but yeah, we don't want it to slow down too much! (And I guess it would be loading over several packages?).