[ruby-core:96793] [Ruby master Feature#16499] define_method(non_lambda) should not the semantics of the given Proc

[email protected] Sat, 11 Jan 2020 22:44:25 +0000 (UTC)
Newsgroups gmane.comp.lang.ruby.core
Message-ID <redmine.journal-83787.20200111224424.b2cd9625360ea4d3@ruby-lang.org>
SXNzdWUgIzE2NDk5IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbWFyY2FuZHJlIChNYXJjLUFuZHJlIExh
Zm9ydHVuZSkuDQoNCg0KPiBJIGJlbGlldmUgZXhhY3RseSAwIHBlb3BsZSB3YW50IGZvbyB7IHJl
dHVybiA0MiB9IHRvIGNoYW5nZSBpdHMgbWVhbmluZyBiYXNlZCBvbiB3aGV0aGVyIGZvbyBjYWxs
cyBkZWZpbmVfbWV0aG9kIG9yIG5vdC4NCg0KVGhpcyBpcyB3cm9uZywgdGhlcmUgaXMgYXQgbGVh
c3QgbWUg8J+YhQ0KDQpJIGJlbGlldmUgdGhhdCBtYW55IEFQSSB1c2UgYGRlZmluZV9tZXRob2Rg
IGZvciBtZXRhcHJvZ3JhbW1pbmcgYW5kIGFsbG93IGByZXR1cm5gIHdpdGhpbiB0aGVpciBibG9j
a3MuDQoNCk9uZSBleGFtcGxlIGlzIFJTcGVjJ3MgYGxldGA6DQoNCmBgYA0KICBSU3BlYy5kZXNj
cmliZSBTb21ldGhpbmcgZG8NCiAgICBsZXQoOmZvbykgeyByZXR1cm4gNDIgfQ0KICBlbmQNCmBg
YA0KDQpJdCBpcyAxMDAlIGNsZWFyIHdoYXQgaXMgbWVhbnQgYW5kIHRoZXJlIGFyZSBnYXppbGxp
b25zIGBsZXRgIGJsb2NrcyBpbiB0aGUgd2lsZC4gVGhpcyBpcyBqdXN0IG9uZSBleGFtcGxlLg0K
DQpUaGlzIHdvdWxkIGJlIGEgY29tcGF0aWJpbGl0eSBuaWdodG1hcmUsIGZvciBhIGdhaW4gSSBj
YW4gbm90IHNlZSAoaGVyZSBzaW1wbHkgcmFpc2luZyBhbiBlcnJvcikuDQoNCkkgYW0gc3Ryb25n
bHkgYWdhaW5zdCB0aGlzLg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tDQpGZWF0dXJlICMxNjQ5OTogZGVmaW5lX21ldGhvZChub25fbGFtYmRhKSBzaG91bGQgbm90
IHRoZSBzZW1hbnRpY3Mgb2YgdGhlIGdpdmVuIFByb2MNCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcu
b3JnL2lzc3Vlcy8xNjQ5OSNjaGFuZ2UtODM3ODcNCg0KKiBBdXRob3I6IEVyZWdvbiAoQmVub2l0
IERhbG96ZSkNCiogU3RhdHVzOiBPcGVuDQoqIFByaW9yaXR5OiBOb3JtYWwNCiogQXNzaWduZWU6
IA0KKiBUYXJnZXQgdmVyc2lvbjogDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tDQpGcm9tIGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNTk3Mz9uZXh0
X2lzc3VlX2lkPTE1OTQ4JnByZXZfaXNzdWVfaWQ9MTU5NzUjbm90ZS0zOA0KDQpCdXQgSSB0aGlu
ayB3ZSBzaG91bGQgY2hhbmdlIGBkZWZpbmVfbWV0aG9kKCZub25fbGFtYmRhKWAgYmVjYXVzZSB0
aGF0IGN1cnJlbnRseSBjb25mdXNpbmdseSB0cmVhdHMgdGhlIHNhbWUgYmxvY2sgYm9keSBkaWZm
ZXJlbnRseSAoZS5nLiwgdGhlIHNhbWUgYHJldHVybmAgaW4gdGhlIGNvZGUgbWVhbnMgc29tZXRo
aW5nIGRpZmZlcmVudCkuDQoNClRoaXMgaXMgdGhlIG9ubHkgY29uc3RydWN0IGluIFJ1YnkgdGhh
dCBjYW4gY2hhbmdlIGEgbm9uLWxhbWJkYSB0byBhIGxhbWJkYSwgYW5kIGl0J3MgdmVyeSBpbmNv
bnNpc3RlbnQuDQpJdCBhbHNvIGZvcmNlcyBpbXBsZW1lbnRhdGlvbnMgdG8gaGF2ZSBhIHdheSB0
byBjb252ZXJ0IGEgcHJvYyB0byBhIGxhbWJkYSwgd2hpY2ggaXMgYSBub24tdHJpdmlhbCBjaGFu
Z2UuDQoNCldlIGNvdWxkIG1heWJlIG1ha2UgYGRlZmluZV9tZXRob2QobmFtZSwgbm9uX2xhbWJk
YSlgIGp1c3Qgd3JhcCB0aGUgUHJvYyBpbiBhIGxhbWJkYSwgYXV0b21hdGljYWxseSwNCmp1c3Qg
bGlrZSB3ZSBjYW4gZG8gbWFudWFsbHkgd2l0aDogYGRlZmluZV9tZXRob2QobmFtZSwgLT4gKmFy
Z3MgeyBub25fbGFtYmRhLmNhbGwoKmFyZ3MpIH0pYC4NCkJ1dCBpdCB3b3VsZCBhbHNvIHByZXNl
cnZlIGBhcml0eWAsIGBwYXJhbWV0ZXJzYCwgZXRjLg0KVGhlbiBpdCB3b3VsZG4ndCBiZSBhbnkg
bW9yZSB2ZXJib3NlLCBidXQgaXQgd291bGQgYXZvaWQgdGhlIHByb2JsZW0gb2YgdHJlYXRpbmcg
dGhlIHNhbWUgYHJldHVybmAvYGJyZWFrYCBpbiB0aGUgY29kZSBkaWZmZXJlbnRseS4NCg0KTXkg
cG9pbnQgaXMgd2Ugc2hhbGwgbmV2ZXIgY2hhbmdlIHRoZSBzZW1hbnRpY3Mgb2YgYHJldHVybmAv
YGJyZWFrYCBzb21ld2hlcmUgaW4gdGhlIGNvZGUuDQpJdCBzaG91bGQgYWx3YXlzIG1lYW4gZXhh
Y3RseSBvbmUgdGhpbmcuDQpgZGVmaW5lX21ldGhvZChuYW1lKSB7IGxpdGVyYWwgYmxvY2sgfWAg
aXMgZmluZSB3aXRoIHRoYXQgcnVsZSwgaXQgYWx3YXlzIGJlaGF2ZSBhcyBhIGxhbWJkYS4NCkJ1
dCBgZGVmaW5lX21ldGhvZCgmbm9uX2xhbWJkYSlgIGlzIHByb2JsZW1hdGljIGFzIGBub25fbGFt
YmRhYCBjYW4gYmUgcGFzc2VkIHRvIG90aGVyIG1ldGhvZHMgb3IgY2FsbGVkIGRpcmVjdGx5Lg0K
DQpJIGJlbGlldmUgZXhhY3RseSAwIHBlb3BsZSB3YW50IGBmb28geyByZXR1cm4gNDIgfWAgdG8g
Y2hhbmdlIGl0cyBtZWFuaW5nIGJhc2VkIG9uIHdoZXRoZXIgYGZvb2AgY2FsbHMgYGRlZmluZV9t
ZXRob2RgIG9yIG5vdC4NCg0KT1RPSCwgaXQgc2VlbXMgcGVvcGxlIGhhdmUgcmVwZWF0ZWRseSB3
YW50ZWQgdG8gY29udmVydCBhIHByb2MgdG8gYSBsYW1iZGEsIGJ1dCBmb3Igb3RoZXIgcmVhc29u
cy4NCldlIHNob3VsZCBsb29rIGF0IHRob3NlIHJlYXNvbnMgYW5kIHByb3ZpZGUgYmV0dGVyIGFs
dGVybmF0aXZlcy4NCg0KSSB0aGluayBzb21ldGltZXMgcGVvcGxlIHdhbnQgdG8ga25vdyBob3cg
bWFueSBhcmd1bWVudHMgYSBub24tbGFtYmRhIFByb2MgdGFrZXMuDQpGb3IgZXhhbXBsZSwgYHBy
b2MgeyB8YSxiPTF8IH1gLg0KYHByb2MuYXJpdHlgIGdpdmVzIGAxYCBoZXJlIHdoaWNoIG1pZ2h0
IGJlIGhlbHBmdWwgYnV0IGFsc28gc3VycHJpc2luZyBhcyB0aGF0IFByb2MgYWNjZXB0cyBhbnkg
bnVtYmVyIG9mIGFyZ3VtZW50cy4NClRoZXkgbWlnaHQgYWxzbyBsb29rIGF0IGBwcm9jLnBhcmFt
ZXRlcnNgIHdoaWNoIGdpdmVzIGBbWzpvcHQsIDphXSwgWzpvcHQsIDpiXV1gIHdoaWNoIGRvZXMg
bm90IGRpZmZlcmVudGlhdGUgYGFgIGFuZCBgYmAgZXZlbiB0aG91Z2ggb25seSBgYmAgaGFzIGEg
cHJvcGVyIGRlZmF1bHQgdmFsdWUuDQpgbGFtYmRhIHsgfGEsYj0xfCB9LnBhcmFtZXRlcnNgIHJl
dHVybnMgdGhlIG1vcmUgdXNlZnVsIGBbWzpyZXEsIDphXSwgWzpvcHQsIDpiXV1gLg0KDQpNYXli
ZSB3ZSBzaG91bGQgcmV0dXJuIHRoZSBzYW1lIGFzIGZvciBhIGxhbWJkYSBmb3IgYG5vbl9sYW1i
ZGEucGFyYW1ldGVyc2A/DQpgUHJvYyNsYW1iZGE/YCB3b3VsZCBzdGlsbCB0ZWxsIHdoZXRoZXIg
aXQncyBzdHJpY3QgYWJvdXQgYXJndW1lbnRzIGFuZCB3aGV0aGVyIGl0IGRlY29uc3RydWN0cyB0
aGVtLg0KDQpjYyBAenZlcm9rDQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3Jn
Lw0KClVuc3Vic2NyaWJlOiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/
c3ViamVjdD11bnN1YnNjcmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4v
bWFpbG1hbi9vcHRpb25zL3J1YnktY29yZT4K