[racket] Clarification on licensing of Racket code?...

From: Brian Mastenbrook (brian at mastenbrook.net)
Date: Sat Apr 7 12:05:28 EDT 2012

On 04/07/2012 04:40 AM, Rüdiger Asche wrote:
> Thanks for this enlightening contribution!

I fear you've drawn the wrong conclusions from it. Just to clarify: you 
clearly can create and distribute proprietary software using Racket. To 
do so, you must comply with section 6 of the license. The point I 
intended to make is that including the source code to your program is 
the clearest way to avoid potential problems in the interpretation of 
this section. This doesn't mean that your program needs to be open 
source or freely licensed; there are plenty of proprietary programs that 
include source without or in addition to binaries. You could instead 
distribute .zo files, but this falls into a well-known grey area in the 
interpretation of the LGPL, so you may or may not be in the clear.

> This just reaffirms my former conviction that nothing is really free,
> and I'd much rather spend my money on a good commercial product (and
> therebye support the people who deserve to have their development
> efforts paid as well as be entitled to professional product support*)
> than on a plethora of lawyers to clarify whether something dubbed as
> "free" really *is* free (which is also a moral issue, of course; since I
> expect my customers to appreciate the value of my development efforts by
> paying for the product, how could I justify *not* paying those whose
> work I use as ground work for my product?).

Using commercial software does not absolve you of the responsibility to 
read and understand the license of the software you're using. In fact, 
it can very often be more complicated and difficult to understand. When 
in doubt, consult a lawyer.

If you feel that it's worth supporting Racket development with your 
dollars, I'm sure there's a way to make that happen.

> So if anyone has pointers to commercial variations of Racket or Scheme
> to be used as building and deployment platforms for my commercial
> software (Chez Scheme seems to have ceased out of existence; I
> downloaded the trial version and found that it doesn't run on XP anymore
> and therefore most probably not on later versions of Windows)

Why would you draw that conclusion when the most recent version of Chez 
was released in October 2011? It's more likely that there is a bug or a 
problem running on older versions of Windows.

There are also plenty of Scheme dialects under liberal MIT/Xorg-style 
licenses, which basically allow use for any purposes as long as you 
don't sue the author and you include the original author's copyright 
notice in your distribution.

> , I'd be
> glad to hear about them. In the meantime, I'll probably stick to what
> I'm doing right now - use Racket for prototyping, testing, internal
> utilties etc. and code the production level software in plain ol' C/C++.
> Bummer because I know by now that coding in Scheme/Racket WILL produce
> sturdier, smaller and generally better software even in the field, but
> apparently there world ain't ready for it yet.

It sounds like *you're* not ready for it, not the world.

> *Don't get me wrong - the support on this mailing list is exceptionally
> good, but it's all voluntary, and in a commercial environment, it is
> sort of dangerous to rely on voluntary support no matter how good the
> quality.

The world would be a better place if "voluntary" was seen as an ideal, 
not a detriment. The people supporting Racket are doing so because they 
want to do it, and as a result the quality of such support is very high. 
I don't think I would get support which is anywhere near as responsive 
or helpful from the commercial vendors I rely upon. Unlike most 
commercial products, you can also fix problems in Racket yourself if you 
need to.

For what it's worth, this is enough for me to depend on Racket for my 
business. Time is money, and I would rather reap the advantages of 
programming in Racket than waste time with languages and tools that 
don't do what I need or actively get in my way.

Brian Mastenbrook
brian at mastenbrook.net

Posted on the users mailing list.