via jijixi's diary - もんだい (まめめも) , 問題の条件からは外れるけど , システムスレッドとプロセスの関係 , 続き (in_pool の動き)
まあ僕もインチキな答えしか思い付かなかった訳ですが。
こんな感じの。
def div(x,y) eval("i=#{x/y}", TOPLEVEL_BINDING) end i = 12345678987654321 div(i, 111111111) p(i) #=> 111111111 p(i == 111111111) #=> true p(i * 111111111) #=> 12345678987654321
一応、Rubyの特性であるevalやらBindingやらの動的な機能をフル活用してみました。
っても、これは変数の名前がiで無ければ破綻するという。じゃあ別のでも良いのを考えてみよう。