pretty-expressive-ocaml

An implementation of "A Pretty Expressive Printer" in OCaml

ISC License

Stars
22

Bot releases are hidden (Show)

pretty-expressive-ocaml - 0.5 Latest Release

Published by sorawee 7 months ago

CHANGES:

  • 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)!
pretty-expressive-ocaml - 0.5

Published by sorawee 7 months ago

CHANGES:

  • 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)!
pretty-expressive-ocaml - 0.4

Published by sorawee 8 months ago

CHANGES:

  • Fix a critical issue in two_columns: remove phantom spaces,
    and adjust costs to ensure optimality.
  • Mark two_columns as experimental.
pretty-expressive-ocaml - 0.3

Published by sorawee 8 months ago

CHANGES:

  • Add the two_columns construct
  • Rename CostFacory.debug to CostFactory.string_of_cost
  • Reorganize pretty printing functions:
    • Rename Printer.Make.print to Printer.Make.pretty_format_info (with slightly different signature)
    • Rename Printer.Make.pretty_print to Printer.Make.pretty_format
    • Add Printer.Make.pretty_print, Printer.Make.pretty_print_info, and Printer.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.
pretty-expressive-ocaml - 0.2

Published by sorawee 11 months ago

CHANGES:

  • 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
pretty-expressive-ocaml - 0.1

Published by sorawee 11 months ago

CHANGES:

  • Initial release
pretty-expressive-ocaml - 0.1

Published by sorawee 11 months ago

CHANGES:

  • Initial release