[Haskell-cafe] ANNOUNCE: enumerator 0.4.8

Ertugrul Soeylemez es at ertes.de
Wed Mar 30 01:15:34 CEST 2011


Hello John,

Sorry that I'm late.  And honestly one day for request submissions is a
bit narrow.

I have a request, too:  Right now it is difficult to compose
enumeratees.  An equivalent of (.) for enumeratees would be great.  So
instead of:

    joinI $ e1 $$ joinI $ e2 $$ iter

one could write

    let e = e1 .= e2 in e =$ iter

I would appreciate a 0.4.10 with such a composition operator.


Greets,
Ertugrul


John Millikin <jmillikin at gmail.com> wrote:

> Since the release, a couple people have sent in feature requests, so I'm 
> going to put out 0.4.9 in a day or so.
> 
> New features will be:
> 
> - tryIO: runs an IO computation, and converts any exceptions into 
> ``throwError`` calls (requested by Kazu Yamamoto)
> 
> - checkContinue: encapsulates a common pattern (loop (Continue k) = ...) 
> when defining enumerators
> 
> - mapAccum and mapAccum: sort of like map and mapM, except the step function 
> is stateful (requested by Long Huynh Huu)
> 
> Anyone else out there sitting on a request? Please send them in -- I am 
> always happy to receive them, even if they must be declined.
> 
> ---
> 
> Also, I would like to do a quick poll regarding operators.
> 
> 1. It has been requested that I add operator aliases for joinI and joinE.
> 
> 2. There have been complaints that the library defines too many operators 
> (currently, 5).
> 
> Do any existing enumerator users, or anyone for that matter, have an opinion 
> either way?
> 
> The proposed operators are:
> 
> ----------------------------------------------------------------------
> infixr 0 =$
> infixr 0 $=
> 
> (=$) :: Monad m => Enumeratee ao ai m b -> Iteratee ai m b -> Iteratee ao m 
> b
> enum =$ iter = joinI (enum $$ iter)
> 
> ($=) :: Monad m => Enumerator ao m (Step ai m b) -> Enumeratee ao ai m b -> 
> Enumerator ai m b
> ($=) = joinE
> ----------------------------------------------------------------------
> 
> 


-- 
nightmare = unsafePerformIO (getWrongWife >>= sex)
http://ertes.de/





More information about the Haskell-Cafe mailing list