From: domingo@... (Domingo Alvarez Duarte) Date: 2001-08-24T19:11:02+09:00 Subject: [ruby-talk:20269] how to "eval" mini ruby ? I'm doing a web application and I want provide a "mini ruby" interpreter for users. What a "mini ruby" mean ? By "mini ruby" I mean a basic ruby interpreter without any context variables, no search path for modules and classes. possible example: ---------------- $a_globalvar = 'global value' $b_globalvar = 'hi I'm here' c = 'local value' def some_func(a,b) print "#{a} -- #{b}" end output = '' my_rb = MiniRuby.new my_rb.bind({'a' => $a_globalvar,'c' => c, 'afunc' => some_func) my_rb.store_stdout(output); my_rb.eval('if (c != "") && (a != "") then afunc(c,a) end') print output # => local_value -- global_value my_rb.eval('x = 45') print my_rb.get('x') # => 45 or nil if not defined or throw exception print my_rb.get('$b_globalvar') # => nil #no caller context my_rb.eval(<