[ruby-core:122842] [Ruby Feature#21518] Statistical helpers to `Enumerable`
From:
"Amitleshed (Amit Leshed) via ruby-core" <ruby-core@...>
Date:
2025-07-23 15:30:17 UTC
List:
ruby-core #122842
SXNzdWUgIzIxNTE4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IEFtaXRsZXNoZWQgKEFtaXQgTGVzaGVk KS4NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAj MjE1MTg6IFN0YXRpc3RpY2FsIGhlbHBlcnMgdG8gYEVudW1lcmFibGVgDQpodHRwczovL2J1Z3Mu cnVieS1sYW5nLm9yZy9pc3N1ZXMvMjE1MTgNCg0KKiBBdXRob3I6IEFtaXRsZXNoZWQgKEFtaXQg TGVzaGVkKQ0KKiBTdGF0dXM6IE9wZW4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NCioqU3VtbWFyeSoqDQoNCkknZCBsaWtlIHRvIGFkZCB0d28gc3RhdGlzdGljYWwg aGVscGVycyB0byBgRW51bWVyYWJsZWA6DQoNCi0gYEVudW1lcmFibGUjYXZlcmFnZWAgKGFyaXRo bWV0aWMgbWVhbikNCi0gYEVudW1lcmFibGUjbWVkaWFuYA0KDQpCb3RoIGFyZSBzbWFsbCwgd2Vs bC1kZWZpbmVkIG9wZXJhdGlvbnMgdGhhdCBtYW55IFJ1Ynlpc3RzIHJlLWltcGxlbWVudCBpbiBh cHBzIGFuZCBnZW1zLiBQcm92aWRpbmcgdGhlbSBpbiBjb3JlIGF2b2lkcyByZXBlYXRlZCwgYWQt aG9jIGNvZGUgYW5kIGFsaWducyB3aXRoIGBFbnVtZXJhYmxlI3N1bWAsIHdoaWNoIFJ1YnkgYWxy ZWFkeSBzaGlwcy4NCg0KDQoqKk1vdGl2YXRpb24qKg0KDQotIFRoZXNlIGFyZSBhbW9uZyB0aGUg bW9zdCBjb21tb24g4oCccm9sbC15b3VyLW93buKAnSBoZWxwZXJzIGZvciBhcnJheXMvcmFuZ2Vz IG9mIG51bWJlcnMuDQotIFRoZXkgYXJlIGNvbmNlcHR1YWxseSBzaW1wbGUsIHVuaXZlcnNhbGx5 IHVzZWZ1bCBiZXlvbmQgd2ViL1JhaWxzLg0KLSBTaW1pbGFyIHRvIGBzdW1gLCB0aGV54oCZcmUg cHJpbWl0aXZlcyBmb3IgcXVpY2sgZGF0YSBhbmFseXNpcywgRVRMIHNjcmlwdHMsIENMSSB0b29s aW5nLCBldGMuDQotIEluY2x1ZGluZyB0aGVtIGVuY291cmFnZXMgY29uc2lzdGVudCBzZW1hbnRp Y3MgKHdoYXQgdG8gZG8gd2l0aCBlbXB0eSBzZXRzLCBtaXhlZCBudW1lcmljcywgZXRjLikuDQoN Cg0KIyMgUHJvcG9zZWQgQVBJICYgU2VtYW50aWNzDQoNCmBgYHJ1YnkNCkVudW1lcmFibGUjYXZl cmFnZSAtPiBGbG9hdCBvciBuaWwNCkVudW1lcmFibGUjbWVkaWFuICAtPiBOdW1lcmljIG9yIG5p bA0KYGBgDQoNCmBgYHJ1YnkNClsxLCAyLCAzLCA0XS5hdmVyYWdlICAgICAgIyA9PiAyLjUNCigx Li40KS5hdmVyYWdlICAgICAgICAgICAgIyA9PiAyLjUNCltdLmF2ZXJhZ2UgICAgICAgICAgICAg ICAgIyA9PiBuaWwNCg0KWzEsIDMsIDJdLm1lZGlhbiAgICAgICAgICAjID0+IDINClsxLCAyLCAz LCAxMF0ubWVkaWFuICAgICAgIyA9PiAyLjUNCigxLi42KS5tZWRpYW4gICAgICAgICAgICAgIyA9 PiAzLjUNCltdLm1lZGlhbiAgICAgICAgICAgICAgICAgIyA9PiBuaWwNCmBgYA0KDQpSdWJ5IGlt cGxlbWVudGF0aW9uIA0KDQpgYGBydWJ5DQptb2R1bGUgRW51bWVyYWJsZQ0KICBkZWYgYXZlcmFn ZQ0KICAgIGNvdW50ID0gMA0KICAgIHRvdGFsID0gMC4wDQogICAgZWFjaCBkbyB8eHwNCiAgICAg IHJhaXNlIFR5cGVFcnJvciwgIm5vbi1udW1lcmljIHZhbHVlIGZvciBhdmVyYWdlIiB1bmxlc3Mg eC5pc19hPyhOdW1lcmljKQ0KICAgICAgdG90YWwgKz0geA0KICAgICAgY291bnQgKz0gMQ0KICAg IGVuZA0KICAgIGNvdW50Lnplcm8/ID8gbmlsIDogdG90YWwgLyBjb3VudA0KICBlbmQNCg0KICBk ZWYgbWVkaWFuDQogICAgYXJyID0gdG9fYQ0KICAgIHJldHVybiBuaWwgaWYgYXJyLmVtcHR5Pw0K ICAgIGFyci5lYWNoIHsgfHh8IHJhaXNlIFR5cGVFcnJvciwgIm5vbi1udW1lcmljIHZhbHVlIGZv ciBtZWRpYW4iIHVubGVzcyB4LmlzX2E/KE51bWVyaWMpIH0NCiAgICBhcnIuc29ydCENCiAgICBt aWQgPSBhcnIubGVuZ3RoIC8gMg0KICAgIGFyci5sZW5ndGgub2RkPyA/IGFyclttaWRdIDogKGFy clttaWQgLSAxXSArIGFyclttaWRdKSAvIDIuMA0KICBlbmQNCmVuZA0KYGBgDQoNCioqVXBvbiBh cHByb3ZhbCBJJ20gbW9yZSB0aGFuIHdpbGxpbmcgdG8gaW1wbGVtZW50IHNwZWMgYW5kIGNvZGUg aW4gQy4qKg0KDQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLw0KX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogcnVieS1jb3JlIG1haWxp bmcgbGlzdCAtLSBydWJ5LWNvcmVAbWwucnVieS1sYW5nLm9yZwogVG8gdW5zdWJzY3JpYmUgc2Vu ZCBhbiBlbWFpbCB0byBydWJ5LWNvcmUtbGVhdmVAbWwucnVieS1sYW5nLm9yZwogcnVieS1jb3Jl IGluZm8gLS0gaHR0cHM6Ly9tbC5ydWJ5LWxhbmcub3JnL21haWxtYW4zL2xpc3RzL3J1YnktY29y ZS5tbC5ydWJ5LWxhbmcub3JnLwo=