- Improve performance in
two_columns
via the zipper data structure and caching. - Fix a bug caused from a wrong renderer is used due to memoization. Thanks to @zbyrn who reported the issue (#2)!
- Fix a critical issue in
two_columns
: remove phantom spaces, and adjust costs to ensure optimality. - Mark
two_columns
as experimental.
- Add the
two_columns
construct - Rename
CostFacory.debug
toCostFactory.string_of_cost
- Reorganize pretty printing functions:
- Rename
Printer.Make.print
toPrinter.Make.pretty_format_info
(with slightly different signature) - Rename
Printer.Make.pretty_print
toPrinter.Make.pretty_format
- Add
Printer.Make.pretty_print
,Printer.Make.pretty_print_info
, andPrinter.Make.pretty_format_debug
. - Essentially,
Printer.Make.pretty_print(*)
is suitable for printing to a channel.Printer.Make.pretty_format(*)
is suitable for printing as a string. The suffix_info
indicates that it returns debugging information.
- Rename
- Change
<>
to^^
to avoid shadowing the not equal operator (thanks to @EmileTrotignon who made the suggestion in the OCaml forum). - Improve documentation
- Use mdx for documentation
- Initial release