Prolog compile