Perl6 will be, but if you have little or no prior
exposure to OOP I cannot recommend Perl5 for this
purpose. (For purposes other than learning OOP,
Perl5 is of course wonderful.) Python perhaps, though
I personally found Python not to be to my taste.
My favourite book for learning the principles of OOP
is the Inform Designer's Manual. The problem domain
that Inform is designed to solve (besides being very
interesting and providing an excellent didactic
framework in general) lends itself spectacularly well
to an OO approach, unlike the highly contrived
examples in many books, and Graham Nelson is a
superbly talented writer.
The only thing is, the book is compiled in the wrong
order for this purpose, so you'll want to skip the
early parts (about the procedural portions of the
Inform language, arithmetic expressions, loops, and
so on) and instead go straight to reading the chapters
that cover the OO stuff. (The book can be understood
just fine in this order, and in fact used to be ordered
more this way in the third edition. But you want the
fourth edition, because it has many improvements.)
The fourth edition is available both online and in dead
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
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:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, 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, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||