in reply to Re: Private method variations
in thread Private method variations

Problem is, that is run-time, not compile-time stuff.

When called from inappropriate classes, those methods throw an exception like foo() is a protected method of Foo!.

Can't say I like that. I want to know if my system is broken before I happen to stumble across a particular leg of code -- especially if it's not going to be covered very often.

Yes, some one else is going to chime in and say "Perl OO isn't like that", and I'll say "why shouldn't it be?". Hint: that's a rhetorical question.

Replies are listed 'Best First'.
Re: Re: Re: Private method variations
by stvn (Monsignor) on Mar 01, 2004 at 17:54 UTC

    I agree with you, that its nice to know at compile time, but perl isn't like tha...

    Yes, some one else is going to chime in and say "Perl OO isn't like that", and I'll say "why shouldn't it be?". Hint: that's a rhetorical question.

    Its not so much that Perl is not like that, its that the more "dynamic" OO languages are not like that. Smalltalk, Python, etc. etc. most of them don't have a concept of public, protected and private either. It's really an idea that is much more acceptable in a more "static" OO language where such "restrictions" are the norm. It's a trade-off really.

    Personally, I am waiting to see how they solve issues like this in the Perl 6 object model. It should be very interesting.

    -stvn