One of the greatest things about developing using the NeXT/Apple toolchain is the consistent use of something called key-value coding. It's the kind of thing that, once you buy into its philosophy, will suddenly make a whole slew of things easier for you in ways that you never thought of before. Every time I move to a new platform, be it Python or Javascript or Perl, I always find myself frustrated by its absence, and find myself jumping through all kinds of stupid hoops just to do things that would be dead-simple if key-value coding were available to me.
Object::KeyValueCoding is a Perl implementation of KVC that you can glom onto your objects, or even glom onto everything in your system, and KVC will be available in all its glory (well, some of its glory... see below).
SYNOPSIS
use Object::KeyValueCoding;
package Foo;
use base qw( Bar Object::KeyValueCoding );
...
my $o = Foo->new();
$o->setBar("quux");
...
print $o->valueForKey("bar");
quux
Product's homepage
Requirements:
· Perl