Clojureの入出力系の関数を一通り目を通した(と思っている)ので、ちゃんとアプリっぽいものを書いてみようとClojureでEcho Serverを書くことにチャレンジしてみました。 今回のEcho Serverの動作は、以下の通りです。 起動引数にポート番号、またはホスト名とポート番号のペアを取る 入力された文字に「You Say => 」をくっつけて、クライアントに送信する 「exit」と入力された場合は、「ByeBye!」と送信して接続を切る 空文字(単純にEnterを押されただけ)を入力された場合は、無視して次の入力を待つ クライアントの接続ごとに、マルチスレッドで動作する 先に結果から。できたコードはこちら。 echo_server.clj (import '(java.net InetSocketAddress ServerSocket) '(java.util Date))