aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/control/concurrency/semaphore.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/lux/control/concurrency/semaphore.lux')
-rw-r--r--stdlib/source/lux/control/concurrency/semaphore.lux14
1 files changed, 7 insertions, 7 deletions
diff --git a/stdlib/source/lux/control/concurrency/semaphore.lux b/stdlib/source/lux/control/concurrency/semaphore.lux
index 46762ecf3..ddc73b300 100644
--- a/stdlib/source/lux/control/concurrency/semaphore.lux
+++ b/stdlib/source/lux/control/concurrency/semaphore.lux
@@ -29,7 +29,7 @@
(io.run
(loop [signal (: (Promise Any)
(promise.promise #.None))]
- (do io.Monad<IO>
+ (do io.monad
[state (atom.read semaphore)
#let [[ready? state'] (: [Bit State]
(case (get@ #open-positions state)
@@ -50,7 +50,7 @@
(let [semaphore (:representation semaphore)]
(promise.future
(loop [_ []]
- (do io.Monad<IO>
+ (do io.monad
[state (atom.read semaphore)
#let [[?signal state'] (: [(Maybe (Promise Any)) State]
(case (get@ #waiting-list state)
@@ -91,7 +91,7 @@
(def: #export (synchronize mutex procedure)
(All [a] (-> Mutex (IO (Promise a)) (Promise a)))
- (do promise.Monad<Promise>
+ (do promise.monad
[_ (acquire mutex)
output (io.run procedure)
_ (release mutex)]
@@ -120,15 +120,15 @@
(-> Nat Semaphore (Promise Any))
(loop [step 0]
(if (n/< times step)
- (do promise.Monad<Promise>
+ (do promise.monad
[_ (signal turnstile)]
(recur (inc step)))
- (:: promise.Monad<Promise> wrap []))))
+ (:: promise.monad wrap []))))
(do-template [<phase> <update> <goal> <turnstile>]
[(def: (<phase> (^:representation barrier))
(-> Barrier (Promise Any))
- (do promise.Monad<Promise>
+ (do promise.monad
[#let [limit (refinement.un-refine (get@ #limit barrier))
goal <goal>
count (io.run (atom.update <update> (get@ #count barrier)))]
@@ -143,7 +143,7 @@
(def: #export (block barrier)
(-> Barrier (Promise Any))
- (do promise.Monad<Promise>
+ (do promise.monad
[_ (start barrier)]
(end barrier)))
)