Re: Gnucash c++

2014-08-14 Thread Ted Creedon
Its very possible to begin he transition to C++ by writing C++ header files.

The real advantage of C++ is the ability to take a specification (in my
case the Intel IBIS electronic buffer modeling specification
http://www.eigroup.org/ibis/ibis.htm) and modelling it with  C++ header
files that compile.

This provides an unambiguous representation of a specification allowing
multiple vendors to create data structures that always run correctly. In
addition, the early on representation (i.e is this an iterator or whatever)
and class definition really tie the code writers down.

The particular project I mentioned took a summer grad student 3 months to
create the header files from a complicated spec.

Then the project was cancelled (because it worked)! As a result vendor A's
models might not work with vendor B's simulator...

As difficult as I find C++ to understand I highly recommend its use.

Tedc



On Wed, Aug 13, 2014 at 5:20 PM, John Ralls jra...@ceridwen.us wrote:


 On Aug 13, 2014, at 3:42 PM, Gour g...@atmarama.net wrote:

  On Wed, 13 Aug 2014 11:21:59 -0400
  Derek Atkins warl...@mit.edu wrote:
 
  Ummm.. No.
 
  OK.
 
  The benefit of C - C++ is that except for a few minor issues with
  keywords you can *generally* compile C code using the C++ compiler and
  it will *just work*.
 
  That's clear.
 
  The same cannot be said for Go or any other language.
 
  Btw, Go team converts Go compiler from C to Go. ;)
 
  Please read the FAQ entry on Why don't you (re)write GnuCash in your
  favorite language at http://wiki.gnucash.org/wiki/FAQ
 
  Well, being in #gnucash I got the feeling that there is plan to abandon
  glib, rewrite the engine and possibly even to consider Qt 'cause
  without glib, one is not tied so much to GTK any longer.
 
  Considering that C -- C++ (and taking advantage of it) might be more
  strange than C -- Go which is created to be picked easily by C devs, I
  did throw my suggestion.
 
  Otoh, I believe that C -- C++ is not to be done in order to just
  increase build time.* :-)
 
  * Rob Bike from the Go team says that long build times (~45mins) for C++
  * projects was the time when Go was conceived. ;)
 
  I'm aware of FAQ entry, but was thinking that GC is on the verge of
  possible (partial) rewrite.

 All true, but you missed Derek's point. The advantage of C++ is that one
 can use it with C *in the same file*. That means I can take a C file, tell
 the compiler it's really a C++ file, and compile it almost as-is (that's
 what Aaron's change is about, cleaning up all of the almosts). Then I can
 make a C++ class and move the functionality into it one function at a time,
 converting the C function to a wrapper with C linkage. I can test that
 against the existing C tests, add C++ tests, and move on to the next
 function. The rest of GnuCash can't tell anything's changed; new work now
 has two versions of the API to use depending on whether it's completely new
 or a modification of existing. If it comes time to start the release cycle
 and the conversion isn't complete, we can ship it as-is because nothing's
 broken.

 There other languages like that, but they're all AFAIK tied to particular
 proprietary platforms to some extent: Objective C and Apple, C# and
 Microsoft, Vala and Gtk+. C++ is ISO-standard with an extremely active
 committee.

 Regards,
 John Ralls


 ___
 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


Re: Gnucash c++

2014-08-14 Thread Gour
On Wed, 13 Aug 2014 17:20:51 -0700
John Ralls jra...@ceridwen.us wrote:

 Then I can make a C++ class and move the functionality into
 it one function at a time, converting the C function to a wrapper
 with C linkage. I can test that against the existing C tests, add C++
 tests, and move on to the next function. The rest of GnuCash can't
 tell anything's changed; new work now has two versions of the API to
 use depending on whether it's completely new or a modification of
 existing. If it comes time to start the release cycle and the
 conversion isn't complete, we can ship it as-is because nothing's
 broken.

It sounds good *in theory*, but I'm not so sure you're going to rewrite engine
and get rid of cruft this way.

Still, as a happy GC user, I wish you all success.

For the sake of experiment I briefly tried KMyMoney anticipating that (maybe)
KDE could fill the need, but *very* quickly I was back to xfce/i3/Gnucash. :-)


