[Haskell-cafe] Efficiency Question
Georg Martius
mai99dgf at studserv.uni-leipzig.de
Sat Jan 15 04:05:29 EST 2005
Hi Daniel,
On Fri, 14 Jan 2005 21:57:25 +0100, Daniel Fischer <daniel.is.fischer at web.de> wrote:
<snip>
> Finally, in several contexts I needed to cons an element to one of a pair of
> lists, so I defined
>
> infixr 5 &,§
^^^
Please be aware that you won't find this paragraph symbol on a uk or us keyboard. AFAIK it is just on the german one.
>
> (&) :: a -> ([a],[b]) -> ([a],[b])
> x & (xs,ys) = (x:xs,ys)
>
> (§) :: b -> ([a],[b]) -> ([a],[b])
> y § (xs,ys) = (xs,y:ys).
>
> I find them useful (though I don't like the symbols, if you have any better
> ideas, thx) and for splitAt, (&) saves another reduction per step.
I think these operators should be more related to ":" like ":&" "&:" or similar. However, in my opinion this special cons operators could be just functions with a meaningful name like "consfst" and "conssnd". It would provide much more readability.
Cheers,
Georg
--
---- Georg Martius, Tel: (+49 34297) 89434 ----
------- http://www.flexman.homeip.net ---------
More information about the Haskell-Cafe
mailing list