2009-12-11 10 views

उत्तर

0

कैसे समान यह होना जरूरी है? Clojure की सूची पर eval काम करता है, तो:

(eval (list + 1 2)) #=> 3 
+0

मुझे eval के बारे में पता है, लेकिन मुझे नहीं लगता कि यह मेरे लिए काम करता है। मैं वास्तव में एक "स्ट्रिंग" का मूल्यांकन करना चाहता हूं –

31
user> (eval (read-string "(+ 1 2)")) 
3 

आप शायद कभी ऐसा करने की जरूरत नहीं होनी चाहिए। मैक्रोज़ और एफएनएस इस तरह की चीज को अनावश्यक 99% समय बनाते हैं। यह काफी भंगुर है, और यह असुरक्षित हो सकता है अगर ये स्ट्रिंग उपयोगकर्ता इनपुट से आ रहे हैं, और इसी तरह।

+1

वैसे मैं कुछ मूल रूप से असुरक्षित करना चाहता हूं: एक आरईपीएल चैटबॉट। –

+0

#clojure में क्लोजरबॉट है। –

+8

लोड-स्ट्रिंग ठीक वही करता है जो वह – Abhijith

संबंधित मुद्दे