[Info-vax] Fun: R on VMS
Arne Vajhøj
arne at vajhoej.dk
Mon Sep 2 14:43:56 EDT 2024
$ type demo.r
x = rnorm(10, mean=0, sd=1)
print(x)
mx = mean(x)
print(mx)
$ rr demo.r
[1] 0.07825535565335 0.26473517575753 0.24130353303532 0.93891048091823
[5] -0.28034267101425 -1.39355828984642 -0.02804756791571 -0.04600998611413
[9] -1.7059928439304 0.69180273192578
[1] -0.12389440815307
$ sh symb rr
RR == "@RR"
$ type rr.com
$ java -cp .:renjin-script-engine-3.5-beta76-jar-with-dependencies.jar
"RR" 'p1'
$ exit
$ type RR.java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import javax.script.ScriptException;
import org.renjin.script.RenjinScriptEngine;
public class RR {
private static String load(String fnm) throws IOException {
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(new FileReader(fnm));
String line;
while((line = br.readLine()) != null) {
sb.append(line + "\n");
}
br.close();
return sb.toString();
}
public static void main(String[] args) throws IOException,
ScriptException {
if(args.length == 1) {
try {
String src = load(args[0]);
RenjinScriptEngine eng = new RenjinScriptEngine();
eng.eval(src);
} catch(Exception ex) {
ex.printStackTrace();
}
} else {
System.out.println("Usage: rr <r-source-file>");
}
}
}
It would obvious be better if Renjin command line worked, but
for some reason it does not work on VMS. So I wrote a little
wrapper reading the file and evaluating using the embedded
Renjin engine.
Arne
More information about the Info-vax
mailing list