That's not hot code reloading in the erlang sense. Hot code reloading is having a NamedModule be replaced by NamedModule on the fly and have all of the processes executing functions in that module's (global) namespace respect the new binary code in accordance to the well-defined hot code reloading API that erlang has established, followed by kicking out the old namespace when it's dependent processes have drained of it.
This is not trivial considering that different processes may be holding onto that code for different lifetimes, and all must be managed sanely.
This is not trivial considering that different processes may be holding onto that code for different lifetimes, and all must be managed sanely.