-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Free monad with trampoline #437
Comments
There are no concrete plans, but we're open, if you can add more details and draft a concrete proposals we can consider it. |
I'll play around with that and maybe be able to help. Scala's cats looks like a nice source of inspiration - https://github.com/typelevel/cats/blob/main/free/src/main/scala/cats/free/Free.scala Furhermore it would be greate to be able to easily combine coproducts without manually getting into details like in https://underscore.io/blog/posts/2017/03/29/free-inject.html. |
I think it's that free monads are powerful enough that people will reach for the pattern when some functions and DU will do. I've seen the same critique of free monad use even within haskell blogs. You can write nearly anything in terms of a Free monad, but you probably shouldn't as they will be slower and more complex. Being said I think F#+ is the exact space where support the free monad could be valuable. I'm less worried about people using it as a "golden hammer" as the terser syntax in F#+ operators implies that users have a degree of comfort with FP patterns and it will be easier for people to use where it makes sense. |
Hi, are there any plans to add trampoline to this library? free monad with trampoline would be great to use in safe stack manner - currently free monad is not stack safe
The text was updated successfully, but these errors were encountered: