I would say it was a coincidence you were able to port imperative algorithms to Elixir as is. The imperative assignment has always been a source of confusion, especially because different forms would behave differently in exporting variables, so we are glad this behaviour is deprecated.
As stated in the linked issue, some very few warnings will be converted to errors on Elixir 2.0, and this is one of them. That's because implementing this behaviour actually adds a lot of complexity to the compiler. There are some improvements and optimizations that we are currently unable to do because of this feature and they are being help back for Elixir 2.0.
Elixir 2.0 is not coming any time soon but, when it eventually arrives, it is safe to say this "feature" will no longer exist.