for the Prolog and Forth nerds