Dealing with collections - Enum (and Stream)
The Enum module is one of the main workhorses in your Elixir armoury. This module collects together all the various functions that operate on list (or recursive) structures, or rather Enumerables. If you need a refresher on lists then read the post found here. There is also pretty good information available on the Elixir website - Enumerables and Streams.
The Enum module provides a large amount of functionality which allows us to map, filter, fold, transform and sort any given enumerable - more than we will have space to cover, so we will the most important.