Re C++, you and your professor are at least 10 years out of date. Since the 
publication of the C++11 standard C++ has become easily the most modern and 
versatile language available with the possible exception of Rust. Unlike Rust 
it is an ISO standard language with one of the largest and most active 
standards committees in the world and is consistently near the top of languages 
both in projects using it and programmers skilled in it. C on the other hand is 
1970s technology and while they do have their own standards committee they're 
publishing new versions only every 10 years (to C++'s 3 year cycle) and most of 
the changes in the last cycle came from C++.

As for "back into C++", you have that backwards too. Much of GnuCash was 
originally written in Scheme, but the early developers realized that Scheme 
isn't a very good language for serious programming. There's a section of the 
Guile manual titled "Why Scheme is a better language for hacking". Well, 
hacking is fine for quick-and-dirty-use-once-or-twice code but as you no doubt 
know it's a terrible idea for code that will be distributed to ordinary users 
or maintained over decades. The options rewrite is the next step in our 
long-term goal of completely removing Scheme from GnuCash.

Modularity is good, yes. Unfortunately not everyone writing GnuCash code has 
understood that and Linas's careful design has become a rather large bowl of 
spaghetti code. Fixing that is another long term goal. 

Regards,
John Ralls

> On Sep 6, 2021, at 1:54 AM, flywire <flywi...@gmail.com> wrote:
> 
> I recall recent discussion about separating the main app and reporting.
> App, database and reporting modules seem to offer a lot of scope for
> non-traditional integrations I've raised before. One of my repos uses ocr
> to load bank statements, and there's an ever-expanding range of smart
> analysis tools.
> 
> I'm concerned John's described pulling report functionality back into c++.
> 
> It's a while since I worked as a programmer but I've been involved in a
> broad range of system development. I was after a c++ developer a couple of
> years ago and a university lecturer told me they'd stopped teaching it a
> few years earlier. He said to concentrate on the functionality and let the
> implementation move with the technology. M a y b e  GnuCash is. The
> application doesn't need to run on 1990 technology anymore.
> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel@gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel

_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to