syndicate-2017/racket/syndicate/examples/example-meta-echo2.rkt

15 lines
495 B
Racket
Raw Normal View History

2016-04-01 23:53:46 +00:00
#lang syndicate
;; The actor should receive a single event adding the (at-meta x) assertion.
2016-04-01 23:53:46 +00:00
(require syndicate/pretty)
(spawn-dataspace
(spawn (lambda (e counter)
(and e
(let ((new-counter (+ counter 1)))
2016-04-01 23:53:46 +00:00
(printf "Received event ~a:\n~a\n" new-counter (syndicate-pretty-print->string e))
(transition (+ counter 1) '()))))
0
(list (patch-seq (sub 'x #:meta-level 1)
(assert (at-meta 'x))))))