From: "ko1 (Koichi Sasada)" Date: 2013-01-25T12:12:00+09:00 Subject: [ruby-core:51637] [ruby-trunk - Bug #7702] Remove Proc#binding Issue #7702 has been updated by ko1 (Koichi Sasada). Category set to core Assignee set to matz (Yukihiro Matsumoto) Target version set to next minor ---------------------------------------- Bug #7702: Remove Proc#binding https://bugs.ruby-lang.org/issues/7702#change-35598 Author: jballanc (Joshua Ballanco) Status: Open Priority: Normal Assignee: matz (Yukihiro Matsumoto) Category: core Target version: next minor ruby -v: 2.0.0-preview1 =begin As discussed in the most recent Ruby implementer's meeting and elsewhere over the years, being able to get a handle to the binding of any block/proc has a number of problems: * Code execution after passing a block/proc in unpredictable, as the binding of said proc can be used to redefine any local, instance variable, method, class, module, etc. * Potentially sensitive data can leak out of the scope of a method via a proc binding * Large object graphs may need to be retained for the lifetime of a proc, since any identifier in scope at the time of proc creation must remain live in the event that the binding of the proc is used to evaluate code Additionally, removal of Proc#binding would enable a number of very useful optimizations and performance improvements. =end -- http://bugs.ruby-lang.org/