Gryphon Shafer > Filter-CommaEquals-0.01 > Filter::CommaEquals



Annotate this POD


Open  0
View/Report Bugs
Module Version: 0.01   Source   Latest Release: Filter-CommaEquals-1.01

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


        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


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.


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


Gryphon Shafer <>

        code('Perl') || die;

If you're not a member of PerlMonks (, you should be. My username is gryphon. Yeah, I'm a Saint; but I don't let that go to my head. I'd like to give special thanks to Larry Wall for Perl, Randal Schwartz for my initial and on-going Perl education, Sam Tregar for teaching me how to write and upload CPAN modules, and the monks of PerlMonks for putting up with my foolishness.


Copyright (C) 2005 by Gryphon Shafer

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

syntax highlighting: