[Haskell-cafe] missing optimization for (++)