質問です。
Schemeの勉強がてら、Javaで書いたプログラムをGaucheに
移植しようとしているのですが、UDPによる受信のところでつまづいています。
(use gauche.net)
(define (main arg)
(let ((socket (make-socket |PF_INET| |SOCK_DGRAM|))
(address (make <sockaddr-in> :host "127.0.0.1" :port 8080)))
(socket-bind socket address)
(let ((in (socket-input-port socket)))
(display "Waiting...\n")
(let ((line (read-line in)))
(display "Received.\n")
(display line)))
(socket-close socket)))
(read-line in)のところでブロックされた後、該当ポートにパケットを
送信しても制御が帰ってきません。ちなみに送信側は次のコードです。
送信できてることは受信側をJavaで作って確かめることができました。
(use gauche.net)
(define (main arg)
(let ((socket (make-socket |PF_INET| |SOCK_DGRAM|))
(address (make <sockaddr-in> :host "127.0.0.1" :port 8080)))
(socket-connect socket address)
(let ((out (socket-output-port socket)))
(display "Sending...\n")
(display "Hello\n" out)
(display "Done.\n"))
(socket-close socket)))

どこが間違ってるんでしょうか?
環境:Windows2000,Cygwin