Q. Do you know of reimplementation of APIs that originated outside of Sun?
A. Yes, regular expressions (RE). We needed RE's in Java, and the Perl RE API was dominant. We wanted to be compatible with it. So we reimplemented the Perl API in Java (java.util.regex). An additional advantage is we could then use the battery of RE tests from Perl to test our implementation.
A. Yes.
Q. Did Sun invent OO?
A. No.
Q. Is C++ an OO language, and does it use APIs?
A. Yes.
Q. (Repeat same question and answer for Python and Objective C).
Q. Sun didn't invent the concept of APIs did it?
A. No.
Q. Are there language-independent APIs?
A. Yes, but they're not very good.
[Brief mention about the fact that apparently there are other languages which run on the Java virtual machine.]
[Purcell draws a diagram on the flip board which he describes as showing that the Java APIs come in packages; within a package are classes and interfaces; within classes there are methods; exceptions are part of the API design. Apparently Section 8.4 and chapter 9 of the JLS discuss these things. Reinhold distinguishes the API, Purcell shows a brief snippet of Reinhold's video deposition; I'm not sure what the point was.][PJ: When a lawyer asks a question, gets an answer, and then shows that person's deposition video, it means he thinks the witness contradicted himself.]
[Here Purcell messes up the tech, because he starts asking questions about accessing "source code" from an API].
Q. Without APIs, could Java do I/O? Would it be of much use?
A. No.
Q. Some of the Java APIs were done outside of Sun, correct? And Sun doesn't claim copyright on those.
A. Correct.
Q. Some of the copyrighted APIs (e.g., java.nio) were also done in collaboration with groups outside Sun/Oracle, correct?
A. Yes, sometimes there are expert working groups.
Q. Of the 37 APIs, some were done in collaboration with the Java Community Process (JCP), correct?
A. Yes.
Q. Has Google collaborated on some Sun APIs?
A. Yes.
P.S. А люди говорят, что Java это сложный язык …