NAME
English::Reference - use words to dereference things
SYNOPSIS
use English::Reference;
or
use English::Reference qw(deref);
...
print SCALAR \"Hello World";
DESCRIPTION
Provides the ability to use:
ARRAY $arrayref
CODE $coderef
GLOB $globref
HASH $hashref
SCALAR $scalaref
en lieu of
@$arrayref
&$coderef
*$globref
%$hashref
$$scalaref
or
@{$arrayref}
&{$coderef}
*{$globref}
%{$hashref}
${$scalaref}
As an added bonus, there is a function deref
; not exported by default; which you can use to dereference a reference of any type.
CAVEATS
You cannot do ARRAY{$arrayref} etc. This is not too bad seeing as the whole point of this module is to reduce the amount of punctuation you use.
Some constructs will not have the desired results.
print SCALAR $scalarref, "\n";
for example. You're actually calling a subroutine named SCALAR without parentheses. This subroutune eats everything following it, and your newline ends up in never never land.
AUTHORS
Jerrad Pierce <belg4mit@mit.edu, the_lorax@usa.net> Jeff Pinyan <japhy@pobox.com> Casey R. Tweten <crt@kiski.net>
SEE ALSO
English(3).