Re: characterization of subset of Monads that respect tail calls?
Tom Ellis <[email protected]> Wed, 28 Sep 2022 11:26:50 +0100
| Newsgroups | gmane.comp.lang.haskell.libraries |
|---|---|
| Message-ID | <YzQhap+noRQ+Fb8q@cloudinit-builder> |
T24gVHVlLCBTZXAgMjcsIDIwMjIgYXQgMDU6MjQ6NDNQTSAtMDQwMCwgQSBTIHdyb3RlOgo+IFRo ZSBkZWZpbml0aW9uIHRhaWxSZWNNMSwgd2hpbGUgaXQgdHlwZWNoZWNrcywgd2lsbCBub3QgYWx3 YXlzCj4gb3BlcmF0ZSBpbiBjb25zdGFudCBzdGFjayBzcGFjZQoKQ29ycmVjdC4KCj4gQXMgZm9y IHRhaWxSZWNNMiwgdW5mb3J0dW5hdGVseSB0aGlzIHByZWNsdWRlcyBtYW55IHVzZWZ1bCBhbmQg bm9udHJpdmlhbAo+IE1vbmFkUmVjIGluc3RhbmNlcyBzdWNoIGFzIEVmZmVjdCBhbmQgQWZmLCB3 aGljaCBhZG1pdCBubyBzdWNoIGRpc3RyaWJ1dGluZwo+IG5hdHVyYWwgdHJhbnNmb3JtYXRpb24g KGlmIHRoaXMgaXMgd2hhdCB5b3UgYWN0dWFsbHkgbWVhbnQgZm9yIHRoZSBmaXJzdAo+IGFyZ3Vt ZW50IHRvIGJlKS4KCkNvcnJlY3QsIHRoZSBkaXN0cmlidXRpb24gcHJvcGVydHkgaXMgdG9vIHN0 cm9uZyB0byBjYXB0dXJlIGFsbApNb25hZFJlYyBpbnN0YW5jZXMuICBIb3dldmVyLCBpdCBkb2Vz IGNhcHR1cmUgTWF5YmUsIEVpdGhlciBlIGFuZApJZGVudGl0eS4gIFRvIGNhcHR1cmUgKHIgLT4p L1JlYWRlciB3ZSBuZWVkIHNvbWV0aGluZyBtb3JlIGdlbmVyYWwKKHRhaWxSZWNNMykgd2hpY2gg aXMgc2FkbHkgc2lnbmlmaWNhbnRseSBsZXNzIHBsZWFzYW50LCBidXQgdW5sZXNzIEkKYW0gbXVj aCBtaXN0YWtlbiBpdCBjYXB0dXJlcyBhbGwgaW5zdGFuY2VzIG9mIHRhaWxSZWNNIHRoYXQgdXNl CnRhaWxSZWMuICBNYXliZSBpdCdzIHRvbyB1bnBsZWFzYW50IHRvIGJlIHVzZWQgaW4gcHJhY3Rp Y2UgYXMgYW4KYWx0ZXJuYXRpdmUgb2YgYSBkaXJlY3QgaW1wbGVtZW50YXRpb24gb2YgdGFpbFJl Y00uCgpUb20KCgp7LSMgTEFOR1VBR0UgTGFtYmRhQ2FzZSAjLX0KCm1vZHVsZSBSZWMgd2hlcmUK CmltcG9ydCBEYXRhLkZ1bmN0b3IuSWRlbnRpdHkgKElkZW50aXR5KElkZW50aXR5KSkKCmRhdGEg U3RlcCBhIGIgPSBMb29wIGEgfCBEb25lIGIKCm9uRG9uZSA6OiAoYiAtPiBiJykgLT4gU3RlcCBh IGIgLT4gU3RlcCBhIGInCm9uRG9uZSBmID0gXGNhc2UKICBMb29wIGEgLT4gTG9vcCBhCiAgRG9u ZSBiIC0+IERvbmUgKGYgYikKCnRhaWxSZWMgOjogKGEgLT4gU3RlcCBhIGIpIC0+IGEgLT4gYgp0 YWlsUmVjIGYgPSBnbyAuIGYKICB3aGVyZQogIGdvIChMb29wIGEpID0gZ28gKGYgYSkKICBnbyAo RG9uZSBiKSA9IGIKCi0tIHwgVGhpcyB3b3JrcyBmb3IgYWxsIG1vbmFkcyBidXQgaXMgbm90IG5l Y2Vzc2FyaWx5IHN0YWNrIHNhZmUuCnRhaWxSZWNNMSA6OiBNb25hZCBtID0+IChhIC0+IG0gKFN0 ZXAgYSBiKSkgLT4gYSAtPiBtIGIKdGFpbFJlY00xIGYgYSA9IGRvCiAgZiBhID4+PSBcY2FzZQog ICAgTG9vcCBhJyAtPiB0YWlsUmVjTTEgZiBhJwogICAgRG9uZSBiIC0+IHB1cmUgYgoKLS0gfCBU aGlzIHdvcmtzIGZvciBhbGwgbW9uYWRzIHdpdGggYSBwYXJ0aWN1bGFyIGRpc3RyaWJ1dGlvbiBw cm9wZXJ0eQotLSBhbmQgaXMgc3RhY2sgc2FmZSB0aHJvdWdoIHRoZSB1c2Ugb2YgQHRhaWxSZWNA Lgp0YWlsUmVjTTMgOjoKICBNb25hZCBtID0+CiAgKChhIC0+IG0gKFN0ZXAgYSBiKSkgLT4gbSAo YSAtPiBTdGVwIGEgbCkpIC0+CiAgKGwgLT4gbSBiKSAtPgogIChhIC0+IG0gKFN0ZXAgYSBiKSkg LT4KICBhIC0+CiAgbSBiCnRhaWxSZWNNMyBkaXN0cmlidXRlIGZpbmlzaCBmIGEgPSBkbwogIGcg PC0gZGlzdHJpYnV0ZSBmCiAgZmluaXNoICh0YWlsUmVjIGcgYSkKCnRhaWxSZWNSZWFkZXIgOjog KGEgLT4gciAtPiBTdGVwIGEgYikgLT4gYSAtPiByIC0+IGIKdGFpbFJlY1JlYWRlciA9IHRhaWxS ZWNNMyAoXGYgciBhIC0+IGYgYSByKSAoXGIgXyAtPiBiKQoKdGFpbFJlY0Rpc3RyaWJ1dGUgOjoK ICBNb25hZCBtID0+CiAgKG0gKFN0ZXAgYSBiKSAtPiBTdGVwIGEgKG0gYikpIC0+CiAgKGEgLT4g bSAoU3RlcCBhIGIpKSAtPgogIGEgLT4KICBtIGIKdGFpbFJlY0Rpc3RyaWJ1dGUgZGlzdHJpYnV0 ZSA9IHRhaWxSZWNNMyAoXGYgLT4gcHVyZSAoXGEgLT4gZGlzdHJpYnV0ZQogIChmIGEpKSkgaWQK CnRhaWxSZWNNYXliZSA6OiAoYSAtPiBNYXliZSAoU3RlcCBhIGIpKSAtPiBhIC0+IE1heWJlIGIK dGFpbFJlY01heWJlID0gdGFpbFJlY0Rpc3RyaWJ1dGUgJCBcY2FzZQogIE5vdGhpbmcgLT4gRG9u ZSBOb3RoaW5nCiAgSnVzdCBqIC0+IG9uRG9uZSBwdXJlIGoKCnRhaWxSZWNFaXRoZXIgOjogKGEg LT4gRWl0aGVyIGUgKFN0ZXAgYSBiKSkgLT4gYSAtPiBFaXRoZXIgZSBiCnRhaWxSZWNFaXRoZXIg PSB0YWlsUmVjRGlzdHJpYnV0ZSAkIFxjYXNlCiAgTGVmdCBlIC0+IERvbmUgKExlZnQgZSkKICBS aWdodCByIC0+IG9uRG9uZSBwdXJlIHIKCnRhaWxSZWNJZGVudGl0eSA6OiAoYSAtPiBJZGVudGl0 eSAoU3RlcCBhIGIpKSAtPiBhIC0+IElkZW50aXR5IGIKdGFpbFJlY0lkZW50aXR5ID0gdGFpbFJl Y0Rpc3RyaWJ1dGUgJCBcY2FzZQogIElkZW50aXR5IGkgLT4gb25Eb25lIHB1cmUgaQpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaWJyYXJpZXMgbWFpbGlu ZyBsaXN0CkxpYnJhcmllc0BoYXNrZWxsLm9yZwpodHRwOi8vbWFpbC5oYXNrZWxsLm9yZy9jZ2kt YmluL21haWxtYW4vbGlzdGluZm8vbGlicmFyaWVzCg==