Miguel, I have been pretty quiet on this list up to now, so Please excuse my interruption,
My thinking on this issue comes from a different context, but I might have some interesting information for you to add at this point. Of course I am not speaking for the GNU, GCC or MONO project here, just speaking my mind on this issue. Hopefully you find this topic as interesting as I do. Garrett Serack wrote : > > So, I started thinking that Mono has a c# > compiler, and I wonder if you > > think it would take me much work to adapt that for > use in a scripting > > solution. Miguel de Icaza wrote: > It is an interesting project, but not a straight > forward one. Garrett Serack wrote : > > This would go nicely with an open-source(BSD > License) VSA replacement > > I'm currently working on, and I'd like to support > more languages, > > without the need for the end application to rely > on the full Framework. Miguel de Icaza wrote: > The Mono C# compiler is under the terms of the GNU > GPL, just be aware of > that. If I may add my two cents here, The mixing of GPLed core and a non-gpl is probably not what is wanted. It would open MONO up to people not having to contribute their changes, taking the wind out of the project and creating islands of differently licensed code and people just running away with the ball. Of course the question is what is linking and what is a derived product will be quite interesting in such a dynamic environment like C# and IL. I wonder how you define the boundaries of the GPL license in MONO or for any C# program for that matter. Allowing for invocation of the compiler as a module would require its embedding, but If you have it is as an ASP.NET System.CodeDom.Compiler provider, then it would make any web page using that feature somehow derived. To quote the MSDN page <SNIP href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemCodeDomCompiler.asp"> The System.CodeDom.Compiler namespace contains classes that can be used to manage the generation and compilation of source code in supported programming languages based on the structure of Code Document Object Model (CodeDOM) source code models that contain elements provided by the System.CodeDom namespace. </SNIP> In fact, the entire question of the implementation and the licensing of the System.CodeDom.Compiler implementations for GPLed programming language implementations will become very tricky. All of a sudden you are opening a very large whole in the GPL to create any front and back ends for give languages with an explicit API for the end user to be able to generate code on the fly. According to the http://www.go-mono.com/faq.html#licensing "And the class libraries are released under the terms of the MIT X11 license." You will have to link then implement the ASP.NET classes which are under the X11 license then using the GPL. This is a contridiction! Or you will have to reimplement the entire parser and compiler as X11. Or you will have to move that entire part under GPL, and then you have the linkage problem again. This could be used to circumvent the GPL on more levels then we can imagine. On the other side, non-free software does not have these problems, you cannot use the code without a license, and it is very simple. The GPL gives you many freedoms, but it is very fuzzy on the areas of linkage with dynamic language and libraries. That is one of the reasons that the GCC is not distributed as a DLL, even if technically feasible, it has been requested at a high level not to do so to avoid potential abuse. The MONO project team being closest to this particular area will have to some serious thinking about how they want their code to be used/abused and if they are going to implement some guidelines on how this issue will be dealt with. Best Regards, Mike ===== James Michael DuPont __________________________________________________ Do You Yahoo!? LAUNCH - Your Yahoo! Music Experience http://launch.yahoo.com _______________________________________________ Mono-list maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/mono-list
