Hacker News new | past | comments | ask | show | jobs | submit login

Personally I don't care, although copy-pasting Python can be annoying. If your biggest concern with any general-purpose programming language is its syntax, you have probably not put enough thought into semantics issues - the ones that persist no matter how familiar the syntax becomes.

Anyway, Walter Bright, designer of D language, wrote an article on language design [1] touching on the issue:

> Yes, the grammar should be redundant. You've all heard people say that statement terminating ; are not necessary because the compiler can figure it out. That's true — but such non-redundancy makes for incomprehensible error messages. Consider a syntax with no redundancy: Any random sequence of characters would then be a valid program. No error messages are even possible. A good syntax needs redundancy in order to diagnose errors and give good error messages.

I thought that was interesting. It is a pretty much undebatable argument against taking terseness too far.

On the other hand, I have never had a problem with Python's error messages.

[1] http://www.drdobbs.com/architecture-and-design/so-you-want-t...




The 'ideal' language, in my eyes, would allow terse representation of _algorithms_, not of the language syntax. This often means that you need several different ways to do the same kind of thing in different contexts.

"The syntax is terse" doesn't help if the libraries aren't. We want libraries and common concepts to be terse. That's why I feel that any language designed without heavy consideration for how it's standard libraries are to be used is a regressive exercise. Write your libraries how you want them to be used, then figure out the syntax from that.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: