Dear Prolog implementors,
To the best of my knowledge (please correct me if I’m wrong), Prolog implementations can be grouped into three kinds according to their module systems:
- those with no module systems (prefixing nothing), such as GNU Prolog;
- those with atom-based module systems (prefixing both relation symbols and function symbols), such as XSB Prolog and BIM Prolog; and
- those with predicate-based module systems (prefixing only relation symbols), which seem to be the majority, such as SWI-Prolog, YAP, Ciao, SICStus, etc.
Where can I find the rationale/justification/reason, the design document, for each module system, especially for atom-based module systems?
The only design document I could find was Cabeza & Hermenegildo 2000 “A New Module System for Prolog”, for Ciao’s predicate-based module system.
Thank you for your help.