それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

RubyのProcをMarhalスル方法は・・・ないっぽい

rubyのProcやオブジェクトをコードに戻す方法はない。javascriptなら tosourceがあるんだけどね.

どうするか?

妥当な解決策

serialization - How do I marshal a lambda (Proc) in Ruby? - Stack Overflow
code = %{
lamda {"hello, some ruby code".split(" ").each{|e| puts e + "!"}}
}

#適当なところで
eval(code)

%記法を使って {} を ""扱いにすればいい。これでそれっぽくコードをかけるので適当なところでevalすればいいと.頭良いですね.


ruby2ruby でS式にしても良いんだけどそこまでしなくても良いや。druby はMarshalの制限でProc持って行けないし,オブジェクトは参照渡しなのでめんどくさいんです.drubyの内部marshalがProc対応すれば drubyは流行ると思う.

広告を非表示にする