ClojureDart: an experience report

Exciting paper!

Even more striking is what scripting languages say about the organization of languages. Most books rigorously adhere to the sacred division of languages into “functional”, “imperative”, “object-oriented”, and “logic” camps. I conjecture that this desire for taxonomy is an artifact of our science-envy from the early days of our discipline: a misguided attempt to follow the practice of science rather than its spirit.

We are, however, a science of the artificial. What else to make of a language like Python, Ruby, or Perl? Their designers have no patience for the niceties of these Linnaean hierarchies; they borrow features as they wish, creating melanges that utterly defy characterization. How do we teach PL in this post-Linnaean era?

I think this is the right approach.

When I found FP, something felt “more right” for me than I’d felt with prior PL experience. Yet, now it feels more like a tool. Often useful, not always. Clojure helps emphasize this point - problems can be solved with functions and data, but other tools are available when needed.