[Haskell-cafe] Non-deterministic (stochastic?) function/expression types in Haskell?

Jake jake.waksbaum at gmail.com
Mon Jan 15 17:53:31 UTC 2018


Hi Ben,

Not sure I understand exactly if this what you want, but if the problem is
recursion within monads you might want to take a look at MonadFix or
recursive do notation. If I understood more about how they worked I'd give
an example, but I don't; I just know they're related to recursion in monads.

https://ocharles.org.uk/blog/posts/2014-12-09-recursive-do.html
https://downloads.haskell.org/~ghc/7.8.1/docs/html/users_guide/syntax-extns.html#recursive-do-notation

בתאריך יום ב׳, 15 בינו׳ 2018, 5:53, מאת Sergiu Ivanov ‏<sivanov at colimite.fr
>:

> Hello,
>
> Thus quoth  PY  on Mon Jan 15 2018 at 09:08 (+0100):
> >
> > But there is another good choice: *Mercury*. It supports (sure,
> > because it's declarative language and is based on Prolog) special
> > notations for computations:
>
> If you prefer a more Haskellish syntax, you may also want to look at
> Curry :
>
>   http://www-ps.informatik.uni-kiel.de/currywiki/
>
> Curry has a built-in function called "choice" which allows
> "non-deterministic, set-valued" functions.
>
> Now, whichever tool you use, you are probably going to wind up with
> monads or with monads in disguise, as Olaf points out.  (And sometimes
> disguise may be quite important.)
>
> --
> Sergiu
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180115/77575a6e/attachment.html>


More information about the Haskell-Cafe mailing list