On Sat, 17 Apr 2021, 3:51 am , <redrad...@gmail.com> wrote: > Guys, the issue is that I most of the time see that somebody used C++ for > one or two times, did not understand it and left with bad taste ... >
I've got more than a decade and a half of experience with both C++ (dating back to the relatively low quality VC6 C++ runtime) and CPython (getting on towards 20 years now), and the value of adding a C++ runtime to the CPython runtime would be vastly smaller than the value of adding it to an arbitrary C project. If folks want rich data structures in the CPython implementation, we want them using the Python builtin types, not the C++ STL containers. If they want a type hierarchy, we want them using Python types, not C++ types. If they want automatic resource management, then we want them working out how to lift the affected code out of C and into Python (for example, the import system rewrite). In a lot of ways, CPython's C API can be viewed as one of the many competing approaches to enabling "C-with-objects" programming, just like C++. There are certainly nice features in modern C++ that make it easier to scale to large projects than vanilla C code, but the bulk of the CPython code base has never really been vanilla C code - it has always been able to rely on the builtin Python containers and type hierarchy for a lot of the heavy lifting. And it is already a bigger barrier to entry than we would like to ask potential contributors to the lower level code to learn two object models (the Python one and the much simpler C one), let alone if we were to start asking them to learn a 3rd one (C++) that has a deserved reputation as one of the most complex and error prone object models in widespread use. Cheers, Nick. >
_______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-le...@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/SQKSB4OYXL5FPS72BNUJQO2ALRPW6YSX/ Code of Conduct: http://python.org/psf/codeofconduct/