My Wish List

Tom Browder tom.browder at gmail.com
Tue Aug 8 09:00:47 EDT 2006


On 8/8/06, Conrad Canterford <conrad at mail.watersprite.com.au> wrote:
...
> Unfortunately, that would be an absolutely enormous amount of work (any
> of them).
...
> Converting to C++ might sound easy, but since you're on the -devel email
> list I'm assuming you know just how much code there is in this program
> (or can find out). Have a look. There's a lot of it. Conversion is not
> going to happen unless the developers are given a really big imperative
> for why that have to. (sorry).

Actually, converting to C++ is not that bad...I made a count of
gnucash code lines and got about 396,000 lines of *.c.  I have a
13-year-old project with about 150,000 lines of *.cc that was
originally *.c that I converted in one swoop about eight years ago.
Then I gradually converted to new C++ features over time.  You don't
have to do everything at once (after the initial conversion which I
would volunteer to do).

The advantages are many:  an international standard (and support) for
common structures like containers and strings, templates, classes,
namespaces, etc.  And speed--many articles rebuff the idea that C++ is
slow.

> If I remember correctly, gnucash used to have a qt interface - but that
> didn't work when I first changed to gnucash 6 or so years ago. It would

Still, a cross-platform GUI using one developers like might be a
long-tem project.  In the meantime, a command-line version would
satisfy much of my needs (I'm not sure if gnucash has that now).

> Elimination of scheme/guile is about the most likely thing you have
> suggested. I know several of the devs would like to see much of the
> scheme removed. I doubt that we'll see it all removed in the next
> several years, however.

Sounds like the next step after C++ conversion.

> Add to all this the fact that the majority of the developers are linux
> users who have no interest in converting to Windows, and I would say
> that the probability of this happening is basically zero.

I don't think of it as a conversion, it is moving the code toward a
cross-platform program that, I guarantee, will increase interest and
support.

(See the brlcad project on sourceforge.  It has had increased support
after adding a cross-platform capability.  I am sure there are more
and better examples.)

Thanks for listening.

-Tom


More information about the gnucash-devel mailing list