Also fun fact: Windows uses a lot of COM Interfaces for API, which in my opinion often makes developing for Windows a better experience, than developing for Linux. Rust does not have anything OOP related by default, and are often emulated with macros instead, like in C.
I work for a company developing software for Windows and deal with COM all the time. How do you communicate across dynamic libraries and languages in Linux?
Linux usually just uses C API, most of which reads horribly. Libevdev is quite notorious for using files and the docs not telling you that the reading is blocking. Some additional things use C++ classes though.
Will this finally be the end of Windows?
Also fun fact: Windows uses a lot of COM Interfaces for API, which in my opinion often makes developing for Windows a better experience, than developing for Linux. Rust does not have anything OOP related by default, and are often emulated with macros instead, like in C.
Rust has traits and reference counting which map nicely to COM objects.
By the way, the Linux Kernel is OOP. That’s a good choice for things like queues, file systems, and device drivers.
I work for a company developing software for Windows and deal with COM all the time. How do you communicate across dynamic libraries and languages in Linux?
Linux usually just uses C API, most of which reads horribly. Libevdev is quite notorious for using files and the docs not telling you that the reading is blocking. Some additional things use C++ classes though.
Could you provide a link to the documentation? It’s strange that it’s so barebones.