Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So I don't think I have a strong stance on the merits or drawbacks of whitespace-significant languages versus those that use parentheses (or any other syntax choices). But, I'm curious if there are any compelling arguments that objectively demonstrate why one approach might be superior to the other or if there are at least some persuasive reasons to favor one over the other. Genuinely curious!


I think (and am not alone) that indentation based languages are easier for beginners to learn.

The fact that indentation (whether significant to syntax or not)helps readability is something I hope I need not demonstrate since indenting is near universal in languages that use explicit delimiters.

So beginners learning a language with delimiters need to learn both delimiters and indentation, and then learn that while the latter helps them more, it's actually just the former that is required.

For beginners, mental load is death by a thousand cuts, so it may make more of a difference then an experienced programmer thinks.

[Edit]

My first reaction was just the benefits for beginners of indentation e syntax. I personally have a subjective feeling of advantages for non beginners to delimiter based syntax (I use common lisp regularly), but I have fairly low confidence in that, while I'm pretty sure of the advantages to beginners for indentation.


Depends on the person. I knew some newbie programmers who loved Clojure and were hum-drum with Python.

Some folks like parenthesis delimiters and functional programming. It structures and separates things out clearly in their mind. And when you introduce them to editing tricks like parinfer - they fall in love. The guy whom I introduced Clojure to knows it far better than me now.


That does make some sense. It's so hard to go back to the beginner's mind (though undoubtedly valuable to try!), but I think you're right that this has to be easier for a beginner. There's just less syntax overall if there aren't parentheses or curly braces.


Nobody ever heard of python oneliners, for a start.


Not sure if this was just a obvious Cunningham's Law comment but here goes.

Some reasonable ones: https://wiki.python.org/moin/Powerful%20Python%20One-Liners

Some less so: https://hostcloud.blog/is-it-possible-to-write-obfuscated-on...


Structural editing, macros, homoiconicity.


Thanks. These are reasons in favor of parens, right?


Yeah, but not necessarily just with parens - there are languages with macros that have a different syntax but with lisp it's the most elegant.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: