You can use IEx
require IEx
value = {:some, :erlang, :value}
IEx.pry
If you start this program with for example iex -s program.exs (or iex -S mix for a project) you’ll be asked if you want to allow prying into this code when it is reached and value will be available for you for inspection.
You can also just do print debugging using IO.inspect allowing you to output basically any erlang data structure.