drkirkby wrote:
it says:
"The source code for a work means the preferred form of the work for making modifications to it."
To me, that means the ALGLIB's source code (written in AlgoPascal) should be released, since thats what more than 95% of ALGLIB is written in. But as far as I can see, that is not the case.
I agree that at least it is against
spirit of GPL. But I am not sure whether it is breach of GPL or not from
legal point of view.
The question is what do you mean when you think about "preferred form". Having C++ or C# source gives you ability to support particular branch (C++ or C#) of the library. Translated source is a bit awkward, but not worse than internals of MPFR, GMP or other GNU project :) The problem is that you can support C++ or C# version, but supporting both at the same moment becomes too difficult without translator. Just imagine fixing all bugs twice, writing all code twice, etc.
I agree that working with AlgoPascal source is preferred, but -
legally speaking - it can be worked around by saying that it is
C++ or C# ALGLIB gets licensed under GPL, not its AlgoPascal clone. So the only form of work named "ALGLIB for C++" is the C++ source - again, from legal point of view.
In fact, I don't think that this issue is of high importance because:
* this clause of GPL was written in order to prevent free code from becoming closed (
hey! you have EXE file, this is the Source Code you want; machine code is legitimate programming language!);
but we have opposite situation - new code is written and released in quite liberal form (compare with licensing terms of MKL, ACML, IMSL)
* there are legal workarounds
* the real problem is not breach of GPL - the problem is dependence of programming community on ALGLIB Project as the only company which can support ALGLIB library
So I want to solve problem of dependence first. I think that it can be something like KDE Free Qt Foundation - a foundation which will have right to release AlgoPascal sources (along with translator) under open source license in case something gets wrong (ALGLIB project gets acquired and stops making open source releases, etc.). I plan to contact Software Freedom Law Center somewhere in the first half of 2011 (too busy with some legal/accounting stuff to do it right now).
It is not the same as releasing everything to everyone right now, but I think that it will give Open Source Community enough confidence regarding ALGLIB future.