10.5. Programming Languages

Ruby 2.0.0

Red Hat Enterprise Linux 7 provides the latest Ruby version, 2.0.0. The most notable of the changes between version 2.0.0 and 1.8.7 included in Red Hat Enterprise Linux 6 are the following:
  • New interpreter, YARV (yet another Ruby VM), which significantly reduces loading times, especially for applications with large trees or files;
  • New and faster "Lazy Sweep" garbage collector;
  • Ruby now supports string encoding;
  • Ruby now supports native threads instead of green threads.
For more information about Ruby 2.0.0, consult the upstream pages of the project: https://www.ruby-lang.org/en/.

Python 2.7.5

Red Hat Enterprise Linux 7 includes Python 2.7.5, which is the latest Python 2.7 series release. This version contains many improvements in performance and provides forward compatibility with Python 3. The most notable of the changes in Python 2.7.5 are the following:
  • An ordered dictionary type;
  • A faster I/O module;
  • Dictionary comprehensions and set comprehensions;
  • The sysconfig module.
For the full list of changes, see http://docs.python.org/dev/whatsnew/2.7.html

Java 7 and Multiple JDKs

Red Hat Enterprise Linux 7 features OpenJDK7 as the default Java Development Kit (JDK) and Java 7 as the default Java version. All Java 7 packages (java-1.7.0-openjdk, java-1.7.0-oracle, java-1.7.1-ibm) allow installation of multiple versions in parallel, similarly to the kernel.
The ability of parallel installation allows users to try out multiple versions of the same JDK simultaneously, to tune performance and debug problems if needed. The precise JDK is selectable through /etc/alternatives/ as before.

Important

The Optional channel must be enabled in order to successfully install the java-1.7.1-ibm-jdbc or java-1.7.1-ibm-plugin packages from the Supplementary channel. The Optional channel contains packages that satisfy dependencies of the desired Java packages. Before installing packages from the Optional and Supplementary channels, see Scope of Coverage Details. Information on subscribing to the Optional and Supplementary channels can be found in the Red Hat Knowledgebase solution How to access Optional and Supplementary channels.