Advertisement
Guest User

Untitled

a guest
Jun 10th, 2014
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.06 KB | None | 0 0
  1. import android.util.Log;
  2. import clojure.lang.IFn;
  3. import clojure.lang.RT;
  4. import clojure.lang.Var;
  5. import clojure.lang.Compiler;
  6. import clojure.java.api.Clojure;
  7. import java.io.StringReader;
  8.  
  9. public class ScriptManager {
  10.     private static ScriptManager instance = null;
  11.    
  12.     public static ScriptManager getInstance() {
  13.            if(instance == null) {
  14.               instance = new ScriptManager();
  15.            }
  16.            return instance;
  17.     }
  18.    
  19.     public void runTest() {    
  20.         // Load the Clojure script -- as a side effect this initializes the runtime.
  21.         String str = "(ns user) (defn foo [a b]   (str a \" \" b))";
  22.  
  23.         //RT.loadResourceScript("foo.clj");
  24.         Compiler.load(new StringReader(str));
  25.  
  26.         IFn map = Clojure.var("clojure.core", "map");
  27.         IFn inc = Clojure.var("clojure.core", "inc");
  28.         map.invoke(inc, Clojure.read("[1 2 3]"));
  29.        
  30.         // Get a reference to the foo function.
  31.         IFn foo = Clojure.var("user", "foo");
  32.  
  33.         // Call it!
  34.         Object result = foo.invoke("Hi", "there");
  35.         //Log.v("ScriptManager", result.toString());
  36.        
  37.        
  38.     }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement