NAME

Acme::IEnumerable - Proof-of-concept lazy lists, iterators, generators

SYNOPSIS

use v5.16;
use Acme::IEnumerable;

my @sorted = Acme::IEnumerable
  ->from_list(qw/3 2 1/)
  ->where(sub { $_ < 3 })
  ->order_by(sub { $_ })
  ->to_perl;

say join ' ', @sorted;

DESCRIPTION

Experimental implementation of a iterator/generator protocol and lazy lists on top of it, with plenty of generic methods inspired by .NET's IEnumerable interface and corresponding facilities in Ruby, Python, and Haskell. Mainly for discussion purposes.

STATIC METHODS

from_list

Creates new Acme::IEnumerable::List from the supplied list.

range($from [, $count])

Creates a new Acme::IEnumerable with $count integers from $from.

INSTANCE METHODS

take($count)

Creates new Acme::IEnumerable containing the first $count elements of the base enumerable.

...

...

EXPORTS

Nothing.

AUTHOR / COPYRIGHT / LICENSE

Copyright (c) 2013 Bjoern Hoehrmann <bjoern@hoehrmann.de>.
This module is licensed under the same terms as Perl itself.