From 718cc7c73318b09d595ddc2072b74062430ae896 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Mon, 10 Mar 2014 20:19:22 -0400 Subject: Don't start the REPL server upon importing (2d repl). * 2d/repl.scm (start-2d-repl): New procedure. * examples/common.scm: Start the REPL server. * sandbox: Start the REPL server. --- 2d/repl.scm | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to '2d') diff --git a/2d/repl.scm b/2d/repl.scm index c2dec6c..02237b6 100644 --- a/2d/repl.scm +++ b/2d/repl.scm @@ -23,12 +23,16 @@ (define-module (2d repl) #:use-module (system repl coop-server) + #:use-module (system repl server) #:use-module (2d agenda) - #:use-module (2d game)) + #:use-module (2d game) + #:export (start-2d-repl)) -(define server (spawn-coop-repl-server)) - -(define (poll-server) - (poll-coop-repl-server server)) - -(schedule-interval game-agenda poll-server 2) +(define* (start-2d-repl #:optional (port (make-tcp-server-socket #:port 37146))) + "Start a cooperative REPL server that listens on the given PORT. By +default, this port is 37146. Additionally, a process is scheduled to +poll the REPL server upon every tick of the game loop." + (let ((server (spawn-coop-repl-server port))) + (schedule-each game-agenda + (lambda () + (poll-coop-repl-server server))))) -- cgit v1.2.3