Addr = '0.0.0.0',
Port = 5000,
socket_client_open(Addr:Port, Stream, [type(binary)]),
- read_line(Stream, Line),
+ read_line_to_chars(Stream, Line, []),
write(Line),
close(Stream).
-
-
-read_line(Stream, Line) :-
- get_byte(Stream, Char),
- ( Char = -1 ->
- Line = []
- ; Char = 13 ->
- read_line(Stream, Line)
- ; Char = 10 ->
- Line = []
- ; (read_line(Stream, Line0), Line = [Char|Line0])
- ).
-
-read_message(Stream, [Cs|Message]) :-
- read_line(Stream, Bs),
- chars_utf8bytes(Cs, Bs),
- ( Cs = "." ->
- Message = []
- ; read_message(Stream, Message)
- ).
test :-
Addr = '0.0.0.0',
Port = 5000,
- once(socket_server_open(Addr:Port, Socket)),
+ socket_server_open(Addr:Port, Socket),
format("Listening at port ~d\n", [Port]),
socket_server_accept(Socket, _Client, Stream, [type(binary)]),
format(Stream, "FIRST\r\n", []),