See Moose - which looks pretty nice but isn't even trying to offer much above some OO syntactic sugar (nothing like a standardized collection / iterator interface, for example) on top of Class::MOP
This is because Moose is not trying to implement a standard library or collections framework, it is only trying to make OO nicer. And while I agree that a standard library is a good thing in theory, practice has shown that one size does not always fit all (see also - Ocaml's standard library, all the Java frameworks that have gotten traction in recent years, etc). Perl is a community (for better or worse) of strongly opinionated people, getting people to agree on some "standard" would take forever (see also - Perl 6 RPC process).
The problem with doing that, is that you'll end up with a fancy OO framework that isn't used by 90% of the code out there, which means you won't be able to use much of it when you're interfacing with most CPAN modules.
FWIW, Moose is built specifically to play nice with non-Moose CPAN modules and legacy non-Moose code (I have several partially Moosified apps in production). Moose would be absolutely useless IMO if it forced you to re-write everything in Moose and that was one of it's key design goals (otherwise $work would have probably just switched to Ruby or Python).
In languages like ruby & perl, OO is such a common need that the basic interface and conventions just HAVE to be worked out by the standard library,
I disagree with you here in regards to Perl. In Ruby they had to create a "standard library" of classes (Array, etc) because "Everything is an Object", whereas in Perl you could consider the standard library to be built-in (non-OO) arrays, hashes, scalars and the functions that operate on them.