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)

Download PDF
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?