[Haskell-cafe] Re: Problems interpreting

Jón Fairbairn jon.fairbairn at cl.cam.ac.uk
Mon Sep 18 10:54:56 EDT 2006


Andrea Rossato <mailing_list at istitutocolli.org> writes:

> On Mon, Sep 18, 2006 at 12:42:59PM +0100, Jón Fairbairn wrote:
> > And if you do that, you can write it like this:
> > 
> >    subst e l'
> >        = concat . map subst_elem
> >          where subst_elem x
> >                    | x == e = l'
> >                    | otherwise = [x]
> 
> Pretty. Just to many keystrokes.

Keystrokes? Learn to touchtype!

> This should take two keystrokes less, probably:
> 
> subst e l [] = []
> subst e l (x:xs) = if x == e then l ++ xs else x : subst e l xs

but if you want short, do this:

> subst e l' = concat.map (\x->if x==e then l' else [x])

which beats yours by twenty seven characters and one bug ;-P

-- 
Jón Fairbairn                                 Jon.Fairbairn at cl.cam.ac.uk
http://www.chaos.org.uk/~jf/Stuff-I-dont-want.html  (updated 2006-09-13)



More information about the Haskell-Cafe mailing list