Brevity. The programmer should not have to add boilerplate unrelated to the
task at hand. In this sense, Ruby’s
print "Hello World\n" is more beautiful than Java’s:
Brevity can also mean the elimination of redundancy. While some argue that redundancy lowers cost when interpreting meaning, redundant code increases cost because of surplus information.
Familiarity. The cost of changing one’s ways of thinking is far higher than is commonly thought. Ruby is beautiful in that it’s extremely conservative in its idioms, e.g. the lack of Smalltalk’s innovative object message passing.
Simplicity. Language implementers should not aim to keep the language simple and clean, because that complexity is shifted to the programmers using the language. For example, Ruby’s Rakefiles (used by Ruby’s Rake build tool), are written in Ruby!
Flexibility. Freedom from enforcement from tools. Programmers should not have to add things just because the tool mandates it.
Balance. Brevity, conservatism, simplicity, and flexibility need to come together to ensure a beautiful program.
Everybody thinks about garbage collection the wrong way. Raymond Chen. https://devblogs.microsoft.com/oldnewthing/20100809-00/?p=13203 . Aug 9, 2010.
Re: Does memory leak? Kent Mitchell. Rational Software Corporation. https://groups.google.com/forum/message/raw?msg=comp.lang.ada/E9bNCvDQ12k/1tezW24ZxdAJ . Mar 31, 1995.
Treating Code As an Essay. Yukihiro 'Matz' Matsumoto. Beautiful Code: Leading Programmers Explain How They Think. Jul 17, 2007. ISBN: 978-0596510046.