Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This question could be generalized to any language where the language development is open-source, potentially, but I'm most curious about Clojure specifically.

If Clojure (as a language) is open-source, licensed by the Eclipse Public License, which per this GitHub side-project requires derivative works to disclose source, must any application written in Clojure be distributed with source? Or must only derivative language projects (e.g. Continjuation or something) disclose the source?

Or do I have a faulty major premise somewhere in there?

share|improve this question

There are two major faults in your reasoning.

First, a language is a set of ideas and is not subject to copyright as such. Copyright would apply only to the language's specification document, translators and standard library implementations. Of these, only the library (and to a small extent the translator) can have an effect on the licenses you can use for programs written in that language.
This influence is limited in the sense that, if the library uses a strong copyleft license (like GPL), then the programs using that library must effectively be distributed under the same license. If the library is not strong copyleft, then you can choose any license you want.

Secondly, the Eclipse Public License is not copyleft and does not require the disclosure of source code for independent, separate modules. The license text uses the term "Program", but defines that term to mean "the code covered by this license." That means that the term "Program" does not have its normal English meaning, but is also used for things that we would normally call a library.
Essentially, the Eclipse Public License only requires you to disclose your source code if you make modifications to a program/library that is already covered by the Eclipse Public License. If you write a separate program that uses a library (which is covered by the Eclipse Public License), then you don't have to disclose the source code for your program, as it is a separate entity from the library.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.