syndicate-2017/racket/syndicate-monolithic/examples/udp-hello-plain.rkt

19 lines
627 B
Racket
Raw Normal View History

2016-04-01 23:53:46 +00:00
#lang syndicate-monolithic
2016-01-23 23:24:07 +00:00
(require "../drivers/udp.rkt")
(spawn-udp-driver)
(spawn (lambda (e s)
(match e
[(message (udp-packet src dst #"quit\n"))
(log-info "Got quit request")
(quit (message (udp-packet dst src #"Goodbye!\n")))]
[(message (udp-packet src dst body))
(log-info "Got packet from ~v: ~v" src body)
(define reply (string->bytes/utf-8 (format "You said: ~a" body)))
(transition s (message (udp-packet dst src reply)))]
[_ #f]))
(void)
(scn (subscription (udp-packet ? (udp-listener 5999) ?))))