[Haskell-cafe] Suggestions for a hReadUntilStr implementation
mrevelle at gmail.com
Sun Feb 4 13:58:48 EST 2007
Thanks, this'll be great to play around with.
On 2/4/07, Greg Fitzgerald <garious at gmail.com> wrote:
> > should finish evaluating when either the timer has run out or
> I recommend changing my implementation of hReadUntilStr so that the deadline
> is calculated upfront (have a look at System.Time), and then reducing the
> number of milliseconds for hReadUntilChar with each call to it.
> On 2/4/07, Matt Revelle <mrevelle at gmail.com> wrote:
> > Thanks for the responses.
> > Greg, your implementation looks useful but it's a little different
> > than what I was thinking (my apologies, I wasn't very clear).
> > In the implementation you posted, the timeout parameter is used to
> > limit the amount of time spent waiting to read an individual character
> > - I was hoping to use the timeout as an initial value for a timer that
> > should start running when hReadUntilStr is evaluated and the function
> > should finish evaluating when either the timer has run out or when the
> > string match has been found.
> > Martin, thanks for the link.
> > Cheers,
> > Matt
> > On 2/3/07, Greg Fitzgerald < garious at gmail.com> wrote:
> > > Hi Matt,
> > >
> > > > hReadUntilStr - that is, a function that takes a Handle as an input
> > > > source, a String to match, and a "Num a" as the number of seconds to
> > > > wait before returning a (String, Bool) where the String is all the
> > > > text read from the Handle until either matching or timing out and the
> > > > Bool is true if the input String was matched
> > >
> > > This might work for you: http://hpaste.org/289 .
> > >
> > > It throws an IO exception if hWaitForChar times out, and makes use of
> > > evaluation to schedule all the IO upfront so that grabbing the string
> > > can be done in pure code.
> > >
> > > Thanks,
> > > Greg
> > >
> > _______________________________________________
> > Haskell-Cafe mailing list
> > Haskell-Cafe at haskell.org
> > http://www.haskell.org/mailman/listinfo/haskell-cafe
More information about the Haskell-Cafe