People talk about the fact that the game needs to restart in order to load mods, and that is fine because without the following information that seems a bit “over the top”.
However, as most people should to avoid wars, discussions and needless arguments, they should first try to understand why something happen before criticizing that it happens.
You see, many topics are risen asking for a way to change mod order and mod list as USB, hot swap, and that isnt really a good model for some of us, modders. And when I see some topics talking about it, this mental picture comes to mind:
The reason for it to happen as it does is a design choice to allow us modders to do something most of us do not, but a good number of us do: Mod initialization instructions.
If the mod considered for load would only affect the game AFTER it is initialized, a lot of things mods do would be impossible, because they require instructions of the mod to be inserted while the game is initializing. It is something that shouldnt be done, unless you really know what you are doing, but it is something you are allowed to do regardless.
While it would be possible to “ask” a whole lot from the game to make it optional, as to mods which only replace tables and etc to be changed in “hot swap” while initialization mods be put in a different space, the fact that you need to restart the game does not outway the benefits of making it the way it is as simply as just requiring restart.
The more things you put in the game, the more sources of error you can get. So if there would be a system to selectively load mods just so you can “change mods on the fly” does not really make something that is not so bad be exchange for a system that might be prone to errors and wreck the functionality of many mods.
So, that is most likely the reason it happens as it does, and changing that would not be better than requiring game restart to change mods.
One of the solutions, which require fundamental changes, is to leave those changes for after the base game is almost all loaded, and tie it in a way the mod initialization does not need to be made while the game is loading itself. However it needs a lot of work because a lot needs to be changed. So it is not impossible or out of question that at some point it will be done. But as of now, it is not a matter of just “eh, change this line of code and boom, you can load mods while playing the game even”.