[squeak-dev] Contributor agreement

Jecel Assumpcao Jr. jecel at merlintec.com
Tue Sep 23 22:56:16 UTC 2014


David T. Lewis wrote on Mon, 22 Sep 2014 20:54:13 -0400
> The signed contributor agreement was a part of the process of establishing
> the current Squeak licensing. I signed one of them myself, as did everyone
> else who was known to have contributed anything (large or small) to the
> image up to that point.

Just to add a bit to the history of the licensing issues for those who
have joined us more recently:

After being developed as an internal and mostly secret project at Xerox
PARC for a decade, the company decided to release Smalltalk to the world
in the early 1980s (thanks mostly to the efforts of Adele Goldberg and
friends). Xerox got in touch with several other companies and made a
deal with Apple, Tektronix, HP and DEC to give them a license to the
Smalltalk technology that would allow them to do absolutely anything
they wanted with it for free in exchange for them dedicating engineering
resources to help with the process of converting a research project into
a product.

Later on a fifth license was granted to Berkeley but I don't know if the
terms were the same. Tektronix created some "artificial intelligence"
workstations around Smalltalk (the 4404 and 4406). They also used
Smalltalk in their oscilloscopes, but I am not sure if this also came
from Xerox. HP and DEC are now the same company and didn't do anything
with it, though later HP had a Distributed Smalltalk project.

Apple did a limited release of Lisa Smalltalk to developers and this
later ran on Macintosh machines as well when these got enough memory. It
was never available to the general public. When the Squeak project was
started in 1996/1997 this code was the starting point and the Xerox
license meant that Apple could relicense it under any terms it wanted.
Since the Squeak group was moving from Apple to Disney, getting Apple to
do its very first Free Software license was key to not having to start
from scratch. The new SqueakL (as the license became known) tried to
strike a balance between the advantages of the BSD/MIT commercial
friendliness (so Disney could build products on top of Squeak and
distribute them without giving away the source) and the GPL forced
contributions to the common good. Which terms applied depended on
whether a method was considered a part of the kernel or if it was an
extension, which is a rather subjective thing in a monolithic image.

The following year the term Open Source was invented and defined in a
way that the SqueakL didn't quite fit. This caused a lot of anguish and
yearly discussions about possible relicensing (always in the Spring,
though since it is nearly Spring where I am this thread could be
considered timely). Oddly enough the halfway MIT half GPL aspect never
bothered anybody. The complaints were about the terms for one of the
fonts (which was soon eliminated from the image anyway), about export
restrictions (which US laws impose even on licenses that don't mention
them) and the promise to help Apple in any lawsuit they got into due to
your distributing Squeak.

Things became critical in 2006 when people in the One Laptop Per Child
project threatened to reject Squeak due to the license. Alan Kay called
Steve Jobs personally and got Apple to re-release Squeak 1.1 under the
Apple Community license, as allowed by their Xerox PARC license. The
OLPC people were not happy with that, and Alan got Jobs to release
Squeak 1.1 a third time under the Apache version 2 license. Then the
people at VPRI (Alan's research institute) started the effort to get
everybody who had ever added code after Squeak 1.1 to sign an agreement
to relicense their part from SqueakL to MIT. The focus was on Etoys, so
the Pharo guys extended this effort to the code in their system which
wasn't a part of Etoys. After that the Squeak Board started from the
Pharo effort and covered the whole Squeak code (my contribution was
checking everything that was done in early versions before we had
programmer initials).

One additional detail is that when Ian Piumarta ported the Squeak VM to
Unix he selected to the GPL for his contributions. Since this is C code
and very isolated from the rest of the system nobody has ever had a
problem with that. But it does mean that the whole Squeak system is
available in 3 different licenses: parts under the GPL, parts under
Apache version 2 and everything else under MIT. Our policy is that all
future contributions have to be MIT, so the tiny parts under the two
other licenses will never grow. The simplification that "Squeak is
available under the MIT license" is good enough for nearly all purposes,
but some people are picky so I thought it would be a good idea to bore
you all with these details.

-- Jecel



More information about the Squeak-dev mailing list