Java
The Java binding calls the same compiled kernels. A function is run by its R name; its named arguments go in as a JSON object and its result comes back as JSON.
import io.github.rootcoder007.crimlab.Crimlab;
String r = Crimlab.jrun("orrisk", "{\"or\": 2, \"rate\": 0.1, \"share\": 0.3}");Sources and the build script: bindings/java.