Re: characterization of subset of Monads that respect tail calls?

Isaac Elliott <[email protected]> Tue, 27 Sep 2022 10:15:29 +1000
Newsgroups gmane.comp.lang.haskell.libraries
Message-ID <CADNFHyMe8BiEOnpR=T6WQ1XD8pDD27sUio7QkKPp_ZfWF70-4Q@mail.gmail.com>
--===============5545269893322275245==
Content-Type: multipart/alternative; boundary="00000000000057fdf105e99d8b47"

--00000000000057fdf105e99d8b47
Content-Type: text/plain; charset="UTF-8"

https://pursuit.purescript.org/packages/purescript-tailrec/6.1.0/docs/Control.Monad.Rec.Class
seems like a good starting point

On Tue, 27 Sept 2022, 6:39 am Carter Schonwald, <[email protected]>
wrote:

> Hello everyone!
> a recent conversation I has having led to an interesting question: is
> there a good interface or something for Monads which guarantee tail calls
> are tail calls? (ideally via a stronger api assumption for tail position
> computations in a monad rather than "trustme" style api contracts)
>
> thx
> -Carter
> _______________________________________________
> Libraries mailing list
> [email protected]
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>

--00000000000057fdf105e99d8b47
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><a href=3D"https://pursuit.purescript.org/packages/puresc=
ript-tailrec/6.1.0/docs/Control.Monad.Rec.Class">https://pursuit.purescript=
.org/packages/purescript-tailrec/6.1.0/docs/Control.Monad.Rec.Class</a> see=
ms like a good starting point</div><br><div class=3D"gmail_quote"><div dir=
=3D"ltr" class=3D"gmail_attr">On Tue, 27 Sept 2022, 6:39 am Carter Schonwal=
d, &lt;<a href=3D"mailto:[email protected]">carter.schonwald@gmail=
.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr=
">Hello everyone!<div>a recent conversation I has having led to an interest=
ing question: is there a good interface or something for Monads which guara=
ntee tail calls are tail calls? (ideally via a stronger api assumption for =
tail position computations in a monad rather than &quot;trustme&quot; style=
 api contracts)</div><div><br></div><div>thx=C2=A0</div><div>-Carter</div><=
/div>
_______________________________________________<br>
Libraries mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank" rel=3D"noreferre=
r">[email protected]</a><br>
<a href=3D"http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" rel=
=3D"noreferrer noreferrer" target=3D"_blank">http://mail.haskell.org/cgi-bi=
n/mailman/listinfo/libraries</a><br>
</blockquote></div>

--00000000000057fdf105e99d8b47--

--===============5545269893322275245==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTGlicmFyaWVz
IG1haWxpbmcgbGlzdApMaWJyYXJpZXNAaGFza2VsbC5vcmcKaHR0cDovL21haWwuaGFza2VsbC5v
cmcvY2dpLWJpbi9tYWlsbWFuL2xpc3RpbmZvL2xpYnJhcmllcwo=

--===============5545269893322275245==--