server:
    % Make a named socket and read two terms from it
    [eclipse 10]: socket(unix, datagram, s), bind(s, '/tmp/sock').
    yes.
    [eclipse 11]: read(s, X), read(s, Y).
process1:
    % Connect a socket to the server and write one term
    [eclipse 32]: socket(unix, datagram, s), connect(s, '/tmp/sock').
    yes.
    [eclipse 33]: printf(s, "%w. %b", message(process1)).
process2:
    % Connect a named socket to the server and write another term
    [eclipse 15]: socket(unix, datagram, s), connect(s, '/tmp/sock'),
        bind(s, '/tmp/socka').
    yes.
    [eclipse 16]: printf(s, "%w. %b", message(process2)).
    yes.
    % And now disconnect the output socket from the server
    [eclipse 17]: connect(s, 0).
    yes.
server:
    % Now the server can read the two terms
    X = message(process1)
    Y = message(process2)
    yes.
    % and it writes one term to the second process on the same socket
    [eclipse 12]: connect(s, '/tmp/socka'),
        printf(s, "%w. %b", message(server)).
process2:
    % 
    [eclipse 18]: read(s, Msg).
    Msg = message(server)
    yes.