Space Math
aimath.org
aimath.org
As for screen-readers -> parsing s-expressions and converting them into a more meaningful reading of the equation is within our power as well.
That's not to say that everything should be a lisp, but in terms of unambiguously applying mathematical formulae, I think (* f (+ x 1)) is very distinct from (f (+ x 1)).
¯\_(ツ)_/¯ mileage may vary I suppose. As someone who uses LaTeX a lot myself, I'm not sure I'd be fully happy writing Scheme / Lisp instead either. But I'm not sure the article really gives us less ambiguity purely thanks to an extra whitespace.
The library works in the browser as well, so interactive TeX rendering from Clojure symbolic expressions and functions is available at the quickstart page here: https://nextjournal.com/try/samritchie/sicmutils
> Whitespace before and after assignment and binary operator of the lowest priority in the expression:
The AMS style guide[2, p. 117] suggests
> Align multiline equations on operators: verbs are aligned with each other and conjunctions are aligned with each other
I find these improves readability of my TeX files.
[1]: https://doc.sagemath.org/html/en/developer/coding_basics.htm... [2]: https://www.ams.org/publications/authors/AMS-StyleGuide-onli...
[0]: https://jmlr.csail.mit.edu/reviewing-papers/knuth_mathematic...
There are some fields where it is frequent problem, but I doubt this proposals is what will get the statisticians over this death cult where they use "p" for everything ...
Lowering barriers to understanding is inherently a good thing, and might even help some useful knowledge leak out of deeply isolated corners of academia.
As such, I do not like the second example with the code format int_5^20 4 x dx. The absence of backslash \ makes me think that "int" is a variable, "_5^20" is too tight for me, and dx also looks like a variable. Personally, I prefer typing \int_{5}^{20} 4 x \dd{x}, where \dd is your favorite differential typesetting (for me it is \mathop{}\!\mathrm{d}).
But I suppose it is only meant to be a substitute for MathJax and similar markup programs, and not actually Latex.
For example, when writing y = |x|^2 - 1, the fact that |x| is a function application of "abs" is the least of your worries. Even given that fact, you can disambiguate into a rather large variety of mathematica expressions. Perhaps you're defining a parametric curve, perhaps you're computing a boolean value for the comparison, etc, etc, etc.
> Mathematical notation can be ambiguous. [...] bad for students, because understanding how to talk about the notation is part of learning. And it is bad for anyone listening with a screen reader, because the words they hear could be different than the intended meaning.
> Space Math is not a programming language: it is a convenient way to type math formulas while capturing the author's intent.
> Space Math looks a lot like LaTeX math with all the backslashes and spacing adjustments deleted. But you can leave in the backslashes if you wish.
> To take advantage of the new features of Space Math, insert spaces to indicate implied multiplication instead of a 2-letter variable, or function application instead of implied multiplication: c(t + 1) is the function c evaluated at t + 1, while c (t + 1) is the quantity c times the quantity t + 1. A little space makes all the difference. In TeX, those expressions are typeset identically and a screen reader has to guess how to pronounce them. In Space Math output, there will be a tiny gap to indicate the implied multiplication and a screen reader will pronounce both expressions correctly.
> Is the point of Space Math to capture the semantics of the math expressions?
> Space Math allows the writer to create the intended formula, and generally focuses on preserving the information needed to pronounce the expression correctly. When an expression can have multiple meanings, but the pronunciation is the same in all cases, typically Space Math does not attempt to make a distinction.
Great but apparently not coded yet?
> How can I use Space Math?
> Space Math is currently under development, with the specification of the language as the first goal.
> The second step is to write a parser, followed by output routines to convert Space Math to TeX or LaTeXML or MathML. This will enable Space Math to be used in PreTeXt. If Space Math is adopted by MathJax, then it can become widely available.
It looks like op's making decision for mathematical document author and since I already see multiple nitpickings like this, it looks like a bad idea waiting to happen.
\mathrm{det}(A) shorten to \det{A}