|
From: Eric E. <eri...@re...> - 2026-05-07 08:05:40
|
Hi Mike, I took a closer look at pybind, I struggle to follow. - The C++ code in qlo, you would replace that with python? - Instead of autogenerating that code in C++, gensrc would autogenerate it in python? And you would leave the rest of the build - ObjectHandler, the bindings to the Excel C API, etc. - unchanged? So the motivation would be that coders extending QuantLibXL could look at python instead of C++? That seems like a lot of pain for not much gain. The fact that people who want to extend QuantLibXL need to know C++, this does not strike me as much of a barrier. And the task of adding new QuantLib functions to QuantLibXL is probably much easier now using agents. Regards, Eric On 5/7/26 2:02 AM, Mike Kipnis wrote: > Hi Eric, > > Yes — backward compatibility would be fully maintained. > > The idea is to keep the existing QuantLibXL interface unchanged and only > replace the internals: replace QuantLib/C++ calls in QuantLibAddin/qlo > with QuantLib/Python calls, and replace the C++ bindings in gensrc with > pybind. > > From the Excel/user perspective nothing changes, so existing > spreadsheets should continue to work as-is. > > I will put together some pybind/C++ examples over the weekend to show > how this would work in practice. > > Regards, > Mike > > >> On May 6, 2026, at 5:05 AM, Eric Ehlers <eri...@re...> wrote: >> >> Hi Mike, >> >> Many thanks for your recommendations. There is no doubt that the >> design of QuantLibXL could be improved. One advantage of the existing >> design is that it uses the Excel C API, last time I checked, there was >> still no faster way to interface with Excel. Even if we were to stick >> with the Excel C API, there are probably better ways to go about it, >> and I also think that you could make a case for migrating to pybind. >> >> One goal that I have always had for QuantLibXL is to maintain backward >> compatibility. Your proposed approach, would it maintain the same >> interface? Otherwise I would consider it a new project, something >> that could live alongside the existing QuantLibXL. >> >> Regards, >> Eric > |