
wren ng thornton wrote:
On 10/16/10 10:48 AM, Ben Franksen wrote:
Don Stewart wrote:
It is open source, and was born open source. It is the product of research.
How can a language be open source, or rather, how can it *not* be open source? The point of a (programming) language is that it has a published ('open') definition. Nothing prevents anyone from creating a proprietary compiler or interpreter for Haskell, AFAIK.
Miranda[TM] is/was a proprietary language, quite definitively so. If nothing else, this should be apparent by the fact that every reference to it in research papers of the era (a) included the TM sigil, and (b) had footnotes indicating who the IP holders are. That was before my time, but I was under the impression that Haskell was open from the beginning ---by express intention--- in order to enable work on lazy functional languages without being encumbered by Miranda[TM]'s closed nature.
For that matter, until rather recently Java was very much a closed language defined by the runtime system provided by Sun Microsystems and not defined by the sequence of characters accepted by that system, nor by the behavior of the system when it accepts them. Sun even went through some trouble to try to shut out competitive development of runtime systems such as SoyLatte, IcedTea, and the like.
Even the venerable C language has a long history of companies making proprietary extensions to the language in order to require you to buy their compiler, and they would most certainly pursue legal action if someone else copied the features. This is why GCC is as big a coup for the free/open-source movement as Linux is--- long before GCC changed its name and focus to being a compiler collection.
The languages which are open-source are in close correspondence with the languages which have a free/open-source implementation. There are a lot of them, including the vast majority of recent languages. But don't be seduced into thinking that a language is a predicate on acceptable strings, a transducer from those strings into computer behaviors, or that such predicates and transducers are public domain.
Sigh. Yes, you are right, of course. All this is true, sadly. There are stupid people who think that they can own a programming language. I hope they will go the way all the other mis-adapted creatures have gone and just die out. Still, "Haskell is an open source product" doesn't sound right to me. Even "Haskell is open source" (without the "product") has a bad ring because "source" is short for "source code" and source code is not something a programming language has. I agree that "non-proprietary" is a valid and important characterization of the language. This should be mentioned where we speak about libraries and community, since the active and friendly community is the motor behind the growing set of libraries, and you get this sort of participation only with a free/non-proprietary language. This applies not only to individuals but to companies as well, maybe even more. I anticipate the objection that potential commercial users might be scared off by the terms "non-proprietary" or "free", whereas the term "open source" has been coined to (and probably actually does) sound more commerce friendly. To countermand such an effect, we can point out that most libraries have non-copyleft licenses and that there are a number of companies who have done and still do a lot to support and advance Haskell. Cheers Ben