I've always wanted the opposite of this. I'd like to be able to create a new object C and then drag it over a connection between A and B and have the new object C inserted in between, i.e. A would now be connected to C and then C to B.
Deleting C would cause the reconnect as described earlier in this thread..
I have many scenarios where such an operation would would be incredibly time saving
Of course there can be multiple ports to choose from but that could be handled quite easily.
For example, the default would certainly be to use the first inlet and outlet (and that is most often what would be needed) but I canimagine keyboard shortcuts that would quickly move the connection from one port to the next, sequentially.
Imagine how quickly one could build (and change) math operations with this mechanism, for example.
This process is completely orthogonal to the use of abstractions and by the way, the mechanism would be very helpful when creating abstractions and modifying them in the first place.