2018-08-14 20:35:39 +00:00
|
|
|
#lang typed/syndicate/roles
|
|
|
|
|
|
|
|
;; Expected Output
|
|
|
|
;; size: 0
|
|
|
|
;; size: 2
|
|
|
|
|
|
|
|
(define-type-alias ds-type
|
|
|
|
(U (Tuple String Int)
|
|
|
|
(Observe ★/t)))
|
|
|
|
|
2019-01-25 15:51:46 +00:00
|
|
|
(run-ground-dataspace ds-type
|
2018-08-14 20:35:39 +00:00
|
|
|
(spawn ds-type
|
|
|
|
(start-facet querier
|
|
|
|
(define/query-set key (tuple "key" (bind v Int)) v)
|
|
|
|
(assert (tuple "size" (set-count (ref key))))))
|
|
|
|
(spawn ds-type
|
|
|
|
(start-facet client
|
|
|
|
(assert (tuple "key" 18))
|
|
|
|
(assert (tuple "key" 88))
|
|
|
|
(during (tuple "size" (bind v Int))
|
|
|
|
(on start
|
2019-01-25 15:51:46 +00:00
|
|
|
(printf "size: ~v\n" v))))))
|