[Haskell-cafe] efficient chop

Ivan Lazar Miljenovic ivan.miljenovic at gmail.com
Wed Sep 14 17:31:19 CEST 2011


On 15 September 2011 01:24, Sean Leather <leather at cs.uu.nl> wrote:
> On Wed, Sep 14, 2011 at 05:03, Kazu Yamamoto wrote:
>>
>> I would like to have an efficient implementation of the chop function.
>
> [...]
>
>>
>> Are there any more efficient implementations of chop? Any suggestions?
>
>   chop xs = go xs id ""
>     where
>       go ""     _               = id
>       go (c:cs) ss | isSpace c  = go cs (ss . (:) c)
>       go (c:cs) ss | otherwise  = ss . (:) c . go cs id

Why the extra case for go?  The otherwise guard can be part of the
second case...

-- 
Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com
IvanMiljenovic.wordpress.com



More information about the Haskell-Cafe mailing list