[Haskell-cafe] about Haskell code written to be "too smart"
ekirpichov at gmail.com
Tue Mar 24 15:33:15 EDT 2009
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
2009/3/24 Miguel Mitrofanov <miguelimo38 at yandex.ru>:
>> | 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
> Haskell-Cafe at haskell.org
Web IR developer, market.yandex.ru
More information about the Haskell-Cafe