[erlang-questions] What does it mean when an evaluated expression is a list that contains the pipe character?
Tue Feb 24 16:52:16 CET 2015
It’s an improper list.
A proper list ends with a tail of .
So to make a proper list you would do:
> [1, 2 | ].
[1, 2, 3].
(This has an implied final cell of an empty list)
> Le 24 févr. 2015 à 15:37, Cole Fichter <cole.fichter@REDACTED> a écrit :
> I came across the example:
> > [1,2|3].
> I understand that the pipe character, |, can be used to append an item to the head of the list or to pop an item off the list in a pattern match.
> But what exactly is happening in the example above? Why does the evaluated expression still contain the pipe?
> My best guess is that the final expression results in a match specification that could be used in a pattern match. However, that seems strange too because if so, we'd be popping two items off the list, which should be illegal.
> Can someone shed some light?
> erlang-questions mailing list
More information about the erlang-questions