SWI-Prolog
andrewcropper