broker(client(M:F)) :- 
broker.pl
... corba_initialize_orb([], _), factory(F).
gives a handle to the server object
broker(server(M:I)) :- ... corba_initialize_server([server,server(test), timeout(infinite)],Server), ...
create server object
G =.. [_Create,_Server,Self], call(G), corba_object_to_string(Self,IOR), open(IORFile,write,Fd),
write reference to file
format(Fd,'string',[IOR]), close(Fd), corba_main_loop(Server).
enter main loop

slide: Prolog -- broker