—package
FAST::List::Generator;
=head1 NAME
FAST::List::Generator - provides functions for generating lists
=head1 VERSION
version 0.974
=head1 SYNOPSIS
this module is an alias for L<FAST::List::Gen>. it is the same as L<FAST::List::Gen> in
every way.
use FAST::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 C< '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;
=head1 LINKS
=over 4
=item * see L<FAST::List::Gen> for core documentation.
=item * see L<FAST::List::Gen::Benchmark> for performance tips.
=item * see L<FAST::List::Gen::Cookbook> for usage tips.
=item * see L<FAST::List::Gen::Haskell> for an experimental implementation of haskell's
lazy list behavior.
=item * see L<FAST::List::Gen::Lazy> for the tools used to create L<FAST::List::Gen::Haskell>.
=item * see L<FAST::List::Gen::Lazy::Ops> for some of perl's operators implemented as lazy
haskell like functions.
=item * see L<FAST::List::Gen::Lazy::Builtins> for most of perl's builtin functions
implemented as lazy haskell like functions.
=item * see L<FAST::List::Gen::Perl6> for a source filter that adds perl6's meta
operators to use with generators, rather than the default overloaded operators
=back
=head1 AUTHOR
Eric Strom, C<< <asg at cpan.org> >>
=head1 COPYRIGHT & LICENSE
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.
=cut
1;