草庐IT

java - 为什么我不能使用扩展类型扩展 Clojure 的 IFn?

我看过DavidNolen关于ClojureScript的演讲,他在演讲中将IFn扩展到Regexp,这样我们就可以将正则表达式文字作为字符串上的函数来调用以检查匹配。我在常规Clojure中尝试了与字符串类似的操作,但我得到了这个异常。我看到IFn是一个用Java编写的接口(interface),但在CLojrue前端的实现是如何工作的。(extend-typejava.lang.String#_=>clojure.lang.IFn#_=>(-invoke#_=>([thisindex]#_=>(get(seqthis)index))))IllegalArgumentExceptio