Sincerely,
Gour

-- 
An intelligent person does not take part in the sources of misery, 
which are due to contact with the material senses. O son of Kuntī, 
such pleasures have a beginning and an end, and so the wise man does 
not delight in them.


signature.asc
Description: PGP signature
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: Gnucash c++

2014-08-14 Thread Geert Janssens
On Thursday 14 August 2014 10:04:55 Gour wrote:
 On Wed, 13 Aug 2014 17:20:51 -0700
 
 John Ralls jra...@ceridwen.us wrote:
  Then I can make a C++ class and move the functionality into
  it one function at a time, converting the C function to a wrapper
  with C linkage. I can test that against the existing C tests, add
  C++
  tests, and move on to the next function. The rest of GnuCash can't
  tell anything's changed; new work now has two versions of the API to
  use depending on whether it's completely new or a modification of
  existing. If it comes time to start the release cycle and the
  conversion isn't complete, we can ship it as-is because nothing's
  broken.
 
 It sounds good *in theory*, but I'm not so sure you're going to
 rewrite engine and get rid of cruft this way.
 
 Still, as a happy GC user, I wish you all success.
 
 For the sake of experiment I briefly tried KMyMoney anticipating that
 (maybe) KDE could fill the need, but *very* quickly I was back to
 xfce/i3/Gnucash. :-)
 
Off topic for this thread - I'd love to hear what were the things you liked 
about KMyMoney 
and what you found missing. Can I ask you to share your experience in another 
e-mail thread 
on gnucash-user ?

It would IMO be very valuable feedback for gnucash to learn about it's 
strengths and 
weaknesses.

Feel free to mention I asked about this if you start such a topic.

Thanks,

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


Re: Cron gnucash-docs@code /home/gnucash-docs/scripts/build-docs.sh

2014-08-14 Thread Derek Atkins
The gnucash-docs package has been failing to build for the last two
nights:

(Cron Daemon) gnucash-d...@code.gnucash.org writes:

 failed building gnucash-docs

I looked into this more closely today and found the following.  Could
someone look into it, please?

Thanks,

-derek

make[2]: Entering directory `/home/gnucash-docs/gnucash-docs/guide/C'
/bin/sh /home/gnucash-docs/gnucash-docs/install-sh -d gnucash-guide; \
for file in gnucash-guide.xml; do \
/usr/bin/xsltproc   \
  -o gnucash-guide/ \
  --param use.id.as.filename 1 \
  --stringparam chunker.output.encoding UTF-8  \
  ../../xsl/general-customization.xsl ./$file; \
done
ch_import_business_data.xml:344: parser error : Opening and ending tag 
mismatch: para line 337 and sect1
  /sect1
  ^
ch_import_business_data.xml:347: parser error : Opening and ending tag 
mismatch: sect1 line 318 and chapter
/chapter
  ^
ch_import_business_data.xml:348: parser error : Premature end of data in tag 
chapter line 15

^
ch_import_business_data.xml:348: parser error : chunk is not well balanced

^
./gnucash-guide.xml:445: parser error : Failure to process entity chapter18
chapter18;
   ^
./gnucash-guide.xml:445: parser error : Entity 'chapter18' not defined
chapter18;
   ^
unable to parse ./gnucash-guide.xml
make[2]: *** [convert-html] Error 6

-- 
   Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
   Member, MIT Student Information Processing Board  (SIPB)
   URL: http://web.mit.edu/warlord/PP-ASEL-IA N1NWH
   warl...@mit.eduPGP key available
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: Cron gnucash-docs@code /home/gnucash-docs/scripts/build-docs.sh

2014-08-14 Thread Geert Janssens
On Thursday 14 August 2014 15:17:33 Derek Atkins wrote:
 The gnucash-docs package has been failing to build for the last two
 nights:
 
 (Cron Daemon) gnucash-d...@code.gnucash.org writes:
  failed building gnucash-docs
 
 I looked into this more closely today and found the following.  Could
 someone look into it, please?
 
Done.

There was a typo in one of the most recent patches (para/ which should 
have been /para).

The fix is syncing to the main repository while I'm writing this.

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