On Monday 27 September 2010 18:09:08, Evan Laforge wrote: > > data Foo a b > > = Foo a > > | Bar b > > | Foobar a b > > deriving (Eq, Ord) > > > > There, that looks good. > > There is a trap if you do a similar thing with records: > > data Foo = Foo > { a :: Int > , b :: Int > } > > If you use '-- |' style haddock it can't go on 'a'. Since I tend to > want to put '-- |' on every field, I have to put the '{' on the > previous line.
Hm, yes. I always use '-- ^' haddock comments for record fields, so that didn't occur to me. > > As for other stuff, I don't like the vertical lining up thing. It's I haven't tried it yet. I think aligning corresponding fields has advantages - it makes it rather obvious to see which constructor uses which parameter types in many cases. On the other hand, with many fields you get a very scattered picture if some constructors only have few. That looks ugly and isn't easy to take in at a glance. I don't think I'll adopt it, but I plan to try it out. > too much work to type in, causes too much realigning when the top line > changes, sometimes causes things to get too far right, Yep > and breaks entirely with proportional fonts. Not relevant for me, when looking at Haskell or Python code, I value my fixed-width font, it just looks too weird in proportional fonts. > A plain indent as advocated above avoids all those problems. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe