The official documentation sucks and does nothing to illustrate how to use it in a real setting. I've tried to understand what it does and how it works about once a month for the past four months but I still don't get it.
http://elixir-lang.org/blog/2016/07/14/announcing-genstage/
Hopefully I can understand it soon, and further cement my understanding by writing a real example for people to learn from. It sounds very powerful and useful but damned if I know how to use it lol.