Charles Nutter, the creater of JRuby, on the challenges faced by programming
[T]here’s always going to be a conflict between what programmers want out of
programming languages and what’s actually possible to give them. There’s no
magical fairy world where every language can be as fast as every other
language, because there’s no way to predict how every program is going to
execute (or in truth, how a given program is going to execute given a general
strategy)…The important thing is for language users to recognize that
nothing is free, and to understand the implications of language features and
design decisions they make in their own programs.
While we wait these coming weeks for Apple to wow us with new developer goodies
at WWDC to make our lives “easier”, this article is a great splash of cold
water. Every decision to simplify trades off for a complexity somewhere else.
Good food for thought for anyone building non-trivial apps.