It's reasonably easy to read.
But you could make it more readable.  Type signatures, naming the first lambda...

On 9/25/07, Andrew Coppin < andrewcoppin@btinternet.com> wrote:
While using Haskell, I often find myself writing convoluted
constructions such as this:

show_system =
  unlines .
  zipWith
    (\l ms ->
      "Eq" ++
      show l ++
      ": " ++
      (concat $ intersperse " + " $ zipWith (\n x -> x ++ " x" ++ show
n) [1..] (init ms)) ++
      " = " ++
      last ms
    )
    [1..] .
  map (map (take 8 . show))

And people complain that *Perl* is bad? This function is quite obviously
absurd. I mean, it works, but can *you* figure out what it does without
running it? The question is, can anybody think of a better way to write
this function? (And more generally, functions like it.)

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe