 ; The following macro constructs Gambit-specific ids on the fly
;  (define-macro (_gid id)
;    (string-&gt;symbol (string-append &quot;##&quot; (symbol-&gt;string id))))
;  (define (open-tcp-connection host port-number)
;    (assert (integer? port-number) (positive? port-number))
;    (let ((io-port ((_gid open-input-output-file)
;		    (string-append &quot;tcp://&quot; host &quot;:&quot; 
;				   (number-&gt;string port-number)))))
;      (cons io-port io-port)))
;  (define flush-output-port flush-output