diff --git a/.classpath b/.classpath
index 47375c80c..e2d9d4a17 100644
--- a/.classpath
+++ b/.classpath
@@ -12,7 +12,7 @@
-
+
diff --git a/main/src/com/google/refine/expr/MetaParser.java b/main/src/com/google/refine/expr/MetaParser.java
index 6126fc571..02bb8b949 100644
--- a/main/src/com/google/refine/expr/MetaParser.java
+++ b/main/src/com/google/refine/expr/MetaParser.java
@@ -40,6 +40,7 @@ import java.util.Properties;
import java.util.Set;
import clojure.lang.IFn;
+import clojure.lang.RT;
import com.google.refine.grel.Parser;
@@ -58,6 +59,10 @@ abstract public class MetaParser {
}
static final protected Map s_languages = new HashMap();
+
+ // TODO: We should switch from using the internal compiler class
+// final static private Var CLOJURE_READ_STRING = RT.var("clojure.core", "read-string");
+// final static private Var CLOJURE_EVAL = RT.var("clojure.core", "eval");
static {
registerLanguageParser("grel", "Google Refine Expression Language (GREL)", new LanguageSpecificParser() {
@@ -73,9 +78,17 @@ abstract public class MetaParser {
@Override
public Evaluable parse(String s) throws ParsingException {
try {
+// RT.load("clojure/core"); // Make sure RT is initialized
+ Object foo = RT.CURRENT_NS; // Make sure RT is initialized
IFn fn = (IFn) clojure.lang.Compiler.load(new StringReader(
- "(fn [value cell cells row rowIndex] " + s + ")"
- ));
+ "(fn [value cell cells row rowIndex] " + s + ")"
+ ));
+
+ // TODO: We should to switch from using Compiler.load
+ // because it's technically an internal interface
+// Object code = CLOJURE_READ_STRING.invoke(
+// "(fn [value cell cells row rowIndex] " + s + ")"
+// );
return new Evaluable() {
private IFn _fn;
diff --git a/main/webapp/WEB-INF/lib/clojure-1.4.0.jar b/main/webapp/WEB-INF/lib/clojure-1.4.0.jar
deleted file mode 100644
index b8c1b5abd..000000000
Binary files a/main/webapp/WEB-INF/lib/clojure-1.4.0.jar and /dev/null differ
diff --git a/main/webapp/WEB-INF/lib/clojure-1.5.1-slim.jar b/main/webapp/WEB-INF/lib/clojure-1.5.1-slim.jar
new file mode 100644
index 000000000..8a3cbafbc
Binary files /dev/null and b/main/webapp/WEB-INF/lib/clojure-1.5.1-slim.jar differ