aboutsummaryrefslogtreecommitdiff
path: root/stdlib
diff options
context:
space:
mode:
authorEduardo Julian2017-07-01 15:49:53 -0400
committerEduardo Julian2017-07-01 15:49:53 -0400
commitb0596d813c4c597a97be52fc67f2a7ff12478d66 (patch)
tree42a0255084ee587f09ceeaea76a9843a41d34f48 /stdlib
parent9f839b97e95f56e228d78e5d29f7d31d0d3f8eb1 (diff)
- The bodies of actor messages are run within the Task monad.
Diffstat (limited to 'stdlib')
-rw-r--r--stdlib/source/lux/concurrency/actor.lux4
1 files changed, 3 insertions, 1 deletions
diff --git a/stdlib/source/lux/concurrency/actor.lux b/stdlib/source/lux/concurrency/actor.lux
index 91e4f7a4a..93f1ed6d8 100644
--- a/stdlib/source/lux/concurrency/actor.lux
+++ b/stdlib/source/lux/concurrency/actor.lux
@@ -325,7 +325,9 @@
(do P;Monad<Promise>
[(~ g!return) (: (T;Task [((~ g!type) (~@ g!refs))
(~ g!outputT)])
- (~ body))]
+ (do T;Monad<Task>
+ []
+ (~ body)))]
(case (~ g!return)
(#;Right [(~ g!state) (~ g!return)])
(exec (io;run (P;resolve (#;Right (~ g!return)) (~ g!task)))