29
A
答えて
28
(load-string "(+ 1 2)")
0
どのように同様のことがなければなりませんか?リスト上のClojureのeval
作品、そう:
(eval (list + 1 2)) #=> 3
31
user> (eval (read-string "(+ 1 2)"))
3
あなたはおそらく今までにこれを実行する必要はありません。マクロとfnはこの種のものを99%の時間で不要にします。これは非常に脆弱で、これらの文字列がユーザーの入力などから来ると危険です。
+1
まあ、私は根本的に危険なことをしたい:REPLのチャットボット。 –
+0
#clojureにクロージャーボットがあります。 –
+8
load-stringは、探しているものとまったく同じです – Abhijith
関連する問題
- 1. 評価文字列(補間)
私はevalについて知っていますが、私にとってはうまくいかないと思います。私は本当に "文字列"を評価したい –