
On 25 Apr 2009, at 19:08, Felipe Lessa wrote:
On Sat, Apr 25, 2009 at 10:34:05AM -0400, Xiao-Yong Jin wrote:
You don't write lisp, do you? Or probably it is just me. But I would prefer to write the line as
newtype MyCoolMonad = MyCoolMonad (FirstTransformer (SecondTransformer (ThirdTransformer Whatever))) deriving (Functor, Monad, FirstClass, SecondClass, ThirdClass, SomeOtherClass)
Doubtlessly, this is better than a one-liner, and I don't write lisp :).
Doubtfully, after reading a message from Daniel Fischer.
Also, I don't mistake the transformers as different parameters because of the parenthesis
You should really try Lisp. In my opinion, parenthesis are a kind of noise - too small, too many.
and because they're transformers, reading their names gives you a clue of how they may be used.
So... you really think transformers CAN'T be parameters? You're going to be surprised.
Whoever knows transformers expect to see this kind of nesting.
Whoever knows Haskell - no offense - expects to see both.