関数型言語は何故普及しないのかを考える
■ このスレッドは過去ログ倉庫に格納されています
0309デフォルトの名無しさん
2010/11/12(金) 14:23:07書いたことないから、動かないかもしれないけど、やはりこんな感じかな。一文字毎のrawmode receive 出力後
のflushout が必要なのかも知れない。
echo_server(Port) :-
socket(internet,stream,Socket),
socket_bind(Socket,Port),
一文字の受信・送信を繰り返す(Socket),
socket_shutdown(Socket).
一文字の受信・送信を繰り返す(Socket) :-
socket_listen(Socket),
socket_accept(Socket,Host : Port,NewSocket),
open(NewSocket,read,Input,[type(binary)]),
open(NewSocket,write,Output,[type(binary)]),
get_byte(Input,Code),
一文字の受信・送信を繰り返す(NewSocket,Input,Output,Code),
close(Output),
close(Input),
close(NewSocket),
一文字の受信・送信を繰り返す(Socket).
一文字の送信・受信を繰り返す(_,_,-1) :- !.
一文字の送信・受信を繰り返す(Input,Output,Code) :-
put_byte(Output,Code),
get_byte(Input,Code2),
一文字の送信・受信を繰り返す(Input,Output,Code2).
■ このスレッドは過去ログ倉庫に格納されています