OO Perl

Theory - intro,topics,future Resources Interactive!

Brief Introduction to OO Perl and some comparisons to other languages.

Some theoretical Issues - explored through evaluation of some existing Perl modules: (back to top)

  • Are "Perl Objects" really "Objects"?

    Wrestling with the age-old question - "what is an Object"?

  • Are Perl "Classes" really Abstract Data Types?

  • Further wrestling with fundamental concepts motivated by the first question above.

  • Efficiency:

  • The Object Oriented HTMLParser module and its use of C code (presumably to create reasonable efficiency) - is the lack of effeciency a
    "Perl Issue" or a "OO Perl Issue"?

  • Encapsulation:


  • Building OO based lexers and parsers is easy using already existing perl modules, however, does the way Perl handles (or fails to handle) attribute encapsulation make it to misuse them? Experimenting with small examples illustrating the many ways Perl can make Objects and a more intricate one created with Parser::RecDescent.


    What "Design by contract" means in the Perl world- explore Contract module from CPAN

  • Polymorphism:



    The future: where OO Perl might be heading and/or where we think it perhaps should be heading. (back to top)



  • online tutorials:

  • Object Oriented Perl - nice short introduction to OO Perl, not for Perl newbies and doesn't go into a lot of detail.

  • papers

    Conway, D.M. Object Oriented Perl Cyberdigest - a nice overview of Conway's book - with selected commented extracts

  • other lists of resources

    Perl Object Oriented Meta-Tutorial - from Perl Mongers - provides somewhat of an outline of how to get into Perl OO

    Perl Stuff - just some perl resources, including a list of tutorials - includes pointers on creating "static class variables" something I tried once myself (this points out a pitfall related to my approach)

    Object Oriented Language - Perl - lots of links - some just about Perl in general and not just OO, but many on OO. A category on the Cetus-links on Objects and Components resource site.

  • faqs

    PerlFaqPrime - still under development, but has a few useful answers already

  • commentaries, opinions, works in progress

    RFC 137 from dev.perl.org - this one is maintained by Damian Conway, discusses some deficiences/ future directions of Perl and how Perl OO is, however, fundamentally sound as it is.


    Interactive Center (run examples):