We should probably allow modules to make some dependencies optional, so if they don't exist the module won't fail to load.
Consider this.
Module X has some special functionality, but it requires module Y to function. This functionality however is only minimal to the module's primary functionality (e.g. different style of output?), and the module still works fine without this functionality. The module would have to depend on Y in order to get it to load before X initialises, but since it's not crucial X would be kicked off the stack if Y is not available, while X could still work fine.
We should probably allow modules to make some dependencies optional, so if they don't exist the module won't fail to load.
Consider this. Module X has some special functionality, but it requires module Y to function. This functionality however is only minimal to the module's primary functionality (e.g. different style of output?), and the module still works fine without this functionality. The module would have to depend on Y in order to get it to load before X initialises, but since it's not crucial X would be kicked off the stack if Y is not available, while X could still work fine.