Prolog ++ the power of object-oriented and logic programming