tags:

views:

1214

answers:

6
+4  Q: 

Is F# open source?

Is F# open source? if not so why Microsoft provide the source code of the F#'s modules?

EDIT

(Nov 4, 2010) Things have changed, see Brian McKenna's answer.

+3  A: 

It is published under a variant of the MS-Research open source licence.

I have no idea if this is "officially" open.

Richard
+7  A: 

"Microsoft Research Shared Source license", under which F# is published, has not been approved by Open Source Initiative nor by Free Software Foundation (although a couple of other Microsoft licenses are).

The bottom line is that sharing the source code has little to do with making a product open source. The essential point is the license, which (dis)allows to use and modify the source more or less freely. Without such a license the source is pretty much useless.

Joonas Pulakka
+2  A: 

f# as of the 2008 CTP release is under a slightly modified Microsoft Research Shared Source license agreement ("MSR-SSLA").

Essentially you can modify it but MS gets royalty free permission all your modifications

There was talk within the team of it moving to the more open MS-PL licence, I don't know how that has gone, nor what the implications are given the plan to include f# in VS2010.

ShuggyCoUk
not sure what the -1 is for? care to let me know...
ShuggyCoUk
sorry dure, was it me who marked -1?am not sure, but obviously its a mouse mistake ;)!
martani_net
No worries - just wondered if I had put something incorrect down, if it was you it would show you a yellow high light on the down arrow so wouldn't think so.
ShuggyCoUk
A: 

Did anybody actually try to build F# from the sources included in the release? It seems to me that some parts are missing which prevent this. This is in addition to a license which is not OSI-approved. So, no, F# is not open source.

+4  A: 

Right now the F# team seems pretty busy with all the "productisation" effort. One email with the plans for the licensing is here.

As we complete this over the next year, our plan is to make a corresponding source release of the F# compiler components under MS-PL.

And:

Along the way, we plan to make a source release of the MSR "Power Pack" components, also under MS-PL. These include tools such as fslex.exe and fsyacc.exe and some libraries. These may be released more often and may include experimental components.

With:

In general, we aim for the source code releases we make of F# to open, stable and correspond to supported releases.

And perhaps the nicest bit :) :

On the whole we prefer to "do" rather than "pre-announce".

I'll also note that if you're not using the term "Open Source" meaning "approved by certain organisations as Open Source", then the source code is already included with the F# distro. (And using F12 "Go To Definition" in VS will jump you right to the source files.)

MichaelGG
ok, but what's the point behind making the source code available to everyone, and not making it open source?actually what is the difference?if i ship my source code with my application doesn't that means necessarly that it is open source? thanx for your answers.
martani_net
I far as I understand, there's no point. I consider it to be just a marketing trick. If someone knows better, please explain.
Joonas Pulakka
Having the source to the F# system is incredibly valuable, even if it's not "Open Source" (although the MS-PL is OSI accepted.) 1. Researchers can do work with the F# code (I dream of macros and dependent types). 2. Having the library code has been invaluable for learning.
MichaelGG
Ok, I agree with the point that having lots of well-written code (libraries) available is beneficial for learning a new language. Luckily we all have the autonomous right to decide which languages to learn. Not being open source means automatic decline for many of us.
Joonas Pulakka
@dotnet_1: answer to your question: supplying the source code is necessary but not sufficient for open source. You must also supply a license that allows the rest of the world to do something with the source. Then we're talking about real open source, not merely "shared source".
Joonas Pulakka
thanks very well that really makes it clear ;)
martani_net
mad-j sorry to hear you are under such restrictions :(.
MichaelGG
Well I'm not that sorry - there are so many excellent open source languages available that it's hard to decide which one to learn next. It's good to have even some restrictions.
Joonas Pulakka