[Haskell-cafe] Implicit Multi Threading in Switch Case
Yotam Ohad
yotam2206 at gmail.com
Tue Jun 20 09:28:15 UTC 2017
Hi,
After reading "Push-Pull Functional Reactive Programming
<https://pdfs.semanticscholar.org/fb7a/879d639641341e025197b40afad9e21f0ce5.pdf>"
I had an idea about deciding which, of two events, comes first. Instead of
using forkIO, I tried something like the following:
infi :: Maybe Int
infi = infi
stop :: Maybe Int
stop = Nothing
test :: Int
test = case (infi, stop) of
(Nothing, Just _) -> 1
(_, _) -> 2
Here, infi is an action that never ends, and stop a function that ends
immediately. I thought that the compiler would see that stop evaluates
immediately to Nothing and thus will return 2, but it tries to evaluate
infi and get stuck.
I think it happens because I am using a tuple to hold both values (but not
really sure about it). Do you know a way to make this arrangement work?
Yotam
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20170620/6c86a95e/attachment.html>
More information about the Haskell-Cafe
mailing list