All Manuals > LispWorks® User Guide and Reference Manual > 37 The HCL Package

concatenate* Function

Summary

Concatenates a list of sequences.

Package

hcl

Signature

concatenate* result-type sequences => result-sequence

Arguments
result-type
A sequence type specifier.
sequences
A list of sequences.
Values
result-sequence
A proper sequence of type result-type.
Description

The function concatenate* concatenates sequences to a sequence of type result-type, exactly the same way as concatenate does.

concatenate* is a useful replacement for concatenate in cases where the code does:

(apply 'concatenate result-type a-list-of-sequences)

In particular when a-list-of-sequences is long. It is also a useful replacement for use of apply with append:

(apply 'append list-of-lists)
=>
(concatenate* 'list list-of-lists)
 
(apply 'append list1 list2 list3 list-of-lists)
=>
(append list1 list2 list3 (concatenate* 'list list-of-lists))

The call to concatenate* is both more efficient that the apply of append, and can be used with lists that are longer than call-arguments-limit.


LispWorks® User Guide and Reference Manual - 18 Feb 2025 15:32:21