Re: [NTLK] Newton Programming and the GPL

From: Paul Guyot (pguyot_at_kallisys.net)
Date: Sat Nov 17 2001 - 12:17:33 EST


>Weird perhaps, but assume that in order to make useful
>modifications, you would need PowerPlant anyway.

Yes, to compile the code of the application, you need at least
headers for the class you derive from/use.

[snip]

>If you now take a look at the wording of section 3, you will notice
>that it contains the following statement "... the major components
>(compiler, kernel, and so on) of the operating system ..." To make
>this clear again: The GPL considers the or a compiler to be a major
>component of the operating system.

[snip]

Let me summarize (since it's been a long time this thread started,
but I hadn't found the time to answer yet).

The big point is the interpretation of "component" or "major component".
You have two possibilities.
a/ the meaning of the word in dictionaries.
Metrowerks CodeWarrior, Apple's MPW compilers, NTK, NCT are not
components of the operating system (MacOS, NewtonOS), and when you
got the OS, it didn't come with them.
SCO Sys V cc, gcc on Linux/NetBSD, AppleScript editor, NewtonOS
compile function or NewtWorks under NewtonOS 2.1 are components of
the OS.

b/ in the case of the GPL, it in fact means anything that is required
to write software for a given operating system.
I suggest to tell dictionary editors to add another entry in the word
component:
Major Component: tech. in the case of an operating system, anything
that is required to write software for this system. E.g. "keyboards
are major components of the Linux operating system".

Except this little semantic detail, it's fine with me. Except this
little detail. And also the Open Source Definition.
Section 3 of the GPL says: source code means preferred form for
modifications .... However, as a special exception, it doesn't
include ....
OSD point 2 doesn't give this exception. But I'll admit that it's
fine as long as it is conform to the spirit of the OSD (on the
contrary to the GPL, the OSD is not a contract between a developer
and other developers/users, so the spirit and the OSI's point of view
counts, while the supposed spirit of the GPL (which is in fact the
most current interpretation) and the interpretation of the GPL by the
FSF do not count).

But (b) interpretation of GPL technically allows to have what I would
call non open source software using GPL code.

If someone (say you) sell a compiler with libraries (in either source
or binary form), someone (may be you again) can release anything
under GPL linked with these libraries.

If I released software under GPL (well, technically I've written
lines for GPL software) I wouldn't like my code to be included into
close source projects (why would I use the GPL then?).

That's why I think that the correct interpretation is (a) (much
closer to the dictionaries) and interpretation (b) is just a way to
say, hell, let me use PowerPlant/NTK/MFC and so on with this license,
even if it was written with Unix model in mind.

My solution is rather: consider a license not centered on Unices or
just develop for Unices (and I'll even say, unices that are shipped
with the compiler you want to use).

Personally, if I write open source code, I sometimes think it has to
remain open source, sometimes that it can be sold, but I definitely
doesn't want to prevent other developers to use this code because
they don't develop for an operating system which isn't shipped with
the proper compiler.

BTW, I asked the OSI license discuss list. There was only one folk
who answered, and he concluded that I was just silly and wanking.
Feel free to think likewise, but if you have good arguments or found
a failure in my argumentation, please tell me (I don't want to
generate OT traffic, so off list might be better).

Paul

-- 
Home page: http://www.kallisys.com/
Newton-powered WebServer: http://newt.dyndns.org:8080/

-- This is the Newtontalk mailinglist - http://www.newtontalk.net To unsubscribe or manage: visit the above link or mailto:newtontalk-request_at_newtontalk.net?Subject=unsubscribe



This archive was generated by hypermail 2.1.2 : Sat Dec 01 2001 - 20:02:59 EST