[libre-riscv-dev] extremely busy crowdsupply update started

Luke Kenneth Casson Leighton lkcl at lkcl.net
Sat Mar 28 17:13:28 GMT 2020


On Sat, Mar 28, 2020 at 4:45 PM Jean-Paul Chaput
<Jean-Paul.Chaput at lip6.fr> wrote:

>   The main reason here is still the lack of time. But there may be
>   another problem. My python interface allow to mirror in Python
>   the C++ function overload, but Python only allows one set of
>   parameters, is that true or I'm lagging on Python features again?
>   So how to describe a function with more than one parameter set?

ah.

right.  with all the other things, i am going to focus on this one.
it is a major, serious failing in the ENTIRETY of the free software
community to COMPLETELY fail to comprehend this one, absolutely
critical thing.

microsoft DCOM got it right (co-classes).  as a result i was the ONLY
PERSON IN THE WORLD - i checked, emailing the IEXPLORE developer and
he kindly replied - to use the full power of IEXPLORE.DLL DCOM
bindings from python-comtypes.  and by "full power" i mean "all 300
objects, all 2,000+ functions, and all 20,000 properties".

the only reason that was possible - including the c++ functions which
had multiple overloads - was because of a property of DCOM called
"co-classes".

when the Mozilla Foundation decided "oh!  we!  know!  we!  will copy!
DCOM!  and call it! XPCOM!  it'll be great!" they did NOT copy
co-classes, and consequently fucked EVERYONE around for the next 15
years who tried to develop third party xulrunner applications.

even activestate - a major supporter of firefox technology- eventually
went "fuckit" and used webkit for their products.

eventually, with "everyone abandoning xulrunner", the Mozilla
Foundation further fucked everyone about by *abandoning* xulrunner
entirely, themselves, despite the fact that yes, there were people
actually using it.  this actually resulted in a hard fork of xulrunner
(which, sadly, does not have co-classes added to it).

there is actually one feature-complete implementation of microsoft
DCOM... get ready for this... in wine!  yes, really: wine has a
*complete* implementation of DCOM, to the point where you can actually
install python and python win32 comtypes *under Wine* and actually use
it!

however the barrier to entry when compiling applications using the
wine-under-linux system (executables get named MYAPP.EXE.so and you
then have to run that using winetricks....) would just blow the tops
of already-overloaded ASIC engineers overheated heads.


so whatever you pick, Jean-Paul, please be aware of two things:

1. this is a HARD problem, not properly acknowledged or recognised by
the open source community, and it's been pissing me off for 20 years.

2. whatever you choose to do, please for god's sake don't choose
wrong.  the amount of pain that you will encounter will make boost
look like a sunday christmas dinner and birthday party all rolled into
one.

so if you *have* successfully mirrored multiple c++ function-overloads
into python, GREAT!  congratulations, you are amongst an absolute tiny
minority of programmers who have comprehended this, where the majority
are in systematic pathological failure and mental melt-down.

l.



More information about the libre-riscv-dev mailing list