[GNC-dev] 4.0 and C++?

jean laroche ripngo at gmail.com
Wed Jul 8 23:54:26 EDT 2020


Ah OK I see, I think I misunderstood originally I though the new code 
was around the corner (and I was wondering who was doing all this insane 
porting work).
The thing that seems tricky is, fixing bugs obviously must be done in C 
mostly. For new features, it's hard to separate them enough that they 
can be written as separate C++ files no?
So what needs to be done, I guess, is to go ahead and little by little 
convert every little piece of GC? Seems daunting.

J.


On 7/8/2020 8:29 PM, John Ralls wrote:
> It's a desired trend alright. We push for new code to use modern C++ (meaning C++ 11 idioms and with more emphasis on generics than OO), but not every contributor is up to writing that. *But* GnuCash is over a million lines of C code and we expect it will take many years and many development cycles to convert everything.
>
> There's another consideration: Our GUI is Gtk, and while there's a C++ wrapper for it called gtkmm we don't use that much. We also have bindings created via SWIG, and while SWIG was designed for C++ and works reasonably well with it it takes a fair amount of care to get it to work correctly. To deal with those the C++ modules we've created are wrapped in C to ease portability.
>
> Regards,
> John Ralls
>
>
>> On Jul 8, 2020, at 6:00 PM, Christopher Lam <christopher.lck at gmail.com> wrote:
>>
>> IIUC this is a desired trend, waiting for good pair of hands!
>>
>> On Thu, 9 Jul 2020, 12:33 am Jean Laroche, <ripngo at gmail.com> wrote:
>>
>>> Maybe I mis-remember, but I thought that 4.0 would be the version where
>>> we switch from using C to using C++ + boost etc for most of the code in
>>> GC...
>>> Was I confused? Is there still a plan to do this rewrite? If so how far
>>> along is it, and when will it be folded into the current branches?
>>>
>>> J.
>>> _______________________________________________
>>> gnucash-devel mailing list
>>> gnucash-devel at gnucash.org
>>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>>>
>> _______________________________________________
>> gnucash-devel mailing list
>> gnucash-devel at gnucash.org
>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel



More information about the gnucash-devel mailing list