Gryphon Shafer > Filter-CommaEquals > Filter::CommaEquals

Download:
Filter-CommaEquals-0.02.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  1
View/Report Bugs
Module Version: 0.01   Source  

NAME ^

Filter::CommaEquals - Adds support for ,= to any package or script

SYNOPSIS ^

    use Filter::CommaEquals;
    my @array = (42, 1138, 96);

    @array ,= 433;
    # exactly the same as writing: push(@array, 433);

    print join(', ', @array), "\n";
    # prints: 42, 1138, 96, 433

DESCRIPTION ^

Adds support for ,= to any package or script. Perl has +=, -=, /=, *=, .=, and so forth to operate on scalars, but it doesn't have ,= to operate on arrays. This module effectively lets you rewrite push statements with ,= instead.

For example...

    push @array, $element;
    push(@array, $element_1, $element_2, $element_3);
    push @array, [ 42, 1138, 96, 433 ];

...can now be rewritten as...

    use Filter::CommaEquals;
    @array ,= $element;
    @array ,= $element_1, $element_2, $element_3;
    @array ,= [ 42, 1138, 96, 433 ];

Cool, huh? Admit it. You want to write ,= instead of push, don't you. You can save typing 3 whole characters!

Filter::CommaEquals is scoped to the package or script that it's used in, but nothing more, and it requires Perl version 5.7.1 or higher.

MOTIVATION ^

A coworker complained about ,= not being in core Perl. After some thought, I realized writing ,= is faster (by 3 key presses) than push. Also, I'm lazy.

AUTHOR ^

Gryphon Shafer <gryphon@cpan.org>.

    code('Perl') || die;

LICENSE ^

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.

syntax highlighting: