Pretty cool once you know what the function does, but I must admit I
wouldn't immediately guess the purpose of the function when written in
this way.

2009/3/24 Miguel Mitrofanov <[email protected]>:
>> | As an example, with the takeList function I posted.
>>
>> I looked at it, found nothing wrong with the original, and absolutely
>> hated your "fixed" version. I might have written it like this, instead:
>>
>> ~    buildPartitions xs ns = zipWith take ns . init . scanl (flip drop)
>> xs $ ns
>
> Maybe it's just me, but I think that
>
> takeList ns xs = evalState (mapM (State . splitAt) ns) xs
>
> or even
>
> takeList = evalState . map (State . splitAt)
>
> would be much clearer than both versions.
> _______________________________________________
> Haskell-Cafe mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>



-- 
Eugene Kirpichov
Web IR developer, market.yandex.ru
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to