Java: An Innovation in Software Development and a Dilemma in Copyright Law
Journal of Intellectual Property Law
Volume 7 | Issue 1
Article 5
March 1999
Java: An Innovation in Software Development and
a Dilemma in Copyright Law
Michael P. Doerr
Follow this and additional works at: https://digitalcommons.law.uga.edu/jipl
Part of the First Amendment Commons, and the Intellectual Property Law Commons
Recommended Citation
Michael P. Doerr, Java: An Innovation in Software Development and a Dilemma in Copyright Law, 7 J. Intell. Prop. L. 127 (1999).
Available at: https://digitalcommons.law.uga.edu/jipl/vol7/iss1/5
This Notes is brought to you for free and open access by Digital Commons @ Georgia Law. It has been accepted for inclusion in Journal of Intellectual
Property Law by an authorized editor of Digital Commons @ Georgia Law. Please share how you have benefited from this access For more
information, please contact .
Doerr: Java: An Innovation in Software Development and a Dilemma in Copy
JAVA: AN INNOVATION IN SOFTWARE
DEVELOPMENT AND A DILEMMA IN
COPYRIGHT LAW
I. INTRODUCTION
The introduction of Java software development technology by Sun
Microsystems, Inc. (Sun) raises new issues in an already unsettled and
confusing area of law: the copyrightability of computer programming
languages. In 1980, Congress adopted the recommendations of the National
Commission on New Technological Uses of Copyrighted Works (CONTU)
and passed legislation defining computer programs as copyrightable subject
matter.' However, no mention was made about the copyrightability of the
computer programming languages used to write computer software. No
court has explicitly ruled on the issue of whether copyright protection
subsists in a computer programming language.2 Academics have argued both
for and against extending copyright protection to computer programming
languages.3 The development of Java makes this unsettled issue more
interesting, important, and complex.
Java was developed by Sun, who describes the technology as "a
standardized application programming environment that affords software
developers the opportunity to create and distribute a single version of
Copyright protection subsists in "literary works." 17 U.S.C. § 102(a)(1) (1994). Computer
programs are classified as literary works for copyright purposes. H.R. REP. NO. 94-1476, at 54 (1976).
2 But see Lotus Dev. Corp. v. Paperback Software Int'l, Inc., 740 F. Supp. 37, 72, 15 U.S.P.Q.2d
(BNA) 1577, 1602 (D. Mass. 1990) (criticizing, in dicta, the argument that computer programming
languages are uncopyrightable subject matter).
' For arguments supporting copyrightability of computer programming languages, see generally
Ronald Johnson & Allen Grogan, CopyrightProtectionfor Command Driven Interfaces, 8:6 COMPUTER
L. 1 (1991). For arguments against the copyrightability of computer programming languages, see generally
Marci A. Hamilton & Ted Sabety, ComputerScience Concepts in Copyright Cases: The Pathto a Coherent
Law, 10 HARV. J.L. & TECH. 239 (1997); Elizabeth G. Lowry, Copyright Protection for Computer
Languages: CreativeIncentive or Technological Threat?,39 EMORY L.J. 1293 (1990); Steve Posner, Can a
Computer Language Be Copyrighted? The State of Confusion in Computer Copyright Law, 11
COMPUTER/L.J. 97 (1991); Richard H. Stern, Copyright in Computer Programming Languages, 17
RUTGERS COMPUTER & TECH. L.J. 321 (1991).
Published by Digital Commons @ Georgia Law, 1999
1
Journal of Intellectual Property Law, Vol. 7, Iss. 1 [1999], Art. 5
J. INTELL. PROP.L.
[Vol. 7:127
programming code that is capable of operating on many different, otherwise
incompatible systems platforms and browsers. "'
This Note will examine how Java works, how it has changed the
computer science industry, and how it affects the debate over the
copyrightability of programming languages. We will first consider how
traditional programming languages operate and how Java has changed the
traditional framework. To facilitate a clear understanding of the copyright
issues involved, we will consider a hypothetical involving a copier who has
used the exact Java programming language specification without copying
Sun's literal code. We will use this hypothetical to explore Sun's claim
against the copier for infringement of the copyright in the actual language,
if any such infringement has occurred. In doing so, we will examine the
arguments for and against allowing copyright protection to subsist in a
programming language by itself. We will then consider Sun's claim against
the hypothetical copier for infringement of the copyright in the computer
software programs that utilize the Java languages. Finally, we will examine
the law surrounding the extension of copyright protection to non-literal
elements of a computer program and whether copyright protection could be
extended to give Sun copyright-like protection in the Java language.
II. BACKGROUND AND TECHNICAL OVERVIEW OF JAVA
A. THE COMPUTER SCIENCE WORLD BEFORE JAVA
The allure of Java is its ability to be platform independent. To understand
what platform independent means, we will discuss what made other
programming languages platform dependent.
First, what is a platform? The simple answer is that a platform is just a
type of computer environment. For example, the most well-known
platforms are currently the PC, or Windows platform, and the Macintosh
platform. Unix and Linux are also platforms used today. What makes these
platforms different are the different instruction sets they use. Computers
operate on instructions in the form of binary strings, or strings of ones and
Sun Microsystems, Inc.,Memorandum ofPoints&Authority (visited Oct. 11, 1998) <http://www.
java.sun.com/lawsuit/counterclaimdoc2.html >.
https://digitalcommons.law.uga.edu/jipl/vol7/iss1/5
2
Doerr: Java: An Innovation in Software Development and a Dilemma in Copy
1999]
JAVA COPYRIGHTABILITY
zeroes called the machine language.' This is the most basic language in which
the computer communicates.6
Each instruction for the computer
corresponds to a specific string of ones and zeroes. In each environment
there are a vast number of different instructions, or binary strings, that the
computer will recognize. This vast number of recognizable instructions
constitutes that platform's instruction set. What makes platforms different
from one another is the form of' their instruction sets. Each platform's
instruction set is comprised of a different number and type of instructions.
Computer programmers formerly wrote computer programs directly in
machine language,' but now they communicate with computers using
computer programming languages. Examples of pre-Java, or traditional,
computer programming languages are C, C + +, Pascal, and FORTRAN.
Programmers write a program in a given programming language and save it
into a basic text file (just like a text file used to save a letter written to a
friend). This text file is called the sourcefile A program called a compiler
then converts the text file into an object file,9 or a fil (...truncated)