23 lines
560 B
Racket
23 lines
560 B
Racket
#lang typed/syndicate/roles
|
|
|
|
(provide activate!
|
|
later-than
|
|
LaterThanT
|
|
LaterThan
|
|
TimeStateDriver)
|
|
|
|
(require-struct later-than
|
|
#:as LaterThanT
|
|
#:from syndicate/drivers/timestate)
|
|
|
|
(define-type-alias LaterThan (LaterThanT Int))
|
|
|
|
(define-type-alias TimeStateDriver
|
|
(U LaterThan
|
|
(Observe (LaterThanT ★/t))))
|
|
|
|
;; TODO ignoring other driver underneath it
|
|
|
|
(require/typed (submod syndicate/drivers/timestate syndicate-main)
|
|
[activate! : (proc → ⊥ #:spawns ((Actor TimeStateDriver)))])
|