Please count me out as a serious programmer, then. I care deeply about
the aesthetics of Ruby. I derive great joy from writing beautiful
programs. Ruby let's me write the most beautiful programs I've ever
done. Ergo, Ruby makes me happy.
I couldn't think of a higher praise to bestow upon a programming
language.
I agree, beauty is a tremendous asset of a language.
Pleasure in the reading and writing of the code must most definitely have some
postive impact on the productivity of the programmer.
Even in the thread you reply to it has a comment from Tim Peters on Python:
http://www.ruby-talk.org/cgi-bin/scat.rb/ruby/ruby-talk/125873
Beautiful is better than ugly.
Erlang programmers like beautiful code also.
I believe they qualify for "serious" programmers also.
Joe Armstrong says in a message on the Erlang list:
http://www.erlang.org/ml-archive/erlang-questions/200301/msg00260.html
"""I never said "write dumb code" - to me beautiful code is clear,
"""concise and does *exactly* what it is supposed to and *nothing* else
"""with a minuimum of fuss. It usually ends up being faster than ugly
"""code - that's because God likes your code if it's beautiful.
"""
"""Think of code as an exercise in applied poetry - rather like Haiku
"""only more difficult - now writing Haiku Erlang functions *that* would
"""be difficult
And in another message by Chris Pressey:
http://www.erlang.org/ml-archive/erlang-questions/200303/msg00508.html
"""Plenty are the languages with which you can crank out code,
"""and plenty are the languages with which you can write beautiful code.
"""Rare is the language with which you can crank out beautiful code...
It sounds like David thinks that Ruby is just such a language.
By David's performance, I would have to agree.
And one last quote from Joe Armstrong:
http://www.erlang.org/ml-archive/erlang-questions/200202/msg00031.html
"""Given the choice you should always choose beauty over efficiency -
"""It will probably turn out the that the beautiful solution will be
"""fast enough anyway.
"""
"""It is, after all, easy to make an incorrect program run arbitrarly fast
"""
"""If, and it can happen, the final beautiful program is too slow
"""then you will be in a good position to optimise the algorithm
"""since it should at least be clear what the thing is supposed to do
"""and you will have a good set of test cases to test your
"""efficient version on.
I am slowly working my way through the PickAxe II book and am enjoying it and
what I see.
I am very glad a post on c.l.python spurred me on to explore Rails and thus
Ruby.
I like what I have found.
Jimmie Houchin