package Acme::Currency; use 5.006; use strict; use warnings; use vars '$VERSION'; $VERSION = '1.00'; use Filter::Simple; use vars '$String'; $String = '€'; FILTER_ONLY code => sub { s/\Q$String\E/\$/g; }; sub import { my $class = shift; my $str = shift; $String = $str if defined $str and $str !~ /^\s*$/; } 1; __END__ =head1 NAME Acme::Currency - There are other currencies beside $$$ =head1 SYNOPSIS use Acme::Currency; €scalar = "string\n"; @array = 1..10; €array[2] = 2; no Acme::Currency; print $scalar; # prints "string\n"; use Acme::Currency '¥'; ¥money = '¥1.12'; @time = ( ¥money, ¥and_I_mean_it ); # Just kidding or I wouldn't be writing this. =head1 ABSTRACT Why confine yourself to using the American Dollar as scalar-context sigil? There's a few currencies out there and in the age of internationalization and Unicode, there is no reason not to use them for our evil purposes. =head1 DESCRIPTION This module uses a source filter to replace every occurrance of a given string in the source code with the $-sigil. That means using the @ in place of the Yen symbol should yield interesting arrays. (Or none at that.) By default, using Acme::Currency will use the € character as the scalar sigil. =head2 EXPORT None by default. =head1 SEE ALSO L New versions on CPAN or http://steffen-mueller.net =head1 AUTHOR Steffen Mueller, Ecurrency-module at steffen-mueller dot netE =head1 COPYRIGHT AND LICENSE Copyright 2003-2005 by Steffen Mueller This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut