News for hackers. Stuff that matters.
Re:Rust/WinRT Public Preview by pjmlp on Thursday April 30, 2020 @03:24PM (#23035006)
Yes it is.

After the whole political disaster that was Longhorn, the Windows team decided to rebuilt Longhorn ideas, originally based on .NET, and redo them with COM.

So while many outside Windows have considered COM dead, actually since Vista all major Windows APIs have been provided as COM interfaces, the large majority of Win32 surface has been frozen since Windows XP.

With WinRT/UA/UAP/UWP they have gone back to the roots, while pursuing this idea one level up.

Basically they replaced COM type libraries with .NET Metadata, added support for generics, structured data types and implementation inheritance, bringing it to what .NET would have been like if they did not decided to copy Java.

So while the implementation of this reboot has been somewhat clusmy, COM is not going anywhere on Windows.

Also, this isn't a Windows only thing, Linux has gathered around DCOP, Android has AIDL, Fuchsia FIDL, macOS/iOS has XPC, then there is gRPC and plenty of other variants.

Re:Rust/WinRT Public Preview by amaranth on Thursday April 30, 2020 @06:28PM (#23036974)
I think the most similar thing to WinRT on Linux would be GObject Introspection since the main point appears to be a way to somewhat automatically surface the platform API in multiple languages using language-specific idioms. D-Bus is instead for RPC and events, which I guess COM also gets used for?
Re:Rust/WinRT Public Preview by pjmlp on Friday May 01, 2020 @01:45AM (#23039439)
I guess you are kind of right, then it would be a mix of GObject, KParts and D-BUS then.

As for COM, yes there are multiple models, in-process, external process and across the network (with DCOM).

GObject and KParts would be the in-process variant, with D-BUS for the other execution models.

Re:Rust/WinRT Public Preview by codys on Thursday April 30, 2020 @03:40PM (#23035192)
For linux I believe you mean D-Bus instead of DCOP. (that said, it's largely similar in concept)
Re:Rust/WinRT Public Preview by pjmlp on Thursday April 30, 2020 @05:09PM (#23036158)
You are right, that was the old protocol.
Re:Rust/WinRT Public Preview by KeBugCheckEx on Thursday April 30, 2020 @04:50PM (#23035951)
Historical note: first versions of .NET were called "COM+ 3.0".
Re:Rust/WinRT Public Preview by lukeh on Friday May 01, 2020 @08:46AM (#23041433)
Well, even before XPC there was Distributed Objects. In the mid-90s NeXT had a bridge between COM and DO called D'OLE, which remoted COM before Microsoft did. Of course, that didn't really take off, but it was a great example of how flexible a dynamic runtime can be. (They also had a lot of very smart developers.)