> 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 -~----------~----~----~----~------~----~------~--~---