4 ms·
whoa settle down, the article wasn't about the superiority of LISP syntax, it was more about how the syntax is not as weird as you might think.
by drunken_thor 12y ago
whoa settle down, the article wasn't about the superiority of LISP syntax, it was more about how the syntax is not as weird as you might think.
- chr1 12y agoThe weird thing about Lisp syntax is that people try to find all kinds of justifications why not having infix syntax is ok. The fact that arithmetic can be written in weird form in other languages too isn't very interesting.
- emiljbs 12y agoThe weird thing is that some people feel that they need to find all kinds of justifications for why not having an infix syntax is OK. Arithmetic in Lisp-style is excellent and easy to read. Thing is that programming languages infix math is ridiculously bad compared to what I can do with paper and pencil. It's really just a really bad form of imitation and to me that irks me way more than just doing it in Lisp. Math written in PL:s is hard to read in general and I'd love to see an Emacs package that lets you show an inline picture as you mark a mathematical expression of LaTeX rendering it as 'regular' math.
- tobik 12y agoAUCTeX has support for displaying inline pictures of LaTeX math expressions in Emacs. I just checked and it even says so on the homepage ;) http://www.gnu.org/software/auctex/ http://www.gnu.org/software/auctex/
- emiljbs 12y agoI know :) I meant "take Java math code and convert into LaTeX, display inline", the first part is the missing one!
- Morgawr 12y agoThere are a lot of reasons to prefer RPN over infix syntax and why Lisp has chosen to adopt this notation. Although, I agree with the critiques of the article, it's not really saying much.
- bunderbunder 12y agoRPN is postfix notation. You add 1 and 2 using "1 2 +" Lisp is prefix notation, which is just the opposite.
- mcguire 12y agoI just realized that makes Lisp "Polish Notation". I'm sure that opens up some really horrible jokes.
- bunderbunder 12y agoNot quite. If you drop Lisp's variable-arity operators, that enables you to drop the parenthesis. If you drop the parenthesis, that gives you Polish notation. For example: Lisp: (* (+ 1 2 3) (- 4 5) ) Polish: * + + 1 2 3 - 4 5
- AnimalMuppet 12y agoTo me, it opened up a really horrible thought: Polish plus Hungarian. Lisp with Hungarian names (shudder).
- Morgawr 12y agoYou're correct, I brain farted.
- bunderbunder 12y agoThere's really just one justification, but it really is an interesting one: It gets the logical structure of the code in line with its lexical structure. One reason this is neat is that it facilitates language extensibility to a radical degree. LISP has its macros, FORTH has its compiling words. Languages that allow infix syntax have tried to come up with something similar, but I haven't personally used one that I thought was particularly successful.
- jimbokun 12y agoWhat's your justification for why having infix syntax is OK?
- dllthomas 12y ago"People are used to it, from years of education." It's a strong argument. Whether it is sufficient depends on what it is being weighed against.