On 10/05/2024 16:45, Peter Dimov via Boost wrote:
Niall Douglas wrote:
Did you (as in, you, Ben Craig, or one of the others) ever write this up in some form? I would certainly be interested in reading about it.
My memory is that it was mostly written up in private email exchanges amongst a small group. I wasn't always included in the discussion, either, so I only saw parts of the debate and design. I do remember seeing at one point a private github repo with some code, and me writing an email saying something like "no no no that's all wrong, do X, Y and Z instead" :) In any case I'm the wrong person to ask about this, as I wasn't invited into the main group who did most of the running. Ben I think would be a much better bet. I'll CC him there now to this.
I remember your having a paper about Microsoft COM, but if memory serves, I found it a bit difficult to understand. In particular, it wasn't quite clear what exactly was being proposed; as in, what needs to change, in language or library, and how.
That was a very, very long time ago. That was the thing I built for BlackBerry while I was working there. Basically a modernised Microsoft COM. Fully working implementation. Would have solved lots of future C++ ABI upgrade problems in BB10. Unfortunately, my colleagues at BlackBerry at the time reacted very similarly to how COM was reacted to in Microsoft when it was presented. COM only became what it did because a senior manager in Office went ahead and adopted it anyway despite the negative reaction. And that forced everybody else to use it, and before you knew it, everything on Windows had to be COM. And then the COM designers were being showered with accolades and given cheques of cash bonuses in gratitude. But yes you're right, I do think Microsoft COM is underrated and if C++ adopted it into the language, it would make a very substantial improvement to C++. Politically impossible, unfortunately. Gaby dos Reis tried to effectively propose a modernised COM for C++ Modules originally, and to say that went down like a lead balloon would be putting it mildly. Niall