I understand the difference between runtime and compile-time and how to differentiate between the two, but I just don\'t see the need to make a distinction between compile-t
At compile time you enables contracts/api that you are expected from your dependencies.
(eg: here you just sign for a contract with broadband internet provider)
At run-time actually you are using the dependencies.
(eg: here you actually are using the broadband internet)