Section 2 source distribution terms (was Re: GPL vs APSL (was: YAPL is bad))

Thorsten Glaser mirabilos at
Sat Sep 29 17:31:25 UTC 2001

Dixitur de Russell Nelson respondebo ad:
>Good.  Close.  Better than my previous attempt.  What do you think
>of this:
>    2. Source Code
>    The license applies to source code.  A compiled executable is
>    considered a derived work.  Such an executable is only open source
>    if its source code is also open source.  When a compiled
>    executable is not distributed with source code, there must be a
>    well publicized means of obtaining the source code for no more
>    than a reasonable reproduction cost -- preferably, downloading via
>    the Internet without charge or access restrictions.  The source
>    code so offered must be in the preferred form in which a
>    programmer would modify the program.  Deliberately obfuscated
>    source code does not qualify.  Intermediate forms such as the
>    output of a preprocessor or translator are not allowed.

This breaks things which do not only consider code being licensed
under $any_license but any kind of "work" (be it code, documentation,
books etc.) which is the form I prefer to write.
I usually put "work" and not "code" under X.Net (formerly MIT/BSD),
because I feel that this is more concerning the distribution as whole
and does not center/focus on the code. In my eyes, for most simple
work the documentation is lot more an effort than the actual code.
I might be wrong, and I definitively am wrong on things such as the
Linux kernel, as any larger project, but for smaller projects this
seems ok.

>Of course, a big problem with the OSD is that it talks about legal
>requirements, and yet was not touched by a lawyer before being cast
>into stone.  Any kind of extensive rewrite probably ought to be done
>by people with actual experience with the law, as opposed to
>dilettantes like you and I.

And me. Ok, but OSI is a nice attempt.

-- Redistribution via AOL or the Microsoft network prohibited!
According to billg's Win32 GetMessage() API, the return value of
type BOOL can be one of {nonzero|zero|-1} and thus BOOL is tristate.

license-discuss archive is at

More information about the License-discuss mailing list