Formal and Practical Aspects of Implementing Abstract Data Types in the Prolog Instruction. - Haberman, Bruria (Informatica, 2008)