Hello,
The new SWI-prolog version 3.3.0 has changed the behaviour of atom_chars/2 ( and some others )
From the new Manual:
atom_chars/2 This predicate is now ISO compliant and thus generates a list of one-character atoms. The behaviour of the old predicate is available in the ---also ISO compliant--- atom_codes/2 predicate. Safest repair is a replacement of all atom_chars into atom_codes.
Are there plans to change / update the pillow library for SWI-Prolog ?