The spec http://docs.oracle.com/javase/8/docs/api/javax/script/Compilable.html#compile-java.lang.String- has the following problems: 1) typo: "Returns: An subclass ..." 2) Returns is worded differently than the other - overloaded and functionally identical version of the same method. Please compare: "Returns: An subclass of CompiledScript to be executed later using one of the eval methods of CompiledScript." and "Returns: An implementation of CompiledScript to be executed later using one of its eval methods of CompiledScript." Different wording is confusing since it may give an impression that the methods behave differently and return different results.