R is een ontwikkelomgeving en programmeertaal voor statistische en data-analysedoeleinden. Het werd oorspronkelijk ontworpen door Ross Ihaka en Robert Gentleman (vandaar de naam R) aan de Universiteit van Auckland, Nieuw-Zeeland. In R is programmeren sterk objectgeoriënteerd en de functionaliteit kan uitgebreid worden via packages die onder andere via cran beschikbaar worden gesteld. Het R-coreteam, dat zich vandaag de dag bezighoudt met de doorontwikkeling, heeft versie 4.5.1 uitgebracht met de titel Great Square Root. De changelog van deze uitgave ziet er als volgt uit:
New features:Installation:
- The internal method of unzip() now follows unzip 6.00 in how it handles extracted file paths which contain "../". With thanks to Ivan Krylov.
Bug fixes:
- Standalone nmath can be built with early-2025 versions of clang-based compilers such as LLVM clang 20, Apple clang 17 and Intel icx 2025.0.
- Tcl/Tk 9 can be used to build package tcltk: this has become the default in some Linux distributions. *N.B.* several third-party packages currently require Tcl/Tk 8 or even 8.6 without declaring so.
- Java detection in javareconf could not detect libjvm.* in the zero variant of the JDK (PR#18884). All valid variants as of JDK 24u are now supported.
- factanal(.., rotation=*) now correctly updates rotmat, fixing PR#18886.
- dnbinom(, , ..) now is 0 correctly, instead of NaN or Inf sometimes.
- dbinom(, n=Inf, ..) is 0 now correctly, instead of NaN which also fixes many dnbinom() cases, notably those mentioned in PR#16727 comment #5.
- Fixing C level “binomial deviance†bd0() for extreme arguments (preventing under-/overflow) solves more PR#16727 cases and also prevents some full accuracy loss in such cases for dbinom(), dnbinom(), and via dbinom_raw() potentially dgeom(), dhyper(), dbeta(), and df().
- signif(1.**e308, digits) no longer truncates unnecessarily (but still to prevent overflow to Inf), fixing PR#18889.
- prettyNum(*, zero.print={>=1-char}, replace.zero=TRUE) now works as documented, thanks to Marttila Mikko and Ivan Krylov's messages on R-devel.
- pbeta(x, a,b, ..) for very large a,b no longer returns NaN but the correct values (0 or 1, or their logs for log.p = TRUE). This improves Mathlib's C level bratio() and hence also pnbinom(), etc..