The Lambda Lab
/
projects
/
sam.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Reorganized boot.
[sam.git]
/
chat_client.scm
diff --git
a/chat_client.scm
b/chat_client.scm
index
60d0ee4
..
4bf02d8
100644
(file)
--- a/
chat_client.scm
+++ b/
chat_client.scm
@@
-3,10
+3,9
@@
srfi-13
(chicken process-context))
srfi-13
(chicken process-context))
-(define
client-beh
+(define
(make-client-beh system)
(let ((name "name")
(recipients '()))
(let ((name "name")
(recipients '()))
-
(lambda (self . message)
(match message
(('start)
(lambda (self . message)
(match message
(('start)
@@
-67,6
+66,10
@@
(send-message system 'read self)
'sleep)))
(send-message system 'read self)
'sleep)))
+(define (main-beh self system)
+ (send-message (make-actor (make-client-beh system)) 'start)
+ 'done)
+
(define (print-usage)
(print "Actor-driven chat client.\n")
(print "Usage: chat_client -h")
(define (print-usage)
(print "Actor-driven chat client.\n")
(print "Usage: chat_client -h")
@@
-83,9
+86,7
@@
(((or "-n" "--hostname") hstr rest ...)
(loop rest hstr port))
(()
(((or "-n" "--hostname") hstr rest ...)
(loop rest hstr port))
(()
- (init-sam host port)
- (send-message (make-actor client-beh) 'start)
- (start-console))
+ (boot-sam host port main-beh))
(else
(print "Unrecognised argument '" (car args) "'.\n")
(print-usage))))
(else
(print "Unrecognised argument '" (car args) "'.\n")
(print-usage))))