Programming language R 3.0 gets long vectors
Version 3.0 of the R programming language, the software environment designed specifically for statistical calculations and graphing, has been released. Version 3..0 is code-named Masked Marvel and is the first major release for eight and a half years, though in that time R's minor releases have given the environment UTF-8 support, 64-bit Windows support, byte-code compilation, namespaced packages, parallel processing and load balancing functions. The key change in the new version is support for 64-bit integer values on all R platforms. For R 3.0, this means in particular the introduction of long vectors of more than 231-1 elements on 64-bit systems. For some time, 64-bit support has relied on workarounds developed largely as part of Google's Summer of Code initiative.
Other changes include a new function within the parallel package which allows for working with the CPU affinity mask and Matrix indexing by two-column numeric indices is now supported for replacement as well as extraction. The release announcement lists a further 200+ items, including fundamental changes, new features, performance enhancements and bug fixes.
R is widely used by statisticians and data analysts, as it is simple to learn, even for non-programmers. R includes a range of mechanisms for organising data, generating calculations and preparing visual representations of data sets. There are also around 5000 extension packages for R dedicated to performing specialised tasks.
The language, which was developed under the aegis of the GNU project and is licensed under the GPL (General Public Licence), arose in the early 90s as an offshoot of the S language developed by Bell Laboratories, which had similar aims. Many programs written in S can also run under R. The language has gained significant kudos in recent times, as a result of companies such as SAP and Oracle going to considerable trouble to support it in products like HANA, Oracle database and TimesTen. R is also used by Google for data analysis.
(sno)