> Third, there is no doubt about the objective fact that Ruby code that > removes optional "end" keywords will be shorter, and I think practically > everyone agrees in principle with the idea that terseness is a virtue unless > there is some specific reason for being redundant. No, I don't agree. > Fourth, I thought the point was quite persuasive that Ruby also allows > semicolons to be entirely optional except in those specific cases on the > same line where they are needed. This behavior and philosophy is exactly > analogous to the current proposal. You could put a semicolon at thend of > every line in Ruby right now, but no one does. Why not? Because they are > redundant, because they are visual noise. Tracking newlines is easy, tracking indentation is not. > Having said that, I think the main problem boils down to aesthetics. No. It boils down to the mess this introduces. There is Python for those who want Python. > However, I think from the viewpoint of people who do > not like significant whitespace, the problem is that they know that if the > proposal were adopted, sooner or later they will encounter code that is > formatted in this way, and they will then be "forced" to deal with code they > find unpleasant. In other words, someone will be forced to deal with code > they find difficult to work with, and those who prefer "end," quite > naturally, do not want to have to be the ones to deal with this. That's correct. > I think in reality, the imposition on those who prefer "end" will be minor. I think otherwise. > I don't have an answer to this aesthetic problem, and I don't think one is > possible, since taste is taste and one cannot be argued out of their > preferences. However, i would say that allowing people to do thingsn > different ways is part of the spirit and philosophy of Ruby. Yes, please. there are whole languages for that. > It's hard to understand why Ruby would allow semicolons to be optional but > not "end" keywords. It is very easy to understand. Regards, Rimantas -- http://rimantas.com/