Hacker News new | ask | show | jobs
by lisper 3804 days ago
Current math notation may be the result of multiple iterations, but they all took place before the widespread availability of computers. Current math notation is optimized for hand-writing and manual rather than automated proof checking. It may be great for paper and pencil, but times have changed.

And BTW, the notation actually sucks for paper-and-pencil too because of its ambiguity. See:

http://mitpress.mit.edu/sites/default/files/titles/content/s...

3 comments

When did Scheme get this "curried define": (define (((f x) y) z) blah)?

I'm sure that isn't in R5RS and I don't see it in R7RS. I found a description in the Racket manual.

In any case, I like how they are making the context explicit. In the regular math notation for the physics, you just say something like "the Lagrangian for the free particle" and then just spew out something with free variables sticking out of it, like velocity "v". The hacker in me of course asks, how the heck does that work if I have two particles? There is only one v? When we have two, we hand-wave in some subscripts: v1, v2, ... This system makes it explicit: it's the Lagrangian for a particle. So the particle appears as a parameter, and that parameter has accessors on it to retrieve its properties: velocity of the particle, etc.

It's definitely not perfect, but it's much better than any alternatives I have seen. Would love to take a look if there are any good proposals based on S-Expressions or other computer-era notations.
But I still do all of my math on pen and paper