I think you are finally getting it. Modules ~ Components. Where you and I differ is you think Component = Object. I think the difference is sufficient enough to warrant a complete divorce from the word object.
Linux kernel uses components, not objects.
The ideology of OO is using classes and inheritance to design software. It is an abysmal failure of software engineering, only mediocre managers use OO anymore and pretend visitor pattern is still a thing. All successful OOP projects use components in a disguised form and use a separation between Data (Value Objects, POJOs) and Code (Services). All failed OO projects use classes and take 3 years to deliver even the dumbest of software.
No you are the one not getting it still, components are an area of OOP, usually referred as object based programming.
SELF, BETA and JavaScript don't use classes yet are OOP.
VB originally did not do inheritance and yet it did provide another OOP approach.
Plenty of other languages can be looked upon on SIGPLAN.
Speaking of failed OOP projects, Web DOM, Android, iOS, CUDA, DirectX, LibNMN, LLVM, Metal are indeed such a colossal failure, what were they thinking.
In case you are lacking CS literature I can give you some hints.
Modularity is the very fabric of most engineering disciplines. As opposed to that, OO is a holistic "ideology" about using classes and inheritance to design software. I call it an ideology because despite its abysmal failures people still refer to it in positive terms.
Apart from Android not one software from the list uses inheritance and classes. OO has shown a narrow success in GUI.
In C you don't have modules and interfaces, so what you do is define a struct with pointers. Now you can compile any .c file which follows this interface and dynamically load it into the software.
Python / Perl / Javascript / Ruby ... support this. Remember how much code is resused in the packages downloaded when you do pip install ? Thank modules for that. Not OO. Because of duck typing these dynamic languages don't need interfaces but you can find code snippets that implement it with keywords like pass.
In modular coding you get libraries, extensions and plugins. I find it sad not many people use these terms and prefer to honk OO every time.
Again, OOP is not 100% about inheritance.
It seems some people keep not learning what OOP is all about and relate OOP <===> Java.