I've come here
again to make a suggestion to break up this OOP log jam.
Inspired by this bit of history (Chapter 7 intro) of Cozen's Perl 5 Internals tutorial:
In 1996, someone
* (I think it was Chip. Must check.)
announced a challenge - the first person to write a compiler suite for Perl would win a
laptop. Malcolm Beattie stepped up to the challenge, and won the laptop with his B
suite of modules. Many of these modules have now been brought into the Perl core as
standard modules.
I propose a similar offer be made for "OOP" in Perl. Here's how I envision it going:
- Perl inteligensia lock themselves in a dark, smokey room - not being allowed to leave until they generate a minimalfunperlish "spec" for OOP Perl.
- Said spec is published with the offer that the first person to publish a $WORKING CPAN module implement it (maybe to an agreed upon top level name space like O:: meant for other implementations) will win a laptop.
- Implementation also gets included in Perl core. (this avoids "15th competing standard" problem)
- Continue to encourage others to throw their own implementation under said official namespace or (better) work to improve the first one that is created that works.
Goals:
- make it fun, build some excitement,bring everyone (or most everyone) back together
- focus on a minimal spec mostly unconnected to silly implementation details
- encourage participation and competition from everyone
- make the weight of one's opinion on the matter comensurate with their actual code contributions
- create a spec worthy of perl and all that is loved about it
What do I mean by minimal?
- as simple as possible, but not simpler
- won't prevent future phases or extensions
- doesn't necessarily require much or any internals hacking
- lets us Perl golf and doesn't constrain us to putt-putt
If we can get something like this going at the highest levels, I will be the first one to throw down $50 in escrow. If it succeeds, I'd be happy to throw in more towards buying the winner a laptop.
And not to spoil it with my opinion, but I think whomever is involved in the minimal (and fun and perlish) spec creation should at least do themselves the favor of taking a look at how Qore presents OOP in a very Perl-like language. That's not necessarily an endorsement, I don't think it's perlish or fun enough; but it is one more source of inspiration (yanno that we can steal).
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.