Opened 3 years ago

Closed 4 weeks ago

Last modified 4 weeks ago

#7666 closed bug (invalid)

excessive space and time usage for rendering (somewhat) deeply nested Docs

Reported by: j.waldmann Owned by: dterei
Priority: normal Milestone: 7.12.1
Component: Core Libraries Version: 7.6.2
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Revisions:

Description

I was running into serious performance problems when printing moderately sized Doc and Xml data (HaXml goes via Doc).

Since pretty is shipped with ghc, this is potentially dangerous. Users will just assume that these core components are tried and tested, and working efficiently.

More info: http://article.gmane.org/gmane.comp.lang.haskell.cafe/103210

See also: http://stackoverflow.com/questions/9761507/which-pretty-print-library

Test case (builds an Xml tree with HaXml and renders it via the pretty library): https://github.com/jwaldmann/haskell-tpdb/blob/master/test/speed.hs

Change History (6)

comment:1 Changed 2 years ago by igloo

  • difficulty set to Unknown
  • Milestone set to 7.8.1
  • Owner set to dterei

comment:2 Changed 16 months ago by thoughtpolice

  • Milestone changed from 7.8.3 to 7.10.1

Moving to 7.10.1

comment:3 Changed 11 months ago by thoughtpolice

  • Component changed from libraries/pretty to Core Libraries

Moving over to new owning component 'Core Libraries'.

comment:4 Changed 8 months ago by thoughtpolice

  • Milestone changed from 7.10.1 to 7.12.1

Moving to 7.12.1 milestone; if you feel this is an error and should be addressed sooner, please move it back to the 7.10.1 milestone.

comment:5 Changed 4 weeks ago by thomie

  • Resolution set to invalid
  • Status changed from new to closed

Closing as invalid, since the pretty bug tracker is here: https://github.com/haskell/pretty/issues.

I did try to build your testcase. But besides haxml, it also requires a package called tpdb, which itself has so many dependencies I gave up.

If you do reopen on the pretty bug tracker, pleas make the test smaller, include build instructions, and expected output.

comment:6 Changed 4 weeks ago by thomie

To be fair: tpdb probably had less dependencies when you submitted this bug. It also depends on wl-pprint-text now, perhaps because pretty is too slow/uses too much memory...

Anyway, please open a bug on the pretty bug tracker, it will hopefully get more attention there.

Note: See TracTickets for help on using tickets.