:- multifile trans/2.
trans(A,A) :-
atomic(A).
a.p:
:- multifile trans/2.
trans(apple, banana).
b.p:
:- multifile trans/2.
trans(apple, banana).
Running session:
C:\work\windows\scanner\xsb>bash
bash-3.2$ xsb
[xsb_configuration loaded]
[sysinitrc loaded]
XSB Version 3.1 (Incognito) of August 10, 2007
[x86-pc-windows; mode: optimal; engine: slg-wam; gc: indirection; scheduling: lo
cal]
| ?- [code].
[Compiling .\code]
[code compiled, cpu time used: 0.0780 seconds]
[code loaded]
yes
| ?- load_dyn(a).
[C:\work\windows\scanner\xsb\a.P dynamically loaded, cpu time used: 0.0000 secon
ds]
yes
| ?- load_dyn(b).
[C:\work\windows\scanner\xsb\b.P dynamically loaded, cpu time used: 0.0000 secon
ds]
yes
| ?- trans(apple, SecondArg).
SecondArg = apple;
SecondArg = banana;
SecondArg = orange;
no
| ?-