私は基本的に、Clojure question 135 Infix Calculatorに算術計算の前に付けるために簡略化中置を取り組んできました:文字列をClojureの関数に変換するには?
(= 7 (__ 2 + 5))
指定されたとおり、私は問題を解決しました。しかし、それは私には不思議に思っています - 引数が文字列として提供されていたらどうしたらうまくいくのでしょうか?
(clojure.string/split "2 + 5" #"\s")
user=> ["2" "+" "5"]
をしかし、どのように私は、関数呼び出しに「+」に変換します:
(= 7 (__ "2 + 5"))
もちろん、私はがを分割し、その結果によってムンクで始まるだろうか?これは、仕事に行くされていません。
("+" 2 5)
user=> java.lang.ClassCastException: java.lang.String cannot be
cast to clojure.lang.IFn <snip>
啓発はあなたがload-string
やread-string
を使用することができます解決機能
((resolve (symbol "+")) 1 2)
よろしくお願い致します。 –