[^0]: Compare Pythagorean theorem written in MathML and TeX.
MathML:
<math>
<mrow><msup><mi> a </mi><mn>2</mn>
</msup><mo>+ </mo><msup><mi>b </mi><mn>2</mn>
</msup><mo>= </mo><msup><mi>c </mi><mn>2</mn>
</msup></mrow></math>.
TeX: $$
a^2 + b^2 = c^2
$$
I'll be surprised if someone preferred to write the first rather the second.What I’m advocating here is that GitHub translates TeX to MathML on their servers and serve us the MathML, as opposed to leaving the TeX as is and ship a JavaScript library to render it after it reaches our browsers. Chrome users won’t see a difference as they don’t support MathML, so they need MathJax as a polyfill. But there is a world of difference for us Firefox and Safari users.
Another benefit is that you could allow us to include the pure MathML (by hand or authored by some other tool) if we preferred that.
^1: and if they did write it by hand it would be written as
<math display="block">
<msup>
<mi>a</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>b</mi>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mi>c</mi>
<mn>2</mn>
</msup>
</math>I see. What confused me was the "options aren’t just MathJax and KaTeX, but also raw MathML" since those tools can be used server-side and they output some HTML or MathML or images. MathJax moreover besides TeX also takes MathML and AsciiMath input.
>Another benefit is that you could allow us to include the pure MathML
I guess they went with what most people work with since rendering TeX in Markdown complements their Jupyter notebook rendering.
>and if they did write it by hand it would be written as
Maybe. I copied my example from MDN docs git repo.
The main problems pointed out in the blog post are problems in _parsing_ the Markdown+TeX pages. The output could be MathML indeed, but this is an issue they could always fix later.