15

Is there Java or .NET version of R? (like Jython / IronPython for the Python language)

I guess some R-packages which use C or Fortran may not run on Java/.NET version of R, but as long as pure R code can be run, it must be great.

Joachim Sauer
  • 302,674
  • 57
  • 556
  • 614
tk.
  • 1,206
  • 1
  • 23
  • 32

5 Answers5

15

A pure Java implementation of R: https://www.renjin.org/

JRI allows you to call R from any Java program, so any language on the JVM should be able to call the JRI jars. See my example of how to use this in this question: R from within Java. As an example, there is a clojure library that is currently being developed around JRI by Joel Boehland: Rincanter (read about it here).

Dave Jarvis
  • 30,436
  • 41
  • 178
  • 315
Shane
  • 98,550
  • 35
  • 224
  • 217
14

Renjin is a pure-JVM implementation of the R language. It's very much under development and not production ready, but making good progress.

http://code.google.com/p/renjin

Alex
  • 156
  • 1
  • 2
5

If you needs stats on the pure JVM, you might try Incanter (www.incanter.org). It's an R-like library for Clojure, which brings lispy functional programming to the JVM. It looks like a really cool start-up with some potential. They have a pretty active user community already on their google group.

Ian Fiske
  • 10,482
  • 3
  • 21
  • 20
1

There are 2 that I know of.

http://www.renjin.org/ - Renjin

https://github.com/bedatadriven/renjin - Renjin

and...

https://github.com/allr/purdue-fastr - FastR

https://bitbucket.org/allr/fastr - FastR

kervin
  • 11,672
  • 5
  • 42
  • 59
1

FastR is a GraalVM based implementation of R. It runs on any JVM, but with GraalVM you get extra performance with the Graal compiler and Truffle framework.

On top of running existing R scripts, it has some additional features w.r.t. embeddability in JVM applications and interoperability with JVM and other GraalVM languages (including JavaScript, Ruby, Python 3).

More details in https://medium.com/graalvm/faster-r-with-fastr-4b8db0e0dceb

Steves
  • 2,798
  • 21
  • 21