4 ms·
The amount of effort we are putting into transcribing doodles into pixel accurate text is astonishing. In my undergrad days I loved LaTeX and friends because it
by noosphr 1y ago
The amount of effort we are putting into transcribing doodles into
pixel accurate text is astonishing. In my undergrad days I loved LaTeX
and friends because it let me convert my notes to digital paper and
websites without having to change how I thought.
Now that I'm older and wiser I think the whole thing is a waste of
time and a perfect example of cargo culting. The current maths notation
was largely invented by Euler so he could write to his contemporaries
with parchment and quill,
e.g. https://www.themorgan.org/blog/all-math-nerds-out-there https://www.themorgan.org/blog/all-math-nerds-out-there
That we are still using his notation three centuries later on
computers is both astonishing and saddening.
It's much better to use a sane and consistent notation that can be
entered as ascii in the first place (or Unicode if you hate long
names), viz. s-expressions.
| TeX | S-Expression |
|--------------+-------------------------------|
| 1 + 2 | (+ 1 2) |
| 1 - 2 | (- 1 2) |
| 1 \times 2 | (* 1 2) |
| frac{1}{2} | (/ 1 2) |
| a_i | (map a (range 0 n)) |
| \sum_i a_i | (apply + (map a (range 0 n))) |
| \int x^2, dx | (integrate '(expt x 2) 'x) |
Not only are the expressions consistent between all the normal
mathematical operators, they force you to think about what you're
doing. E.g. a sequence is a function from the nats to whatever objects
you are enumerating and an indefinite integral is a symbolic operation
- not a numerical one like the definite integral - both of those are
something that everyone is aware of, the same way they are aware of a
"Wet Paint" sign on a bench before they sit down.
- Almondsetat 1y agoInstead of the computer serving the user, this is a glaring example of forcing the user to serve the computer. Even though we might use a digital device, its output is still visual, so it is unclear why Euler's notation (which is a subset of mathematical notation) is obsolete. Latex is a tool for creating documents, not programs or proofs. So it's natural that it tries to make the conversion between what we want to see and what we want to write as seamless as possible.
- noosphr 1y agoChanging to a better notation is no more humans serving computers than replacing Roman numerals with Arabic ones was humans serving parchment and ink. In both cases a superior system was held back by people too used to an inferior one to understand why they need something better.
- Almondsetat 1y agoI'm still waiting for an explanation about how this would be superior when writing math documents
- noosphr 1y agoHere is a rather nice video that explains just how bad maths notation is at describing maths operations without a mountain of implicit assumptions about what each expression means: https://m.youtube.com/watch?v=iqlxsSrd-M4 https://m.youtube.com/watch?v=iqlxsSrd-M4
- Almondsetat 1y agoThis does not answer my question. For the third time, we are talking about writing a document, not doing maths. At this point I just think you're being obtuse
- noosphr 1y agoIf you aren't doing maths when you're writing or reading a maths document I have no idea what you're doing, but you sure as hell aren't reading it in any sense a mathematician would recognise.
- forgotpwd16 1y agoTeX is a typesetting system and not interested in semantics; AM is similar but simpler format meant for more casual use and to be quite readable even when not typesetted. What you're describing is essentially a computer algebra system. There's some overlap but they're different things. That said, your system kinda exists already (and has been for decades). Mathematica can be written fully in M-Expressions (given any expression can recover the M-Exp with `FullForm[HoldForm[...]]`) and can convert to TeX (given any expression with `TeXForm[HoldForm[...]]`) for each if you want. | TeX | M-Expression | |--------------+-----------------------------------| | 1 + 2 | Plus[1, 2] | | 1 - 2 | Plus[-1, 2] | | 1 \times 2 | Times[1, 2] | | frac{1}{2} | Times[2, Power[2, -1]] | | a_i | Map[a, Range[0, n]] | (* or better: a[i] *) | \sum_i a_i | Apply[Plus, Map[a, Range[0, n]]] | (* or better: Sum[a[i], i] *) | \int x^2, dx | Integrate[Power[x, 2], x]]] | Interestingly (didn't know it myself either) internally notation is even simpler than your described system as you can see by minus/frac examples. Note that `a_i` examples can exist in indefinite form, which is why the commented forms are more correct given no other context. There's also Emmy which is a vastly expanded port of scmutils (from SICM) embedded in Clojure but haven't used it much. Being embedded in Clojure, uses sexps and, when used in Clerk environment, can render to TeX.
- noosphr 1y agoWhile you're right about Tex, that was more a critique of LaTeX, which is the only language that understands how to typeset everything after the '- in the table. As for m-expressions they also came from lisp, but were abandoned because s-expressions had so much more expressional power, since they were composable as expressions and as code.