Error formatting macro: pagetree: java.lang.NullPointerException
Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

Adding a feature to Clojure is not easy, for the following reasons:

  1. A programming language sits at the bottom, and impacts everything else. Rich is extremely conservative in adding new things.
  2. Features need to solve problems. Many things have features, but what problems do they solve? The purpose of this design wiki is to state problems, their possible solutions, and tradeoffs, prior to implementing anything.
  3. The language needs to provide things that can't (or can't easily) be provided elsewhere. Many proposed features are conveniences that should start their lives in libraries, not in the language.
  4. "Good" is not a sufficient reason. What would Clojure look like if every good idea+impl was added as a feature? The community is full of good ideas. Most of them will never be in Clojure.