Сори, но ничего общего не наблюдаю. Возможности тут примерно те же, что в Сях с динамическими либами.
В ерланге я могу заменить любой модуль на лету, в том числе тот который сейчас активно используется другими модулями. Все это без остановки системы.
Так и в ББ же можно. Но у этого действия (выгрузки) есть одно логичное следствие - если выгружают код, который исполнялся, то исполнение прервётся. Если данные принадлежат модулю (а в момент исполнения они принадлежат модулю), то они теряются.
Горячая замена кода (модуля) это не просто механизм загрузки и выгрузки модуля, но и механизм миграции со старого модуля на новый. В Posix (в Си соответственно) и в ББ первые два есть. В Си это dlopen и dlclose соответственно. Но нет механизма миграции. Следовательно на лету менять код можно будет лишь тот который специально для этого был приспособлен. Произвольный модуль не заменить на бегу.
В erlang'e я могу заменить на бегу любой модуль. Просто после подгрузки нового модуля везде где возможно начнут вызываться функции из нового модуля.
Вообще для такой процедуры миграции необходимо иметь возможность держать в памяти одновременно несколько версий, ну или хотя бы две, данного модуля - старую и новую версию.
Когда я создавал эту тему, я думал, что возможно подобный механизм и в ББ уже реализован.