-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
add Compiler diagram #49893
add Compiler diagram #49893
Conversation
3db1332
to
6d731e0
Compare
I've cleaned up the design up a bit for symmetry and legibility. Feedback is appreciated. |
The green on orange text is a bit hard to make out, and the "Specialize" from "Method Dispatch" to "IR" could do with a different layout/position - it looks a bit odd that it's the only text crossing a colored box boundary. |
6d731e0
to
1aae7cc
Compare
Thanks for the great feedback @Seelengrab! I tweaked the colors and alignment a bit. I agree yellows are tough on the eyes! |
Thank you! Yeah, that's easier to follow. |
1aae7cc
to
c086012
Compare
Thanks for the feedback @cormullion, good catch! |
Note that CI seems to fail here. |
c086012
to
f485461
Compare
LaTeX does not have good support for SVG. A workaround is to keep both SVG and PNG formatted images, and to refer to the PNG images in the md document. This is an upstream issue that requires Documenter.jl to improve the SVG support of the LaTeX backend. |
Simplest to just check in a png as well |
This is inspired by the diagram presented by Lionel Zoubritzky in his 2018 JuliaCon talk. This gives a visual overview of what is happening in the compiler.
f485461
to
50e26e8
Compare
I've opted to commit both the PNG and SVG. It was done in Google Draw, so there is unfortunately no other lossless format we can use for posterity. |
There is also https://github.com/JuliaDocs/DocumenterMermaid.jl for things like this now, but will probably also fail in PDF output. |
This is inspired by the diagram presented by Lionel Zoubritzky
in his 2018 JuliaCon talk.
This gives a visual overview of what is happening in the compiler.