SWI-Prolog
sni-prolog