[ruby-core:119850] [Ruby master Feature#20770] A *new* pipe operator proposal
From:
"austin (Austin Ziegler) via ruby-core" <ruby-core@...>
Date:
2024-11-08 19:29:44 UTC
List:
ruby-core #119850
SXNzdWUgIzIwNzcwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgYXVzdGluIChBdXN0aW4gWmllZ2xlciku DQoNCg0KbHBvZ2ljICjFgXVrYXN6IFBvbWlldMWCbykgd3JvdGUgaW4gI25vdGUtMzY6DQo+IFdo YXQgaWYgSSBuZWVkIGFuIGludGVybWVkaWF0ZSByZXN1bHQgYmV5b25kIHRoZSBuZXh0IHN0ZXAg b2YgdGhlIG1ldGhvZCBjaGFpbj8NCj4gDQo+IENhc2VzOg0KPiBgYGAgcnVieQ0KPiBkZWYgZm9v DQo+ICAgciB8PiBxKF8pIHw+IHAoXykNCj4gICByZXR1cm4gcV9yZXN1bHQgICMgInFfcmVzdWx0 IiBzaG91bGQgYmUgdGhlIHJlc3VsdCBvZiB0aGUgc2Vjb25kIHN0ZXAgb2YgdGhlIGNoYWluDQo+ IGVuZA0KPiBgYGANCj4gDQo+IGBgYCBydWJ5DQo+IGRlZiBmb28NCj4gICByIHw+IHEoXykgfD4g cChfLCByX3Jlc3VsdCkgIyAicl9yZXN1bHQiIHNob3VsZCBiZSB0aGUgcmVzdWx0IG9mIHRoZSBm aXJzdCBzdGVwIG9mIHRoZSBjaGFpbg0KPiBlbmQNCj4gYGBgDQoNCklmIHlvdSBuZWVkIGFuIGlu dGVybWVkaWF0ZSByZXN1bHQgZm9yIGFueSByZWFzb24sIGRvbid0IHVzZSBhIHBpcGVsaW5lLCBv ciByZXN0cnVjdHVyZSB5b3VyIHJldHVybiB2YWx1ZXMgc28gdGhhdCB0aGV5IGFyZSByZXR1cm5p bmcgc29tZSBzb3J0IG9mIGNvbnRleHQgb2JqZWN0LiBJbiB5b3VyIGV4YW1wbGVzLCBgI3RhcGAg YW5kIGAjdGhlbmAgd291bGQgYmUgbW9yZSB1c2VmdWw6DQoNCmBgYHJ1YnkNCmRlZiBmb28NCiAg cShyKS50YXAgeyBwKF8xKSB9DQplbmQNCg0KZGVmIGJhcg0KICByDQogICAgLnRoZW4geyBbXzEs IHEoXzEpIH0NCiAgICAudGhlbiB7IHwocnIsIHFyKXwgcChxciwgcnIpIH0NCmVuZA0KDQpkZWYg YmF6DQogIHJyID0gcg0KICBwKHEocnIpLCBycikNCmVuZA0KYGBgDQoNCkkgdXNlIHRoZSBwaXBl IG9wZXJhdG9yIGluIEVsaXhpciBleHRlbnNpdmVseSwgYnV0IEkgZG9uJ3QgdGhpbmsgdGhhdCBJ 4oCZdmUgc2VlbiBhIHByb3Bvc2FsIHRoYXQgd291bGQgcmVhbGx5IGltcHJvdmUgUnVieSdzIHN5 bnRheCBvdmVyIGAudGhlbiB7IOKApiB9YCAqZXhjZXB0KiB0aGUgcHJvcG9zZWQgYC57fWAgYWN0 aW5nIGFzIHN5bnRheCBzdWdhciBmb3IgYC50aGVuIHvigKZ9YC4NCg0KLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMjA3NzA6IEEgKm5ldyogcGlwZSBv cGVyYXRvciBwcm9wb3NhbA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIwNzcw I2NoYW5nZS0xMTA1NDENCg0KKiBBdXRob3I6IEFsZXhhbmRyZU1hZ3JvIChBbGV4YW5kcmUgTWFn cm8pDQoqIFN0YXR1czogT3Blbg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KSGVsbG8sDQoNClRoaXMgaXMgbXkgZmlyc3QgY29udHJpYnV0aW9uIGhlcmUuIEkgaGF2 ZSBzZWVuIHByZXZpb3VzIGRpc2N1c3Npb25zIGFyb3VuZCBpbnRyb2R1Y2luZyBhIHBpcGUgb3Bl cmF0b3IsIGJ1dCBpdCBzZWVtcyB0aGUgY29tbXVuaXR5IGRpZG4ndCByZWFjaCBhIGNvbnNlbnN1 cy4gSSB3b3VsZCBsaWtlIHRvIHJldmlzaXQgdGhpcyBpZGVhIHdpdGggYSBzaW1wbGVyIGFwcHJv YWNoLCBtb3JlIG9mIGEgc3ludGFjdGljIHN1Z2FyIHRoYXQgYWxpZ25zIHdpdGggaG93IG90aGVy IGxhbmd1YWdlcyBpbXBsZW1lbnQgdGhlIHBpcGUgb3BlcmF0b3IsIGJ1dCB3aXRob3V0IG1ha2lu ZyBzaWduaWZpY2FudCBjaGFuZ2VzIHRvIFJ1YnkncyBzeW50YXguDQoNCkN1cnJlbnRseSwgd2Ug b2Z0ZW4gd3JpdGUgY29kZSBsaWtlIHRoaXM6DQoNCmBgYHJ1YnkNCnZhbHVlID0gaGFsZihzcXVh cmUoYWRkKHZhbHVlLCAzKSkpDQpgYGANCg0KV2UgY2FuIGFjaGlldmUgdGhlIHNhbWUgcmVzdWx0 IHVzaW5nIHRoZSBgdGhlbmAgbWV0aG9kOg0KDQpgYGBydWJ5DQp2YWx1ZSA9IHZhbHVlLnRoZW4g eyBhZGQoXzEsIDMpIH0udGhlbiB7IHNxdWFyZShfMSkgfS50aGVuIHsgaGFsZihfMSkgfQ0KYGBg DQoNCldoaWxlIGB0aGVuYCBoZWxwcyB3aXRoIHJlYWRhYmlsaXR5LCB3ZSBjYW4gc2ltcGxpZnkg aXQgZnVydGhlciB1c2luZyB0aGUgcHJvcG9zZWQgcGlwZSBvcGVyYXRvcjoNCg0KYGBgcnVieQ0K dmFsdWUgPSBhZGQodmFsdWUsIDMpIHw+IHNxdWFyZShfMSkgfD4gaGFsZihfMSkNCmBgYA0KDQpN b3Jlb3Zlciwgd2l0aCB0aGUgdXBjb21pbmcgYGl0YCBmZWF0dXJlIGluIFJ1YnkgMy40ICgjMTg5 ODApLCB0aGUgY29kZSBjb3VsZCBsb29rIGV2ZW4gY2xlYW5lcjoNCg0KYGBgcnVieQ0KdmFsdWUg PSBhZGQodmFsdWUsIDMpIHw+IHNxdWFyZShpdCkgfD4gaGFsZihpdCkNCmBgYA0KDQpUaGlzIHBy b3Bvc2FsIHVzZXMgdGhlIGFub255bW91cyBibG9jayBhcmd1bWVudCBgKF8xKWAsIGFuZCB3aXRo IGBpdGAsIGl0IHNpbXBsaWZpZXMgdGhlIGNvZGUgd2l0aG91dCBpbnRyb2R1Y2luZyBjb21wbGV4 IHN5bnRheCBjaGFuZ2VzLiBJdCB3b3VsZCBhbGxvdyB1cyB0byBhY2hpZXZlIHRoZSBzYW1lIHJl c3VsdHMgYXMgaW4gb3RoZXIgbGFuZ3VhZ2VzIHRoYXQgc3VwcG9ydCBwaXBlIG9wZXJhdG9ycywg YnV0IGluIGEgd2F5IHRoYXQgZmVlbHMgbmF0dXJhbCB0byBSdWJ5LCB1c2luZyBleGlzdGluZyBj b25zdHJ1Y3RzIGxpa2UgYHRoZW5gIHVuZGVybmVhdGguDQoNCkkgYmVsaWV2ZSB0aGlzIG9wZXJh dG9yIHdvdWxkIGVuaGFuY2UgY29kZSByZWFkYWJpbGl0eSBhbmQgbWFpbnRhaW5hYmlsaXR5LCBl c3BlY2lhbGx5IGluIGNhc2VzIHdoZXJlIG11bHRpcGxlIG9wZXJhdGlvbnMgYXJlIGNoYWluZWQg dG9nZXRoZXIuDQoNClRoYW5rIHlvdSBmb3IgY29uc2lkZXJpbmcgdGhpcyBwcm9wb3NhbCENCg0K DQoNCg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvDQogX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogcnVieS1jb3JlIG1haWxpbmcgbGlz dCAtLSBydWJ5LWNvcmVAbWwucnVieS1sYW5nLm9yZwogVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBl bWFpbCB0byBydWJ5LWNvcmUtbGVhdmVAbWwucnVieS1sYW5nLm9yZwogcnVieS1jb3JlIGluZm8g LS0gaHR0cHM6Ly9tbC5ydWJ5LWxhbmcub3JnL21haWxtYW4zL2xpc3RzL3J1YnktY29yZS5tbC5y dWJ5LWxhbmcub3JnLw==