I just registered SolverTraces.jl, a simple library for creating colourful solver traces in the REPL. I mostly developed this for my Hartree–Fock solver (see picture), but it is general and simple enough to adapt to other iterative things where you want to keep track of a few numbers, preferably with colour.
Thanks for this, it looks very cool! I’m not sure about the printing of exponents in unicode in the errors though: the exponent is very small, and it’s the most important information. I’ve long toyed with the idea of printing the log10 instead, but never quite got around to it…
edit: I see you’ve got in your TODO list “* Nested solver traces for algorithms where each step necessitates inner solves. It would be interesting to support such cases and have togglable visibility of nested traces.” → yes please! maybe a good option is to use the terminal’s auto-erasing capabilities for this, so it doesn’t pollute the output but you still see it going on
It looks good on a 5k screen . It is however easy enough to customize Tolerance to (not) use superscripts. PR welcome!
Re the nested solvers, this is not something I need myself at the moment, it’s just something I remembered was handy when working with large-scale DAE problems in my long-lost company days. I don’t really have any problems of that kind on my hands though, so maybe we could work something out together?
I realized that my comment might be misleading. My point was not there is yet another terminal-based table log user interface. I wanted to point out it would be much nicer if packages for iterative algorithms emit table logging events with a specific format that are decoupled from how they are shown. This way, users can view them with their favorite “monitors”; on terminals, IDEs, web browsers, etc.