Francesco 'Oha' Rivetti wrote:
On Sun, 31 Oct 2010 20:29:27 +0100, Moritz Lenz <mor...@faui2k3.org> wrote:
If we can efficiently match against a lazy string, and if this doesn't
turn the lazy string into a (large) normal string, then the best way
to process a file might be something similar to:
   my $fh = open ... err die;
   my $contents = cat($fh.lines);
, followed by matching on $contents.

Better still would be to provide a way for filehandles to be directly
asked to produce a lazy Str which reflects the file.

I guess there's no good reason not to have a .Cat method in the IO class
- another thing that'll likely appear when Cats are implemented.

What if a regexp may consider a lazy list of string as a single lazy string?

i have no idea exactly what does could mean in practice, but i would like
to see something like:

  MyGrammar.parse($fh.lines);

or better:

  MyGrammar.parse($io); # which could be a file or a socket

If you want to do that, please don't make it a behavior of lazy lists of strings, since that would be too magical. Instead, either do this using, for example, MyGrammar.parse() taking a Cat argument but that argument can be coerced from a string or array of string argument. -- Darren Duncan

Reply via email to