> The runtime exception is to allow the use of the gcc runtime, which is
> a library gcc links to your code when you need to produce a program
> which runs. AFAICT, if you replaced the gcc runtime with something
> else, or you just used the object files compiled by gcc (no linking),
> you wouldn't need this exception.

Yes, but there is also the issue of header files, which also create a
derived work.  To avoid being a derived work, your code also couldn't
use any header files that come with GCC (stdio.h, math.h, etc.)

> And note that this applies just to the binary; in general, when you
> compile source code against a library, it is considered that you
> produce a derivative work in so far you use (a) header files (b)
> linking data from the libraries. But it's not clear to me that the
> original *source code* can be considered a derivative in any way...
>
> In the case of sage/python code, there's no compilation... it doesn't
> look like writing a python/sage script would constitute a derivative
> work of python or sage, so far as you don't distribute *.pyc files...
> I guess somebody could argue that using "import" statements, or
> published APIs can be considered "derivative work" as linking is, but
> it sounds strange...

The logic end of this argument is that the GPL is meaningless for
interpreted languages.  But clearly, that is not the case.  Sage does
have compiled extension modules that get loaded dynamically when you
run a python script that imports Sage.  Thus, by the FSF
interpretation, the simple Sage script is a derived work of Sage.

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to