Some of you might have noticed that I'm making use of Mouse in writing Test::Builder2. Obviously, Test::Builder2 can't have this dependency for real [1] but I want to see what happens when I have a real OO system. Mouse is nice in that it does 95% of what Moose does without the heavy overhead. Before release it'll have to be torn out and replaced with something stand-alone.
I looked at just copying in Mouse, but Mouse has dependencies which themselves have dependencies, some of them with XS. Ideally, what I want is Mouse::Tiny, or as I like to put it, "Muscle". [2] A stand-alone, single file, no non-core dependencies, 5.6 compatible implementation of 80% of Moose. That way I can just copy it into the Test::Builder2 distribution and have a real OO system. So, anyone want to take a crack at this? We can get a lot of millage out of just has() (with is, isa and default) and extends(). [1] It would be circular, or they couldn't use any Test::Builder derived modules which is about everything these days. [2] "musculus" ("muscle" in Latin) is the diminutive of "mus" ("mouse") "muscle" == "little mouse". -- 29. The Irish MPs are not after "Me frosted lucky charms". -- The 213 Things Skippy Is No Longer Allowed To Do In The U.S. Army http://skippyslist.com/list/