The errors which exist are implementation defined.
Success: ?- string_list(S,L). instantiation fault in string_list(_g50, _g52) ?- atom_length("atom",L). type error in atom_length("atom", _g52). ?- set_event_handler(4,fail/0), string_list(S,L). no (more) solution. ?- set_event_handler(5,abort/0),atom_length("atom",L). Aborting execution.... ?- reset_error_handlers, string_list(S,L). instantiation fault in string_list(_g62, _g64) ?- atom_length("atom",L). type error in atom_length("atom", _g52).