Actually there are some implementations for Perl 6 gather and take, for example Perl6::GatherTake. It seems that many interesting features are introduced by Perl 6...

Comprehensions generate lists. A comprehension consists of generators which offer operands, guards which behave like assertions on the operands, and an expression for computing an element with "legal" operands. Some languages (such as Erlang, Haskell, .etc) have such feature builtin already.

A comprehension could be derived from some monad comprehension, which implies normal evaluation order among all generators and guards. However, it is beyond the current discussion.

In HOI::Comprehensions, I generate something like a lazy for-loop - an "iterator", which is composition of function calls, is stored as a string, and evaluated each time a "step" is made. It is a little slow since eval is applied on each computation. Perhaps gather & take is a better idea.


In reply to Re^4: A "Fun"ctional Attempt by withering
in thread A "Fun"ctional Attempt by withering

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.