Did you read the Traits paper?
I did and even though they mentioned prototype-based programming as related work, they did not mention any shortcomings of it or how traits (Perl roles) improves on it.
| [reply] |
... the Traits paper... did not mention ... how traits (Perl roles) improves on ... prototype-based programming. (paraphrased)
Note that the approach described by the Traits paper is a fairly general concept, and Perl 6 will not be blindly following their recipe.
I would expect that Perl 6 will support a delegation scheme that looks like a prototype-based system. The problem/goal is to enable this approach and others, so that you can combine a logging aspect and an exception-handling role with a access-control proxy, or whatever.
| [reply] |
chromatic, form your own assessment and espouse its
relative virtues. This is the formula:
1. Take something that needs to be said. "You're wrong!"
or "You missed a some nit!" aren't things that need be
said. The impact on the world is negligable.
2. Explain it. Paint a picture of what, why, and how.
Why is it good? What do people need to know? What tricks
are there? What pitfalls?
3. When other people do this, don't pretend that their
argument is propped up on one leg and try to kick the
leg out when it isn't. Specifically, if there are flaws
in their logic that lead to a faulty conclusion, it may
or may not be worth pointing that out. If their premise
is wrong, same. Attacking one point as if it to invalidate
everything said is naive and misleading to readers.
In this case, my post was a survey of issues. Though
you question one of my premises, it is not a critical one -
in fact, it was an issue I wanted readers to make up their
own minds about. You've only managed to state something
that should be obvious.
4. As long as we're talking about elemetary formal
logic, if one thing can't be proved (it was never
said that traits are mixins for certain, though it
was implied by Piers atleast, therefore there is no
confession) that doesn't automatically make the
opposite true. Truth and provability are seperate things.
The modest writer will post opinions as opinions,
not as an interpretation of anothers words, and not
as something infinately defensible. I've tried to
follow in the modest writers footsteps. Again, the
reader should find their own truth - this is only
evidence and opinion, some mine, some popular.
The reader that limits themselves to what is provable
does nothing but this sort of political nitpicking.
You're asking me to take issue with a source - the
traits document (which ghostview/ghostscript renders flawlessly). I'd ask you to do the same - I've
summerized popular opinion on the topic and made a
classification that is correct according to an outsiders
view of perl. Your turn - go read "Object Oriented
Design Hueristics". And don't cop that "I graduated
from college, I know everything there is to know about
OO" attitude. I hate that. C++ programmers used to do
that before the designpatterns/refactoring revoluation.
Now everyone studiously improves their skills without
boast or complain after college - except Perl programmers
and other script kiddies.
5. Get a life. I don't mean to single you out, chromatic -
I'm addressing everyone that mindlessly replies to posts.
Do you have the same attitude in real life, walking around,
trying to push everything over just to see if maybe
it will fall, or to make people think that maybe it
will fall? If you only want to chime in as agreeing or
disagreeing, upvote or downvote.
I hate this sort of henclucking. Since I haven't formally
renounced it yet, I thought I would do so once, just
so that I'm on record. So, anytime that you reply
to a post of mine in the future and I fail to resond
in a never-ending contest of one-upmanship, do me a
favor, and just assume that the lack of reply means
"I've said what I have to say, and I don't like how
you work". Now, in the past, other poeple have pointed
out things that were useful and interseting - not just
to me, but to anyone reading - and to those people -
you know who you are - I'm grateful.
-scott
Addendum:
PS - okey, maybe I don't like you for other reasons,
haven't had my coffee, am just bitter because no
one uses typesafety.pm and am probably wrong. I'll take
a more careful look - if they do infact allow delegation
I'll be seriously impressed. Still, I really really
need the negitive exp - I'm starting to itch past
level 4 and there are too many exp whores here. Whores!
Whores! | [reply] |
I'm sorry you're offended, but as far as I understand your argument, it's that:
- Perl programmers don't understand good OO programming.
- Perl 6 won't improve this.
- Perl 6 is adding roles for some reason.
- Roles complicate inheritance.
- Roles don't solve the real problem.
- Perl is doomed because Perl users are willfully ignorant.
I don't really care to argue whether I understand OO, because that's pointless. I don't particularly agree that Perl is doomed. I'm not thrilled when you imply that my head is "up my arse". It's not really worth replying to those points, though.
I do care that you seem to be confusing roles with inheritance, because the point of roles is to escape the oft-broken fascination with inheritance that seems to plague the popular object systems these days. That's why I've been arguing for them in Perl 6.
Again, I'm sorry if you're offended by me saying "Your conclusion seems wrong because your supporting argument is wrong." But what do you expect when your arguments are both insulting and wrong? If you wander around punching people, some of them are going to react.
| [reply] |