-
Notifications
You must be signed in to change notification settings - Fork 159
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pretty-printing for GEM #3833
Comments
The branch |
I vaguely remember have done some work on pretty printing in sympy before, might be able to work on this. |
LaTeX or similar fancy formatting is not what I had in mind for this issue, but you can create another issue for that. While the current |
I see. So we want to implement str in a DAG-aware fashion, which is a nice idea. |
I think @narciuch has done something on this using Graphviz. Maybe it's possible to get that to spew a nice string, but google did not give me a straight answer on how. |
There is also |
Yes true, but I don't think it's nice to read. If pprint is what Miklos was after maybe we can close this? |
I started something on DAG-aware pretty printing to ease debugging, which then I abandoned working on as I did not need it that much any more for debugging. This half-baked version was merged when I had left, that is now |
I've implemented a graph pretty printer on branch tsslac_optimisation, under firedrake/slate/view_gem_dag.py It can generate DAG aware graphs, simple parent to child trees and DAG unaware full graphs. I've only used it on simpler trees for debugging, so not sure how well it will scale to large trees or if these graph types are useful to others, but its quite an easy tool to work with so shouldn't be too hard to adapt. The graph can be printed to different formats as provided by Graphviz. I've found the png format quite reader-friendly, but unfortunately haven't seen any that give reader-friendly textual-based output. |
A DAG-aware, nice pretty-printing for GEM would be handy when debugging.
The text was updated successfully, but these errors were encountered: