Mercurial > hg > jslab
diff src/scheme/sockets.scm @ 0:bf79fb79ee13
Initial Mercurial check in.
author | samer |
---|---|
date | Tue, 17 Jan 2012 17:50:20 +0000 |
parents | |
children | 5df24c91468d |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/scheme/sockets.scm Tue Jan 17 17:50:20 2012 +0000 @@ -0,0 +1,17 @@ +(define (make-server) (java.net.ServerSocket. 2000)) +(define (accept s) (display "waiting for connection...\n") (.accept s)) +(define (connect host) (display "connecting...\n") (java.net.Socket. host 2000)) +(define (istream s) (.getInputStream s)) +(define (ostream s) (.getOutputStream s)) +(load "streams.scm") + +(define-method (send (socket java.net.Socket) (x Vec)) + (VecToStream. x (buffer (ostream socket)))) +(define-method (recv (socket java.net.Socket) (x Vec)) + (StreamToVec. x (buffer (istream socket)))) + +(define-method (send (socket java.net.Socket) (x DoubleModel)) + (SignalToStream. x (buffer (ostream socket)))) +(define-method (recv (socket java.net.Socket) (x DoubleModel)) + (StreamToDouble. x (buffer (istream socket)))) +