caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: skaller <skaller@users.sourceforge.net>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: caml-list <caml-list@inria.fr>
Subject: Re: [Caml-list] Re: Announce: Schoca-0.2.3 released
Date: 26 Oct 2004 01:15:20 +1000	[thread overview]
Message-ID: <1098717320.3075.309.camel@pelican.wigram> (raw)
In-Reply-To: <jwvekjm7u63.fsf-monnier+gmane.comp.lang.caml.inria@gnu.org>

On Tue, 2004-10-26 at 00:35, Stefan Monnier wrote:

> Following the GMP precedent (GMP was a GPL library and someone wanted to use
> it in a non-GPL product), the FSF managed to require the company to write
> the crappy implementation "fgmp" but was then satisfied.

Sounds like a con job. I can write code that requires
a GMP compatible library and FSF can't do anything about
how I licence my code -- provided I don't actually
derive any of my code from GPL'd code.

> I.e. there's a clear precedent that shows you *can* indeed use the trick of
> writing a crappy compatible library. 

The real problem is that to make your
code work properly with GMP or other library you need to
provide an interface. It isn't so easy to do that without
'deriving' from a published specification -- either the actual
headers or the documentation. You have to use the same
function names and equivalent types, and to get that right
you pretty much have to derive from the spec.

I have no idea how to do that without coming under
the control of the licence for the spec .. but if you
do manage to do so, the ability to link to the implementation
can't possibly be relevant .. unless perhaps you test
your code against it, and make bug fixes, in which case
those fixed codes just might be deemed derived works.

As it happens, Felix has a wrapper for the C++ wrapper
for GMP, and it is FFAU and not GPL because the interface
is 'the usual math operators'. I also ship a wrapper
generator that can wrap code like GMP to make it available
under Felix. Those wrappers are derived, and so they're
GPL .. but I don't ship them, only the tool that creates them.

It's not clear including such wrappers in a Felix program
requires it to be GPL either. That's because Felix has
an advanced source code linker that only instantiates
used code .. so you can have the capability there,
and perhaps your whole source is infected .. but if you
don't actually call GMP the resultant program is
no longer GPL :) Umm . what .. lol!

Which all comes back to the stupidity of trying to define
what using/linking/combining/distributing/ etc etc actually
mean. The answer is -- nothing at all, outside of existing
practice used for C programs. Interscript/Felix/Flxcc (the latter
is the wrapper generator) approach the problem in such a 
novel way that the terms of the GPL are meaningless.

For example .. the wrapper generator creates a derived
work .. but it fails to include the licence of the original
work in the generated wrappers. Is it breaching GPL?
Of course not -- its the *client* who uses it that is at risk.

Well, perhaps your /usr/include contains some code licenced
with a license incompatible with GPL .. but flxcc wraps
the *whole* of /usr/include in one go. The resultant
product is derived from all of it simultaneously.
So is it actually legal to run the tool at all??

-- 
John Skaller, mailto:skaller@users.sf.net
voice: 061-2-9660-0850, 
snail: PO BOX 401 Glebe NSW 2037 Australia
Checkout the Felix programming language http://felix.sf.net




  reply	other threads:[~2004-10-25 15:15 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-24  9:03 [Caml-list] " Christoph Bauer
2004-10-24 18:29 ` skaller
2004-10-25  2:58   ` David Brown
2004-10-25  3:38     ` Jacques Garrigue
2004-10-25  5:01       ` David Brown
2004-10-25  6:08         ` Jacques Garrigue
2004-10-25  6:40           ` skaller
2004-10-25  8:00         ` Ville-Pertti Keinonen
2004-10-25 14:35           ` Stefan Monnier
2004-10-25 15:15             ` skaller [this message]
2004-10-25 15:25               ` [Caml-list] " Stefan Monnier
2004-10-25 14:42           ` [Caml-list] " skaller
2004-10-25 15:52           ` David Brown
2004-10-25 18:10           ` Hartmann Schaffer
2004-10-25  5:56       ` [Caml-list] licence stuff again skaller
2004-10-25  5:18     ` [Caml-list] Announce: Schoca-0.2.3 released skaller
2004-10-25  5:29       ` David Brown
2004-10-25  6:07         ` skaller
2004-10-27 14:42           ` Sven Luther
2004-10-27 14:40       ` Sven Luther
2004-10-27 16:04         ` skaller
2004-10-27 17:46         ` David Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1098717320.3075.309.camel@pelican.wigram \
    --to=skaller@users.sourceforge.net \
    --cc=caml-list@inria.fr \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).