From 56e893fac4ef652cabcd2e189e28d71870a9ddda Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 21 Aug 2016 08:42:45 -0400 Subject: [PATCH] Use field instead of set!. --- racket/syndicate/examples/actor/fs-shell.rkt | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/racket/syndicate/examples/actor/fs-shell.rkt b/racket/syndicate/examples/actor/fs-shell.rkt index 7755a64..bf68ec7 100644 --- a/racket/syndicate/examples/actor/fs-shell.rkt +++ b/racket/syndicate/examples/actor/fs-shell.rkt @@ -17,16 +17,14 @@ (define (print-prompt) (printf "> ") (flush-output)) - (define reader-count 0) - (define (generate-reader-id) - (begin0 reader-count - (set! reader-count (+ reader-count 1)))) - (actor (print-prompt) + (actor (field [reader-count 0]) + (print-prompt) (until (message (inbound (external-event e (list (? eof-object? _))))) (on (message (inbound (external-event e (list (? bytes? $bs))))) (match (string-split (string-trim (bytes->string/utf-8 bs))) [(list "open" name) - (define reader-id (generate-reader-id)) + (define reader-id (reader-count)) + (reader-count (+ (reader-count) 1)) (actor (printf "Reader ~a opening file ~v.\n" reader-id name) (until (message `(stop-watching ,name)) (on (asserted (file name $contents))