Skip to content
/ rscala Public
forked from dbdahl/rscala

The Scala interpreter is embedded in R and callbacks to R from the embedded interpreter are supported. Conversely, the R interpreter is embedded in Scala.

License

Notifications You must be signed in to change notification settings

piust/rscala

 
 

Repository files navigation

rscala: Bridge Between 'R' and 'Scala' with Callbacks

By David B. Dahl, Brigham Young University

The rscala package provides a bridge between R and Scala, enabling a user to exploit each language's respective strengths in a single project. The rscala package brings Scala and Java libraries into R with a simple interface. Specifically, Scala classes can be instantiated and methods of Scala classes can be called directly. Furthermore, arbitrary Scala code can be executed on the fly from within R and callbacks to R are supported. Conversely, rscala also enables arbitrary R code to be embedded within a Scala application.

In R, install the package by executing:

install.packages("rscala") 

To install --- or check the compatability of your existing installation of --- Scala and Java, please execute:

rscala::scalaConfig()

Note that if only want to embed R in a Scala application, you don't need to install the package. Simply add the following line to the your SBT build.sbt file:

libraryDependencies += "org.ddahl" %% "rscala" % "3.2.0"

A paper describing an older version of the software is awaiting peer review at the Journal of Statistical Softwware. The paper will be updated to the current version when the peer review is available. In the meantime, the functionality of the paper is described and demonstrated in the help files:

library(help="rscala")
library(rscala)
example(scala)

R extensions can be written using this package, as demonstrated by these packages:

Resources:

About

The Scala interpreter is embedded in R and callbacks to R from the embedded interpreter are supported. Conversely, the R interpreter is embedded in Scala.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • R 61.9%
  • Scala 35.9%
  • Shell 2.2%