Yes, you&#x27;ve got the concepts and implementation correct.<p>The exact strategy for reloading (wait for all at once, load whatever is ready, how long to wait, etc), left as an exercise for the reader. For dev, I use a function in the shell that loads everything that changed (no soft purge), for prod, i have a function that goes in order and checks soft purge, then loads (if the 2nd module doesn&#x27;t soft purge, it will have already loaded the first module, but it will stop before trying the 3rd).<p>With most things in gen_server&#x27;s, there&#x27;s not a lot of opportunity for lingering code, but sometimes it happens.