Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^3: Cor—An object system for the Perl core

by 1nickt (Abbot)
on Jun 01, 2020 at 21:11 UTC ( #11117571=note: print w/replies, xml ) Need Help??


in reply to Re^2: Cor—An object system for the Perl core
in thread Cor—An object system for the Perl core

Neither does either proposed solution solve the problem.

I have a class. The class uses a bundle module. The bundle imports List::Util::any into the calling package.

I like to test my classes. I like to use Test::Most. If I use Test::Most with default imports I get an exception (under strictures).

Instructing Test::Most to not import Test::Deep in order to avoid this collision means that I cannot use the other methods in Test::Deep that I require.

Test::Most does not allow granular control over the exports of the modules it imports.

That's a design assumption: the user will either want all of Test::Deep or none of it. It limits the value of Test::Most.

I don't want to see similar design assumptions baked into Perl. No one set of assumptions can possibly meet everyones's needs.

It would be a mistake to put Cor or any other OOP framework into the Perl language.

Q.E.D.


The way forward always starts with a minimal test.
  • Comment on Re^3: Cor—An object system for the Perl core

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11117571]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (5)
As of 2020-09-18 19:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If at first I don’t succeed, I …










    Results (113 votes). Check out past polls.

    Notices?