break_atom/2

Breaks an atom into a list of single-character atoms, or concatenates a list of atoms to a single atom

break_atom(Atom,AtomList) -(i,o),(o,i)

Compatibility: An... unknown old Prolog interpreter; G.I.S. Prolog.

Remarks:

1) For certain types of Morphology NLP software, this predicate is quite handy: - If the input-atom is a word like 'buys', it is turned into a list of atoms, each one corresponding to a letter of the word, e.g. [b,u,y,s] -in the (i,o) flow pattern. In the reverse direction -(o,i) it is also often desirable to concatenate a list of atoms into a single atom, e.g. break_atom(X,[un,know,able]) gives X = 'unknowable'.

2) This predicate was originally found in a certain public domain(?) Prolog interpreter, more than ten years ago, and it proved useful in G.I.S. Prolog, so it is implemented here; If you know or can find out where this command originally appeared (Google was already tried, to no avail), please notify the author! :-)