#lang racket/base (require racket/tcp) (define (main port) (define listener (tcp-listen port 4 #t)) (let loop () (define-values (cin cout) (tcp-accept listener)) (thread (lambda () (let connection-loop () (define v (read-byte cin)) (unless (or (eof-object? v) (equal? v #"\4")) (write-byte v cout) (flush-output cout) (connection-loop))) (close-input-port cin) (close-output-port cout))) (loop))) (main 5999)