Mailing List Archive

Support open source code!


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: new webpage: rikai.com



>>>>> "jb" == Jonathan Q <j-q@example.com> writes:

    jb> Todd Rudick (trudick@example.com) wrote:

    >> - GPL like in essence.
    >> - won't let people sell the output without dealing with me (on
    >> the bison analogy, I think the GPL takes care of this already)

The above two points can't both be satisfied.  The GPL is completely
silent on the output of the program except in very special cases; by
implication you can't put any conditions on people running the
program.

The bison analogy is probably false.  yyparse() is in fact edited by
bison, then linked as an object into the program.  The GPL, were it
applied to yyparse(), would then imply the whole program must be
GPLed.  Even the Linus and Larry interpretations of the GPL would
presumably not permit withholding source from a distribution here.

However, in the case that we're discussing here, unless the clone site
is serving up something like a Java class, the client gets the
source.  (This would be true of helper code distributed as Javascript,
for example.)  rms himself could not help you if somebody implemented
a modified server as

    cat tmp.html | pre-processor | rikai-engine | httpd

and I really don't see how

    cat tmp.html | rikai-engine | post-processor | httpd

could be successfully attacked in court, even if it modifies the rikai
Javascript (or whatever), as long as post-processor contains no rikai
code.

This is one of the many real problems with GPL in the ASP environment.
I would argue that you have distributed source (as edited by the
postprocessor) and only need to make the source to the rikai engine
available too.  The source of and algorithms used by post-processor can
be kept proprietary, because it is not the program covered by the GPL:
the GPL'd program is the web document itself!!

The only way I can see to get around this is to argue that the crap
that is generated by most autoprogramming programs can't be considered
"the preferred form for ... making modifications to it".  But if
unlike yyparse() you can't point to files rikai.{simple,hairy}, but
rather it is generated by postprocessor on the fly, line by line, then
you're stuck.  It may not be pleasant, but it is the "preferred form",
because it's the only form.  And even that would only work if the
human programmer or post-processor modifies rikai.* itself -- if it
modifies the _web document_ then there is no hold for the GPL.

In fact, it is not clear that a couple of lines of Javascript wouldn't
qualify for a "too small to notice" exemption from the copyright laws
(the maximally anal folks at FSF do not demand papers for any change
under 10, or maybe 16, lines, IIRC).  Ask Frank Bennett, he's a lawyer.

(That doesn't apply to the woolly stuff preceding; no precedents, no
reason why a lawyer knows more than anybody else, eh, Frank?)

    >> - unGPL like in the following sense: won't threaten rikai.com's
    >> ability to make up hosting costs with ads. (maybe disallow

I personally think the GPL satisfies this one for this application.
Now that Simon has published, anyway.  :-)

    >> public free servers, or require the same ad scheme, I dunno and
    >> can use some advice).

The Aladdin Free Public License is basically the same idea, except
that of course use is unrestricted.  But it shows how to modify the
GPL to restrict some of the freedoms the GPL gives.

You could look at some of the shareware licenses (PKZip, xv, etc) and
see about modifying them.

I believe Qt still has a no-commercial-use restriction in their
Windows license.  (Or is Windows Qt binary only?)

    jb> A source-available restricted license that makes it free for
    jb> personal use but requires a paid license for any commercial
    jb> use, including placing paid banner ads on the page.

Yup.  That's what most people do.  (But "most people" doesn't include
anybody who's considered a "real member of the OSS community".  Look
at TrollTech, or the ungodly amount of crap Cygnus takes for signing
strictly term-limited NDAs on porting GCC to unreleased processors.)

    >> Can I tack something on to the GPL to accomplish the third
    >> point? I

IIRC, trying to write a rider that says "this is the GPL except..."
really isn't feasible, unless it's done in such a way that you might
as well just rewrite the license and be done with it.

    jb> I doubt it, since the main point of the GPL is that you can do
    jb> anything you want with the software except make it non-Free.

This won't bother a lawyer.

    jb> Even if it is possible to mangle the GPL in such a way, I
    jb> think doing so is a bad idea.  It seems to much like trying to
    jb> find ways to weaken the GPL.

A person's license is whatever they want to make it, subject to
getting the incantations correct and some minor issues of law.  What
Linus and Larry do (reinterpreting the definition of "work") weakens
the GPL, because it demonstrates division in the community about its
intent.  It may be harder for rms to defend his "the scope of the work
ends when it calls exec(3)" interpretation in court because of the
popularity of the Linus and Larry interpretations that "the scope of
the work ends at calls to dl-open()" (Linus) and "the scope of the
work ends at function calls" (Larry).

But explicitly rewriting the GPL does not weaken others' use of it.  If
someone wants to explain his license by saying "this is really the GPL
but it allows me to make money", I would consider that a lie but not a
threat to humanity.  :-)

You know, I've considered writing a GNU readline server that does
nothing except provide the exec boundary between any given application
(Ghostscript is the one I have in mind) and the GPLed libreadline.
The main trick would be to write the enum defining the RPC protocol
_before_ looking at readline.h.

How do you feel about that, Jonathan?

-- 
University of Tsukuba                Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Institute of Policy and Planning Sciences       Tel/fax: +81 (298) 53-5091
_________________  _________________  _________________  _________________
What are those straight lines for?  "XEmacs rules."


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links