diff src/scheme/scheme-server.scm @ 0:bf79fb79ee13

Initial Mercurial check in.
author samer
date Tue, 17 Jan 2012 17:50:20 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/scheme/scheme-server.scm	Tue Jan 17 17:50:20 2012 +0000
@@ -0,0 +1,16 @@
+(display "Creating remote session server.\n")
+(define server (java.net.ServerSocket. 2000))
+
+(define (remote-repl s) 
+	(display "Waiting for connection...\n")
+	(let ((call (.accept s)))
+		(display (string-append "Received connection from " (.toString call) "\n"))
+		(.start (Thread. (lambda () (service call))))))
+
+
+(define (service call)
+	(display "Asynchronous REPL initiated.\n")
+	(samer.silk.Terminal.REPL call))
+
+(define (serve-for-ever) (remote-repl server) (serve-for-ever))
+(.start (Thread. serve-for-ever))