[ Strings and Atoms | Reference Manual | Alphabetic Index ]
concat_atom(++List, -Dest)
Succeeds if Dest is the concatenation of the atomic terms contained in List.
It is more efficient to use atomics_to_string/2 whenever possible.
- List
- List of atomic terms.
- Dest
- Atom or variable.
Description
Dest is unified with the concatenation of the atomic terms contained in
List. List may contain numbers, atoms and strings. The result of the
concatenation is always an atom.
The use of this predicate is discouraged in favour of atomics_to_string/2,
because the creation of new atoms involves entering them into a
dictionary whose garbage collection is relatively expensive.
Modes and Determinism
- concat_atom(++, -) is det
Exceptions
- (4) instantiation fault
- List is not instantiated (non-coroutine mode only).
- (4) instantiation fault
- List contains free variables (non-coroutine mode only).
- (5) type error
- List is instantiated, but not to a list of atomic terms.
- (5) type error
- Dest is neither an atom nor a variable.
Examples
Success:
concat_atom([abc,def],abcdef).
concat_atom(["Str1","Str2"],X).
X = 'Str1Str2'.
concat_atom([the,man," is aged ",20],X).
X = 'theman is aged 20'.
concat_atom([1,2,3],X)
X = '123'.
Fail:
concat_atom([ab,bc],abc).
Error:
concat_atom(A,X). (Error 4).
concat_atom([abc,D],X). (Error 4).
concat_atom(art,X). (Error 5).
See Also
atomics_to_string / 2, concat_atoms / 3, atom_string / 2, atomics_to_string / 3