我如何在序言中展平一个复杂的列表?

how do i flatten a complicate list in prolog?

我有一个列表,看起来像 -> [[[7, 8, 9], [7, 8, 9]]],我想成为以下示例,

[[[7,8,9],[7,8,9]]] -> [[7,8,9],[7,8,9]] 这可能吗?

有可能:

unpack([Ls], Ls).

例如

?- unpack([[[7, 8, 9], [7, 8, 9]]], Answer).
Answer = [[7, 8, 9], [7, 8, 9]]