BSD and MIT license "compliance" with the MS-PL

Donovan Hawkins hawkins at
Sat Apr 18 05:13:53 UTC 2009

On Fri, 17 Apr 2009, Matthew Flaschen wrote:

> It seems your definition of copyleft is essentially, /It's not
> permissive and it requires source code stay under the original license/.
> However, as you know that definition is inconsistent with the FSF's.
> Moreover, it doesn't have any /purpose/.  Everyone knows the purpose
> behind permissive and proprietary licenses, but what would be the
> purpose behind your "copyleft".

I think I see where this whole "permissive/copyleft hybrid" idea comes 
from, but I agree that it's a rather odd way of looking at it. If we could 
magically slice the MS-PL in half and look at the source and binary 
distribution rights separately, you could argue that the source rights are 
copyleft and the binary rights are permissive. Such a redactionist view is 
pointless, however, when each half serves to undermine the entire point of 
the other half.

Saying the MS-PL is permissive as long as you go closed source merely 
hides the licensing restriction. It's still there, and offering the widest 
possible choice of closed source licenses doesn't change that fact that 
your choices were severely restricted. Fortunately even Microsoft 
acknowledged this point and renamed the license.

(You could imagine crafting an equally non-permissive license which allows 
you to use any open source license you choose; it's difficult to do since 
the source would immediately leak out via a real permissive license, but 
something like the CodeSynthesis XSD FLOSS exception comes close).

As for copyleft, I'll use as the definition that "copyleft is a tool to 
ensure permissions are maintained during distribution," as opposed to 
copyright which is a tool to ensure that restrictions are maintained 
during distribution. It's simple, fits the reason the word was chosen, 
and matches the FSF's own description of the principles fairly well. Weak 
copyleft is perhaps harder to define, but it generally draws some sort of 
distinction between modifying the original code and using the code in 
a larger project. It certainly can't mean only ensuring permissions for 
some of the people who use the same piece of software...that isn't weak 
copyleft, it's broken copyleft.

The permission that MS-PL attempts to preserve is permission to release 
under a closed source license. This is only preserved if the downstream 
project is open source...closed source projects certainly don't pass that 
permission on. If this is considered "partially" copyleft then the BSDL is 
equally effective at preserving the more common copyleft permission of 
releasing under an open source license. That permission is preserved under 
exactly the same conditions: only when the downstream project is open 

It's difficult to see the MS-PL as a hybrid in any meaningful sense when 
one half effectly destroys the significance of the other half. It's 
permissive, but only if you use the type of license they allow (closed 
source). And it's copyleft, but with an exception you could drive a 
permissive license through. Still, it does pass the license proliferation 
test: it is unique in combining the most restrictive license terms 
available for open source with the most permissive license terms available 
for closed source.

Donovan Hawkins, PhD                 "The study of physics will always be
Software Engineer                     safer than biology, for while the
hawkins at                   hazards of physics drop off as 1/r^2,                biological ones grow exponentially."

More information about the License-discuss mailing list