Copyright issues [was: Re: Who wants to refactor #deepCopy?]

Andrew C. Greenberg werdna at gate.net
Tue May 30 04:46:03 UTC 2000


>How far can someone 'copy' an existing implementation of a commercial
>Smalltalk?
>- Totally?
>- Just rename some vars?
>- Change the class structure?
>- Change some algorithms?

The following provides broad summaries of U.S. law only.  Your 
mileage may vary.

Copyright protects expressions of ideas, and not ideas itself.  To 
the extent a program implements a particular functionality, that 
functionality may be recreated without reference to the expression. 
If the expression is only one of a few limited ways in which the 
functionality may be implemented, it probably isn't protected by 
copyright at all (the so-called "merger doctrine" where the idea 
merges with the expression).

Still further, you can only infringe if you are guilty of copying or 
deriving from the original work.  If you are presented with a 
detailed specification, even if derived from an existing work, that 
embodies only the ideas of the work, and develop a program from the 
specification without reference to the original (a so-called 
"clean-room" implementation), there is no infringement.  (Practice 
this only witht the guidance of competent counsel -- "clean rooming" 
is difficult to do right, and a disaster if done wrong).

So, while there is great latitude to borrow concepts and ideas from 
an existing functional work, any of the preceding acts from the 
original post -- total copying or changes with just a few minor 
mechanical variations, or even derivations with sophisticated 
variations -- may well be infringement.  In short, the devil is in 
the details.  Don't count, however, on appropriating expression from 
a work, with or without changes, and then incorporating portions of 
it directly in your own.  You are free to borrow the IDEAS, not the 
expressions.
-- 
Andrew C. Greenberg		acg at netwolves.com
V.P. Eng., R&D, 		813.885.2779 (office)
Netwolves Corporation		813.885.2380 (facsimile)
www.netwolves.com





More information about the Squeak-dev mailing list