Erlang / Erlang Basics Interview questions
What is the difference between a list and a tuple?
Both are ordered Erlang data structures, but they're built and used very differently.
| List | Tuple |
| Variable length; a linked chain of head/tail cons cells. | Fixed length, decided at creation; contiguous positions. |
Cheap to prepend to ([X|List]); processed recursively. |
Cheap to access any known position directly, e.g. element(2, T). |
| Good for sequences of unknown/variable size. | Good for fixed-shape records like {ok, Value}. |
A rule of thumb: if you don't know how many elements you'll have, or the count will vary, use a list. If the shape and number of fields is fixed and known up front, a tuple (often tagged with a leading atom) is the better fit.
More Related questions...