Runtime dynamic binding:
iex(4)> arg = "Hello"
"Hello"
iex(5)> IO.puts(arg)
Hello
:ok
iex(6)> Kernel.apply(IO, :puts, [arg])
Hello
:ok
iex(7)>
Runtime dynamic binding:
iex(4)> arg = "Hello"
"Hello"
iex(5)> IO.puts(arg)
Hello
:ok
iex(6)> Kernel.apply(IO, :puts, [arg])
Hello
:ok
iex(7)>