Changing to C++

John Ralls jralls at ceridwen.us
Mon Jun 5 00:48:24 EDT 2017


> On Jun 4, 2017, at 8:59 PM, Leon Taylor <leontaylor476 at gmail.com> wrote:
> 
> Hi all,
> 
> I recently saw the blog post on how the project is going to be re-written
> in C++.
> I understand that I am not to decide where the project goes or what happens
> to it, but if it is not to late, I personally think that we should re-think
> making the change to C++.
> I understand the GObject is a pain in the ass to use and learn, and that
> C++ is a better choice for developing desktop software (not to mention that
> there more libraries available for C++), but I (personally) think that
> re-writing the source code is counter-productive.
> Many people do not want to use C++, as it is very complex and hard to use
> properly. I know that you said it would be easier for people to learn C++
> than GObject, but I disagree. Many people know C and how to use it
> PROPERLY, whereas only experienced C++ developers can use it properly. I
> think the only thing changing to C++ would do is scare off contributors.
> This is just *my *opinion, so just take it with a grain of salt. Please
> tell me if I have misunderstood something or taken something the wrong way.
> 

Leon,

What you misunderstand is that it's even harder to write correct GObject than C++ *and* there is a much smaller pool of developers who know how.  There are no development tools that can statically analyze it, no compiler warnings for it, and so on. It's firmly bound to the Gnome ecosystem, which means that in order to eventually support platforms that Gnome doesn't--meaning anything mobile--it has to go.

One more thing: GnuCash's use of GObject is screwed up, so the code has to be rewritten anyway.

Regards,
John Ralls




More information about the gnucash-devel mailing list