More on the .NET sourcecode and its 'Reference License'

Today I read an interesting post by Arne Vajhøj in the C# newsgroup. He brought up the point that in the Java research license, which was the license the Java sourcecode was released under before it was released under the GPL, a clause was added to prevent that the reader of the code was 'brandmarked' or 'tainted':

Before Java went GPL there was a Java Research License which allows it.

B. Residual Rights. If You examine the Technology after accepting this License and remember anything about it later, You are not "tainted" in a way that would prevent You from creating or contributing to an independent implementation, but this License grants You no rights to Sun's copyrights or patents for use in such an implementation.

And FAQ answer from same link:

18. Does the JRL prevent me from being able to create an independent open source implementation of the licensed technology?

The JRL is not a tainting license and includes an express 'residual knowledge' clause which says you're not contaminated by things you happen to remember after examining the licensed technology. The JRL allows you to use the source code for the purpose of JRL-related activities but does not prohibit you from working on an independent implementation of the technology afterwards. Obviously, if your intention is to create an ÒindependentÓ implementation of the technology then it is inappropriate to actively study JRL source while working on such an implementation. It is appropriate, however, to allow some decent interval of time (e.g. two weeks) to elapse between working on a project that involves looking at some JRL source code and working on a project that involves creating an independent implementation of the same technology.

MS could do something similar.

IMHO, an excellent idea.

Addition: I just remembered something. Microsoft has the policy that a developer of Microsoft (unless excluded from this policy) isn't allowed to look at GPL-ed software. Now, isn't the reason for that policy exactly the same as what I mentioned yesterday in my 'Don't look at the source' post? So, if I have no clue about IP, apparently neither does Microsoft.


  • About the addition, that's a relief, right? If Microsoft has no clue, your "Don't look at the source" post is ruled out and we can all freely look at the code... ;)

    I don't know how often you get that Microsoft looks at your code, but I don't have that very often. Of course you invited ScottG at DevDays 2006 to look at LLBLGen Databinding so then you bring it upon yourself, don't you! ;)

    Oh, and please notice the smileys!

  • Dennis: :)

    Scott looked at how it worked, so no code at all ;).

    The thing is that people think my point (and other people's point, it's not my invention) is stupid, however MS does exactly the same with GPL-ed code.

    Though I don't think most of the people who thought/think I'm overreacting do realize MS has the same policy (as most if not all big software corporations do).

  • Hi Frans,

    Just to let you know I've read your posts and I'm on your side.

    It's important, to like you said differentiate between what Reflector gives you and this.

  • >> It's important, to like you said differentiate between what Reflector gives you and this.

    Yes.... With Reflector you're breaking the EULA.... ;)

    Truth be known, in most cases, I am not interested in looking at MS's source. Even if I do find a bug, I can't fix it. (Can't distribute the fixed version, etc.)

  • I 100% agree. I suspect that MS has this restriction for the same reason Mono has a policy "don't look at core .NET source". There is a built up paranoia (some warranted) that there would be legal repercussions for source copying if you ever so much as look at a different implementation. I wonder how often the BSD guys look at the Linux kernel?

Comments have been disabled for this content.