Oracle America, Inc. v. Google Inc.
Filing
1110
Statement Oracle's markup of the Court's Background Section by Oracle America, Inc.. (Jacobs, Michael) (Filed on 5/9/2012)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
MORRISON & FOERSTER LLP
MICHAEL A. JACOBS (Bar No. 111664)
mjacobs@mofo.com
KENNETH A. KUWAYTI (Bar No. 145384)
kkuwayti@mofo.com
MARC DAVID PETERS (Bar No. 211725)
mdpeters@mofo.com
DANIEL P. MUINO (Bar No. 209624)
dmuino@mofo.com
755 Page Mill Road, Palo Alto, CA 94304-1018
Telephone: (650) 813-5600 / Facsimile: (650) 494-0792
BOIES, SCHILLER & FLEXNER LLP
DAVID BOIES (Admitted Pro Hac Vice)
dboies@bsfllp.com
333 Main Street, Armonk, NY 10504
Telephone: (914) 749-8200 / Facsimile: (914) 749-8300
STEVEN C. HOLTZMAN (Bar No. 144177)
sholtzman@bsfllp.com
1999 Harrison St., Suite 900, Oakland, CA 94612
Telephone: (510) 874-1000 / Facsimile: (510) 874-1460
ORACLE CORPORATION
DORIAN DALEY (Bar No. 129049)
dorian.daley@oracle.com
DEBORAH K. MILLER (Bar No. 95527)
deborah.miller@oracle.com
MATTHEW M. SARBORARIA (Bar No. 211600)
matthew.sarboraria@oracle.com
500 Oracle Parkway, Redwood City, CA 94065
Telephone: (650) 506-5200 / Facsimile: (650) 506-7114
Attorneys for Plaintiff
ORACLE AMERICA, INC.
18
19
UNITED STATES DISTRICT COURT
20
NORTHERN DISTRICT OF CALIFORNIA
21
SAN FRANCISCO DIVISION
22
ORACLE AMERICA, INC.
23
Plaintiff,
ORACLE’S MARKUP OF COURT’S
BACKGROUND SECTION
Defendant.
Dept.: Courtroom 8, 19th Floor
Judge: Honorable William H. Alsup
24
v.
25
Case No. CV 10-03561 WHA
GOOGLE INC.
26
27
28
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
1
Oracle respectfully submits this markup of the Court’s proposed background section, after
2
having consulted with its technical staff. Two versions are attached for the Court’s convenience:
3
both redline and clear text.
4
5
The Court asked about the difference between statements and expressions. This short
description explains the difference between the two:
6
7
8
9
An expression is a (typically) small piece of program text that instructs the computer to
calculate a single value (e.g., 1 + 3, 2 * pi * r, Math.max(a, b)). A statement can be just an
10
expression, or it can be a control structure that contains one or more expressions or other
11
statements. For example, an “if” statement expresses a conditional action:
12
13
if (x > y)
System.out.println("greater");
14
This statement includes an expression (x > y) and another statement
15
(System.out.println("greater")). It instructs the computer to compare the two variables x and y
16
and then print the word “greater” if x is indeed greater than y. Statements are run in the sequence
17
written. Statements are what tell the computer to do work.
18
19
20
21
22
23
24
25
26
27
28
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
1
1
Java syntax includes separators (e.g., {, }, ;), operators (e.g., +, -, *, /, <, >), literal values
2
(e.g., 123, ‘x’, “Foo”), and keywords (e.g., if, then, else, while, return). These carry precise
3
predefined meanings. Java syntax also includes identifiers (e.g., x, String, java.lang.Object),
4
which are used by developers to name specific values, fields, methods, and classes as described
5
below. These are used to form statements, each statement being a single command executed by
6
the Java interpreterdirective to take some action. Statements are run in the sequence written.
7
Statements are what tell the computer to do work.
8
9
A declaration is a type of statement. It instructs the computer to recognize a name as a
variable or as a method or as a class and to reserve memory accordingly. The word “declare” is
10
not used to precede a declaration. A declaration is a line (or more) of code that, for example,
11
declares the variable pi to be 3.141592 or declares a class or method in its fully qualified form.
12
The next higher level of syntax is the method. A method is a type of declaration. A
13
method is a sequence of statements. Once defined, it can be invoked or “called” on” elsewhere in
14
the program. A method is like a subroutine. When a method is called upon, arguments are
15
usually passed over to the method. These are the inputs. The output(s) from the method are
16
known as the return values(s). An example is a method that receives two numbers as inputs and
17
returns the greater of the two as the output. Another example is a method that receives an angle
18
expressed in degrees and returns the cosine of that angle. Methods can be much more
19
complicated. A method, for example, could receive the month and day and return the Earth’s
20
declination to the sun for that month and day.
21
A method declaration consists of the method header and the method body. (At the trial,
22
however, witnesses sometimes referred to the method header as the method declaration or the
23
method signature, even though that was not technically correct, and so the Court will use the three
24
synonymously to match the evidencesignature of the method (discussed below) as the
25
declaration.) A method declaration defines the entire routine to be followed when the method is
26
called. A method call is a line of other code somewhere else in the program that calls up (or
27
invokes) the method and specifies the arguments to be passed to the method for crunching. The
28
return is returned for use as the program marches on after the method call.
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
2
1
A method header, also called a method signature, consists of the name of the method and
2
the number and types of formal parameters to the method, if any. More specifically, the a method
3
signature header will contain the name of the method; the number, order, type and name of the
4
parameters used by the method; the type of value returned by the method; the checked exceptions
5
that the method can throw; and various method modifiers that provide additional information
6
about the method.
7
A method body is a block of code that implements the method. If a method is declared to
8
have a return type, then the method body must have a return statement and the statement must be
9
followed by include the expression to be returned when that line of code is reached. During trial,
10
many witnesses referred to the method body as the “implementation.” It is the method body that
11
does the heavy lifting, namely the actual work of taking the inputs, crunching them, and returning
12
an answer. (This part was not copied from Java by Google.)
13
A class is another type of declaration After a method, the next higher level of syntax is the
14
class. A class defines may include a collection of fields that hold data values and methods that
15
operate on those values. Classes are a fundamental structural element in the Java programming
16
language. All Java programs are written as aone or more classes. All Java statements appear
17
within methods and all methods are implemented within classes. To write a Java program, it
18
must be placed in a class.
19
A class definition declaration includes the name of the class and other modifiers
20
functional important information that define the class. The body of the class includes fields and
21
methods, constructors and initializers. Classes can have subclasses that inherit the functionality
22
of the class itself while adding specialized functionality for the subclass. When a new subclass is
23
defined, the definition declaration uses the word “extends” to alert the computer compiler that the
24
fields and methods of the patent parent class are inherited extended automatically into the new
25
subclass so that only the additional fields or methods new and specialized codes for the subclass
26
need be stateddeclared.
27
28
An interface is a special type of class, which is used to relate similar classes more flexibly
than allowed by the strict subclass/superclass hierarchy. An interface contains method
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
3
1
declarations, but the declarations do not have bodies. If a class is declared to “implement” an
2
interface, then for each method in the interface the class must either declare that method or inherit
3
it from a superclass; a class can implement more than one interface.
4
5
Classes and interfaces can be grouped into packages in the same way we all group files
into folders on our computers.
6
Here is a simple example that illustrates methods, classes and packages.
7
Package java.lang;
8
public class Math {
9
public static int max (int x, int y) {
10
if (x > y) return x ;
11
else return y ;
12
}
13
{}
14
A typical program would have more than one method in a class. All Java programs must
15
have a at least one class. All programs, however, need not have packages, which are merely
16
convenient ways to organize the classes.
17
To invoke this method from a program, the following could be included in the program:
18
int a= Math.max (2, 3);
19
20
21
22
23
24
25
26
27
28
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
4
1
Java syntax includes separators (e.g., {, }, ;), operators (e.g., +, -, *, /, <, >), literal values
2
(e.g., 123, ‘x’, “Foo”), and keywords (e.g., if, then, else, while, return). These carry precise
3
predefined meanings. Java syntax also includes identifiers (e.g., x, String, java.lang.Object),
4
which are used by developers to name specific values, fields, methods, and classes as described
5
below. These are used to form statements, each statement being a single directive to take some
6
action. Statements are run in the sequence written. Statements are what tell the computer to do
7
work.
8
9
A declaration instructs the computer to recognize a name as a variable or as a method or
as a class and to reserve memory accordingly. The word “declare” is not used to precede a
10
declaration. A declaration is a line (or more) of code that, for example, declares the variable pi to
11
be 3.141592 or declares a class or method.
12
A method is a type of declaration. A method is a sequence of statements. Once defined, it
13
can be invoked or “called on” elsewhere in the program. A method is like a subroutine. When a
14
method is called upon, arguments are usually passed over to the method. These are the inputs.
15
The output from the method are known as the return value. An example is a method that receives
16
two numbers as inputs and returns the greater of the two as the output. Another example is a
17
method that receives an angle expressed in degrees and returns the cosine of that angle. Methods
18
can be much more complicated. A method, for example, could receive the month and day and
19
return the Earth’s declination to the sun for that month and day.
20
A method declaration consists of the method header and the method body. (At the trial,
21
however, witnesses sometimes referred to the method header as the method declaration or the
22
method signature, even though that was not technically correct, and so the Court will use the three
23
synonymously to match the evidence.) A method declaration defines the entire routine to be
24
followed when the method is called. A method call is a line of other code somewhere else in the
25
program that calls up (or invokes) the method and specifies the arguments to be passed to the
26
method for crunching. The return is returned for use as the program marches on after the method
27
call.
28
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
5
1
A method signature consists of the name of the method and the number and types of
2
formal parameters to the method, if any. More specifically, a method header will contain the
3
name of the method; the number, order, type and name of the parameters used by the method; the
4
type of value returned by the method; the checked exceptions that the method can throw; and
5
various method modifiers that provide additional information about the method.
6
A method body is a block of code that implements the method. If a method is declared to
7
have a return type, then the method body must have a return statement and the statement must
8
include the expression to be returned when that line of code is reached. During trial, many
9
witnesses referred to the method body as the “implementation.” It is the method body that does
10
the heavy lifting, namely the actual work of taking the inputs, crunching them, and returning an
11
answer. (This part was not copied from Java by Google.)
12
A class is another type of declaration . A class may include a collection of fields that hold
13
data values and methods that operate on those values. Classes are a fundamental structural
14
element in the Java programming language. All Java programs are written as one or more
15
classes. Java statements appear within methods and all methods are implemented within classes.
16
To write a Java program, it must be placed in a class.
17
A class declaration includes the name of the class and other modifiers information that
18
define the class. The body of the class includes fields and methods, constructors and initializers.
19
Classes can have subclasses that inherit the functionality of the class itself while adding
20
functionality for the subclass. When a new subclass is defined, the declaration uses the word
21
“extends” to alert the compiler that the fields and methods of the parent class are inherited
22
automatically into the new subclass so that only the additional fields or methods for the subclass
23
need bedeclared.
24
An interface is a special type of class, which is used to relate similar classes more flexibly
25
than allowed by the strict subclass/superclass hierarchy. An interface contains method
26
declarations, but the declarations do not have bodies. If a class is declared to “implement” an
27
interface, then for each method in the interface the class must either declare that method or inherit
28
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
6
1
it from a superclass; a class can implement more than one interface.Classes and interfaces can be
2
grouped into packages in the same way we all group files into folders on our computers.
3
Here is a simple example that illustrates methods, classes and packages.
4
Package java.lang;
5
public class Math {
6
public static int max (int x, int y) {
7
if (x > y) return x ;
8
else return y ;
9
}
10
}
11
A typical program would have more than one method in a class. All Java programs must
12
have at least one class. All programs, however, need not have packages, which are merely
13
convenient ways to organize the classes.
14
To invoke this method from a program, the following could be included in the program:
15
int a= Math.max (2, 3);
16
17
18
19
Respectfully submitted,
20
21
22
Dated: May 9, 2012
MORRISON & FOERSTER LLP
By: /s/ Michael A. Jacobs
23
Attorneys for Plaintiff
ORACLE AMERICA, INC.
24
25
26
27
28
ORACLE’S MARKUP OF COURT’S BACKGROUND SECTION
CASE NO. CV 10-03561 WHA
pa-1528046
7
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?