Live data from Hacker News

Ask HN: Why is math so obsessed with ancient syntax and frameworks?

news.ycombinator.com

1–10 of 20 posts

Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#1
In the world of programming, the syntax and forum of the language changes by the people who use it. Everything about the language is redesigned so people can understand it better.

Math (well, math to undergraduate college level) doesn't. To even have a chance of understanding a concept in math, you are forced to use an Ancient Greek symbol system. Once your done with that, the formulas are written in a very specific forum and very specific pattern that your forced to learn in order to understand it at a higher level.

In a way, it's like learning the concepts of object oriented java by only having access to assembly language syntax. Yes, it's possible to learn it that way but there are better ways to understand it.

Why is math so obsessed with ancient syntax and conceptual frameworks? Why isn't there a Python for math? Why isn't there new conceptual frameworks for math being used out there being created? Why does math feel so obsolete? Is the methods used for math today really the best way to present math to modern day people?

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#2
Math is not obsessed with ancient syntax, but, being written by hand, it is obsessed by short and 2d syntax.

If you did math with a keyboard, you could use bigger identifiers, and you would use a. ore linear syntax.

See for example Gerald Sussman's works eg. in SICM http://en.wikipedia.org/wiki/Structure_and_Interpretation_of...

Now this won't really happen because while theorems and algorithms are basically two faces of the same thing, programs are boring, while theorems are deep: in a program, there are a lot of small trivial theorems, that don't bring anything new to human knowledge in general (just some green printed paper to their "owners"), while in mathematicians' works, theorems are scarce, hard to demonstrate, and bring sometimes revolutionary new knowledge to humanity.

This means that apart from the still exceptionnal case of computer assisted theorem proofs, there is much more thinking time than typing/writing time in maths than in programming. Therefor mathematical writing is done by hand and short notations are not a problem.

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#3
well, there's mathematica/octave/matlab

using single letter variables is for convenience and done in another script to avoid confusion with the text and sometimes varies to encode information (real value vs vector vs matrix).

There's plenty of work to be done making math better but I don't think you'll get away from these conventions any time soon.

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#4
We use Greek characters simply because it's convenient to have additional symbols at hand. The choice of Greek is historic, but one also sees a little bit of Cyrillic and Hebrew.

Notation has evolved since ancient Greece. Euclid, for example, is quite readable in translation, but he did not use modern shorthand. See for yourself:

http://aleph0.clarku.edu/~djoyce/java/elements/elements.html

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#5
post #4

We use Greek characters simply because it's convenient to have additional symbols at hand. The choice of Greek is historic, but one also sees a little bit of Cyrillic and Hebrew. Notation has evolved since ancient Greece. Euclid, for example, is quite readable in translation, but he did not use modern shorthand. See for yourself: http://aleph0.clarku.edu/~djoyce/java/elements/elements.html

That assumes single characters are the only appropriate variable names. There's no reason maths couldn't use a * symbol as multiplication instead of assuming multiplication for any string of characters.

People who enjoy the current state of mathematics will probably think the OP is trolling, but it's a reasonable question.

Perhaps it could be better put as 'Why doesn't maths concern itself with readability like programming does?'

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#6
post #5
post #4

We use Greek characters simply because it's convenient to have additional symbols at hand. The choice of Greek is historic, but one also sees a little bit of Cyrillic and Hebrew. Notation has evolved since ancient Greece. Euclid, for example, is quite readable in translation, but he did not use modern shorthand. See for yourself: http://aleph0.clarku.edu/~djoyce/java/elements/elements.html

That assumes single characters are the only appropriate variable names. There's no reason maths couldn't use a * symbol as multiplication instead of assuming multiplication for any string of characters. People who enjoy the current state of mathematics will probably think the OP is trolling, but it's a reasonable question. Perhaps it could be better put as 'Why doesn't maths concern itself with readability like progr…

It only assumes that single characters are desirable variable names. Especially if (as in Lisp) one does not draw a conceptual distinction between variables and functions, it is common to see multi-letter variable names.

Here is a typical example of a modern research paper:

http://math.stanford.edu/~conrad/papers/locchar.pdf

Most variables are one letter, but notice, e.g., GL in the fifth line (the General Linear group, not G times L), ker in the seventh, etc.

One reason for brevity is that we like to write on paper and/or the chalkboard.

And to answer your last question, I think math does concern itself with readability. Many mathematicians are obsessive about making sure that their work is as readable as possible, although unfortunately this is not universal.

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#7
[Mathematician here]

Greek leters: It's a feature not a bug! The advantage of Greek letters is that they don't collide with normal variables, you can use short (1 letter) names for symbols. That is also the advantage of using special characters for number (and not using something like a->1, b->2, ...).

An additional problem is that some letter has an expected behavior, for example \epsilon usually is small, and M (capital M) usually is a big number, p is a prime number and z is usually a complex number. The problem is not that they are Greek letters, the problem is that you have to learn the expected behavior. (It's like using i for a counter in a for loop. Obviously i is integer.)

The problem with the syntax is that mathematicians (and humans in general) are too good parsing DSL (domain specific languages). So each mathematical branch has its own DSL (we call it "notation"), and the DSL can barely be combined, but usually a calculation doesn't combine many areas of mathematics. (For example there is a special notation for "function integrals" and "modulo congruence" and "fields towers", but I hope I should never combine the three in the same calculation.) (A similar problem is why regular expressions are so popular, they can be implemented with normal constructions, but sometimes it's easier to use regular expressions. Or the special syntax for here strings.)

The problem is that you have to learn all the DSL, but usually the specific details of the DSL have some insight of the main ideas of the area. There is an (perhaps apocryphal) quote from Gauss: "A good notation is half of the solution.".

The problem is not that you must use Assembler to write Java classes. The problem is that you must use 50 almost incompatible Lisp packages, that define its own macros and syntax reader (that hides almost all the parenthesis) and define each one a very useful but limited DSL that compiles to the JVM.

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#8
Is programming really so much better off for having so many more languages and means of describing algorithms? At least the language of math that one writes today can be expected to be understandable and readable a hundred or more years from now. A program source code, on the hand, is unlikely to have that kind of long life unless you get lucky and write it in the right language.

Also, math is declarative and rigorously manipulable whereas programming is usually imperative and you're lucky if you get any kind of refactoring/manipulable tools.

I was introduced to programming before I really got a handle on math, and I definitely preferred programming initially. When I did learn math I thought about it imperatively. I saw summations as for loops that were just written strangely, but I now see math as being much more interesting than programming. And I can get a lot more work done by working with math's symbolic language, more quickly, and more rigorously than I can with a programming language.

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#9
I agree that this can be frustrating. One of the great benefits of programming languages is that, even though I don't know VisualBasic, for example, I can probably look at the code and know what values the variables represent.

It's very difficult to jump into a new mathematical structure, because very often you have to learn the lexicon from scratch.

Re: Ask HN: Why is math so obsessed with ancient syntax and frameworks?

#10
post #8

Is programming really so much better off for having so many more languages and means of describing algorithms? At least the language of math that one writes today can be expected to be understandable and readable a hundred or more years from now. A program source code, on the hand, is unlikely to have that kind of long life unless you get lucky and write it in the right language. Also, math is declarative and rigorou…

I find this extremely interesting. I'm a programmer who has had some mental block when it comes to "real math" (whatever that means). I'm very eager to change how I think about math to try to break through the mental barrier. Do you have any books or blogs or anything to recommend that reflect your change in thinking?

The summations as for loops is what got my attention, as I am guilty of that. Also the idea of math as more manipulable than programming is intriguing.

Post reply on HN