[Haskell-cafe] Meaning of "ribbonsPerLine" at
Text.PrettyPrint.HughesPJ ?
Malcolm Wallace
Malcolm.Wallace at cs.york.ac.uk
Thu Jun 19 08:44:47 EDT 2008
To answer the original question (in the subject line),
"The ribbon ratio is the number of times the ribbon fits into a line.
The ribbon is the number of characters on a line excluding leading
and trailing white spaces.
"
See also the original paper on which the Text.PrettyPrint.HughesPJ code
is based:
http://www.cs.chalmers.se/~rjmh/Papers/pretty.ps
section 7.4.
The idea is that the pretty-printer should not cram lots of text into a
single line, if it would look nicer split across two (shorter) lines.
The ribbonsPerLine ratio is the factor that determines this level of
"prettiness". A ratio of 1.0 means to cram everything into the line if
you can. A larger ratio means to go for more lines, but less text on
each. Somewhere between 1.2 and 1.8 is likely to be more or less
pleasing: 1.0 will be ugly, 2.0 or above will look decidedly fragmented.
Regards,
Malcolm
More information about the Haskell-Cafe
mailing list