https://serokell.io/blog/parser-combinators-in-elixir
Check out this post by Serokell.