List::Generator - provides functions for generating lists
version 0.974
this module is an alias for List::Gen. it is the same as List::Gen in every way.
use List::Generator; my $range = <1 .. 1_000_000_000 by 3>; my $squares = gen {$_ ** 2} <1..>; my $fib = <0, 1, *+* ...>; say "@$fib[0 .. 10]"; # 0 1 1 2 3 5 8 13 21 34 55 list(1 .. 5)->map('*2')->say; # 2 4 6 8 10 <1..>->zip('.' => <a..>)->say(5); # 1a 2b 3c 4d 5e
each line below prints '1 9 25 49 81' :
'1 9 25 49 81'
functions: (gen {$_**2} filter {$_ % 2} 1, 10)->say; list comprehensions: <**2 for 1 .. 10 if odd>->say; dwimmy methods: <1..10>->grep('odd')->map('**2')->say; normal methods: range(1, 10)->grep(sub {$_%2})->map(sub {$_**2})->say;
see List::Gen for core documentation.
see List::Gen::Benchmark for performance tips.
see List::Gen::Cookbook for usage tips.
see List::Gen::Haskell for an experimental implementation of haskell's lazy list behavior.
see List::Gen::Lazy for the tools used to create List::Gen::Haskell.
see List::Gen::Lazy::Ops for some of perl's operators implemented as lazy haskell like functions.
see List::Gen::Lazy::Builtins for most of perl's builtin functions implemented as lazy haskell like functions.
see List::Gen::Perl6 for a source filter that adds perl6's meta operators to use with generators, rather than the default overloaded operators
Eric Strom, <asg at cpan.org>
<asg at cpan.org>
copyright 2009-2011 Eric Strom.
this program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
see http://dev.perl.org/licenses/ for more information.
To install List::Gen, copy and paste the appropriate command in to your terminal.
cpanm
cpanm List::Gen
CPAN shell
perl -MCPAN -e shell install List::Gen
For more information on module installation, please visit the detailed CPAN module installation guide.