Linked lists owning the data (each node contains a couple of tags : one for data and one for next pointer.
Regular lists can be :
[1, 2, 3]
[1 | [2, 3]]
[1, 2 | [3]]
[]
Regular lists end with the empty list : [1] == [1 | []]
.
You can also contruct dotted lists like in Common Lisp where the next list pointer is an arbitrary form. E.g. :
[1 | 2]
[1, 2, 3 | 4]
[[] | 1]
All these list formats are supported in pattern matching.
List List.map (List, Fn)
List List.reverse (List)
Top : KC3 documentation
Previous : 1.4 Ratio
Next : 1.6 Variable