const PORT=12321; pipe:=Thread.Pipe(); // how server tells thread to connect to user fcn echo(socket){ // a thread, one per connection text:=Data(); while(t:=socket.read()){ text.append(t); if(text.find("\n",text.cursor)){ text.readln().print(); } } // socket was closed } // Set up the server socket. server:=Network.TCPServerSocket.open(PORT); println("Listening on %s:%s".fmt(server.hostname,server.port)); server.listen(echo.launch); // Main event loop