Object/Lexical version 0.01 =========================== ABSTRACT Object::Lexical provides syntactic sugar to create objects. Normal C variables are used for instance data. C<$this> is automatically read off of the argument stack. This follows "real" OO languages, where user code need not concern itself with helping the language implement objects. Normal OO Perl code is ugly, hard to read, tedious to type, and error prone. The C<$self->{field}> syntax is cumbersome, and using an object field with a built in, like C, requires syntax beyond novice Perl programmers: C{field}}, $value>. Spelling field names wrong results in hard to find bugs: the hash autovivicates, and no "variables must be declared" warning is issued. SYNOPSIS package MyPackage; use Object::Lexical; # 'nononlex', 'noexport', 'nowrap'; sub new { my $counter; our $this; *inc = sub { $counter++ }; *dec = sub { $counter-- }; *inc3x = sub { $this->inc() for(1..3); }; instance(); } INSTALLATION To install this module, type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires these other modules and libraries: PadWalker COPYRIGHT AND LICENCE Copyright (C) 2003, Scott Walters This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.