Google provides a compiler called protoc which can produce output for C++, Java or Python. Commercial SDK are available for C, C++, Java, and .NET. They are not stored in separate external files like Java or C++ programs. RDDs can contain any type of Python, Java, or Scala objects. It has many language bindings including C, C++, Go, Java, and Python. API documentation can be enriched with metadata information like Java annotations. There are bindings in Python, Java and MATLAB/OCTAVE. Clients are also available in Java or PHP. Language drivers are available for Java (JDBC), Python (DBAPI2), Node. Oracle supplies the Java platform for use with Java. The OS provides support for Java MIDP 1.0 and WAP 1.2. Phones with Sony Ericsson Java Platform-8 have support for JSR 226. Language bindings exist for both Java and Scala. It includes "tools for developing, debugging, and monitoring Java applications". This is analogous to the process for compiling and running Java code.