After Labra's enthusiastic recommendations about Ruby, and although I usually don't feel too excited with new programming languages whose main contribution I can't tell, I've just started to read some introductory texts: Programming Ruby - The Pragmatic Programmer's Guide, by Dave Thomas and Andy Hunt. And as I read (I had no previous knowledge about Ruby) some thoughts came up.
First, the authors say:
Ruby syntax is clean. You don't need semicolons at the ends of statements as long as you put each statement on a separate line.
What? Do semicolons make the difference between clean or unreadable code? Is line-based coding always better? Mmmmm, it seems that we have a religious war on the horizon.
Ruby doesn't use braces to delimit the bodies of compound statements and definitions. Instead, you simply finish the body with the keyword end.
Once again, the claim that using an ending keyword can be described as "simply" and the use of brackets cannot is a bit subjective and unfounded, I think.
Why does one call have its arguments in parentheses while the other doesn't? In this case it's purely a matter of taste. [...] However, life isn't always that simple, and precedence rules can make it difficult to know which argument goes with which method invocation, so we recommend using parentheses in all but the simplest cases.
I wonder: what kind of benefit can bring having loose rules about calling syntax? In addition, what'ts the point of building such flexible rules when one has to admit that using parentheses is recommended anyway? And if we omit parentheses only in tne simplest cases, wouldn't the different, unpredictable, arbitrary use of parentheses eliminate the supposed benefit of being "free" to use them or not?
Of course, this is not relevant regarding neither the book nor the language itself. I think it's just an arguable start. But if Labra likes Ruby, it must be worth it. I'll keep reading.