Daniel I. Scully


Maths in Early HTML

Tim Berners-Lee invented HTML and the web while working at the particle physics lab CERN as a way for scientists to communicate ideas. It will come as no surprise to learn that a large part of science comes in the form of maths, so it’s surprising that even today maths has never really been given proper attention when it comes to display on websites. But it could all have been so different…

The language designed to put maths into websites, MathML, has existed for many years now but has seen poor (until recently non-existent) support from major web browsers. And although it has recently been recognised as a part of HTML 5 and the latest versions of e-book format EPUB, that situation is only slowly improving (though I must mention here the excellent MathJax polyfill that makes maths online possible).

But I recently discovered that we came close to having maths as a native part of the web about the time I was getting my first computer.

It turns out that back in the early 90’s were published HTML+ and then HTML3, attempts to update HTML, adding support for tables, text flow around images and maths. The specifications for math (+ and 3) were very different to the tag-heavy format we have now in MathML and were instead influenced by LaTeX (a popular format in science at the time, and unfortunately still now).

Like today’s MathML they was rooted in a <math> element and is probably best illustrated by the example in the HTML3 specification: “the integral from a to b of f(x) over 1+x” would be marked up:

<MATH>&int;_a_^b^{f(x)<over>1+x} dx</MATH>

There are many things to like about this idea, particularly because it’s so much lighter for an author to type, let alone read, than MathML. Perhaps the <over>, <above> and <box> tags were not so ideal, but it’s much more like how I would want to write maths online. I can’t help but wonder whether maths would have spread more widely across the web if writing it had been so easy.

Unfortunately, the HTML+ proposal was replaced by the HTML 3 proposal which in turn expired – only ever seeing use in the W3C’s own test browser. Instead the W3C published HTML 3.2 as a new standard which sadly chose to sideline maths to a separate specification that became MathML.

Still, the legacy of HTML 3 is not entirely gone. Recently while scouring for details on some old particle physics simulation software I was pleasantly surprised to discover its documentation was provided in HTML 3, many pages also including <math> tags! The page on the “total cross-section of pair production by photons” is a nice example and though your browser won’t recognise the <math> you can still browse the source and wonder.