Hacker News new | ask | show | jobs
by mrpf1ster 9 days ago
Your translation only makes intuitive sense to you because you are well versed in programming.

I suspect if I showed a non-technical person with no background in either math or programming they would think both are nonsense until you explained it to them

3 comments

> I suspect if I showed a non-technical person with no background in either math or programming they would think both are nonsense until you explained it to them

I doubt it. Greek letters convey almost no information, whereas (one hopes) the function and variable names are chosen by a programmer to help the reader. The Greek letters used by mathematicians (and physicists) weren't used to convey information, they were used because typesetting, publishing and paper were expensive. They are optimised for brevity over readability.

It was a perfectly reasonable trade-off at the time, but times have changed.

As an aside, some programming languages (such as APL, and to a lesser extent Perl) did emulate the old Greek letter style. "Line noise" is a typical description of the result. No computer language aimed at software engineers and computer scientists does that now.

My example was contrived, I'm sure some smart people could come up with a SQL-esque language that is even more readable to non-technical folks than programming syntax. At a certain point though, your layman has to know the "atomic" (as in, you can't break them down further) mathematical concepts like "functions" and "infinity":

`sum function(x) from x=0 to x=infinity`

I am a research mathematician. In my field (abstract algebra, computational group theory), a sum or some such notation is like the most trivial of trivial things in terms of notation. There are a few things like sums that could in theory be made to "look more like what a computer programmer would expect", but that'd be just a tiny corner of it.

And if you think about how summation would look in Lisp or APL (which some smart people use to this day), I am not even convinced your argument for the "sum function" notation being superior holds in general.

yeah you'd have to make a "mathematical grammar" to cover all the cases. one problem with current mathematical notation is that it is optimized for writing by hand, not with keyboards. If you want to write mathematical notation with keyboards you have to use a complex typesetting tool like LaTeX to position all the super/sub-scripted, nested, etc. symbols.

And it all seems arbitrary anyway. Why are trigonometric functions written in english ("tan" being short for "tangent") but other stuff uses greek letters and other stuff still uses esoteric/abstract symbols? Why is the integral symbol shaped the way it is, and why use super/sub symbols for the bounds versus `integral [0,Inf] ...`?

In my ignorance, I'm assuming math is the way that it is because that's the way it's been for centuries, and messing with it harms its ubiquity. Math notation is not the way that it is because it's particularly well thought out. It's centuries of legacy tech debt that can't be changed. Kind of like how English is a crappy language in a lot of ways, but we can't change it now because too many people use it and you'd never get enough momentum to switch.

I'm sure some smart people could come up with a SQL-esque language that is even more readable to non-technical folks than programming syntax.

And somehow, none of the thousands of very smart mathematicians have done that, or if they had, it has not seen wide adoption. I recommend contemplating on this: if math could be made easier by changing notation, why hasn't this already happened?

Momentum, mainly. Richard Feynman invented a more intuitive triangle-based syntax for sin/cos/tan/etc but eventually abandoned it and conformed with mathematical norms for the sake of ubiquity.
The thing is that you basically cannot explain the math like you can the programming.

Tables, algos, and variables are all things people can generally quickly grasp. The construction is abstract but the function is tangible.

The math is working entirely on abstract objects, using abstract tools, governed by abstract rules. It's just all so desperately far away from anything even technical people have contact with.

This is true. Math is more abstract. Some aspects are more tangible; this is what they teach at school and undergrad university... But once you get to master level and PhD, it tends to become increasingly abstract... The utility is only visible to PhD engineers in very specific areas and in those cases, even the mathematicians themselves can't fully grasp the utility of their work and they probably don't really need to.

They don't seem to have any desire to reconcile their 'craft' with real world applications and this is probably why they're particularly good at it.