samer@1: (load "streams.scm") samer@1: samer@0: (define (make-server) (java.net.ServerSocket. 2000)) samer@0: (define (accept s) (display "waiting for connection...\n") (.accept s)) samer@0: (define (connect host) (display "connecting...\n") (java.net.Socket. host 2000)) samer@0: (define (istream s) (.getInputStream s)) samer@0: (define (ostream s) (.getOutputStream s)) samer@0: samer@0: (define-method (send (socket java.net.Socket) (x Vec)) samer@0: (VecToStream. x (buffer (ostream socket)))) samer@0: (define-method (recv (socket java.net.Socket) (x Vec)) samer@0: (StreamToVec. x (buffer (istream socket)))) samer@0: samer@0: (define-method (send (socket java.net.Socket) (x DoubleModel)) samer@0: (SignalToStream. x (buffer (ostream socket)))) samer@0: (define-method (recv (socket java.net.Socket) (x DoubleModel)) samer@0: (StreamToDouble. x (buffer (istream socket)))) samer@0: