
Andrea Rossato
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@cl.cam.ac.uk http://www.chaos.org.uk/~jf/Stuff-I-dont-want.html (updated 2006-09-13)