2022-01-15 GnuCash IRC logs

00:55:43 *** bertbob has quit IRC
01:05:50 *** bertbob has joined #gnucash
01:05:50 *** ChanServ sets mode: +v bertbob
01:23:27 *** fell has quit IRC
01:24:17 *** fell has joined #gnucash
01:24:18 *** ChanServ sets mode: +o fell
01:26:14 *** mauritslamers has quit IRC
01:28:55 *** mauritslamers has joined #gnucash
01:28:55 *** ChanServ sets mode: +v mauritslamers
01:40:34 *** frakturfreak1 has quit IRC
01:42:11 *** storyjesse has joined #gnucash
01:54:51 *** frakturfreak1 has joined #gnucash
02:05:40 *** gjanssens has joined #gnucash
02:05:40 *** ChanServ sets mode: +o gjanssens
03:16:01 *** chris has quit IRC
03:57:51 *** sbluhm has joined #gnucash
04:09:37 *** chris has joined #gnucash
04:09:37 *** ChanServ sets mode: +v chris
04:09:41 *** gncbot sets mode: +o chris
04:24:13 *** Mechtilde has joined #gnucash
04:38:41 *** Unhammer has quit IRC
04:40:43 *** fabior has joined #gnucash
05:27:39 *** fabior has quit IRC
05:53:23 *** sbluhm has quit IRC
06:11:11 <chris> what's the big issue about C++ templates? are they the C++ equivalent to lisp macros?
06:18:33 *** sbluhm has joined #gnucash
06:36:44 *** User_ has joined #gnucash
06:46:34 *** mikee has quit IRC
06:46:57 *** mikee has joined #gnucash
06:54:27 *** paul has joined #gnucash
07:17:04 *** sbluhm has quit IRC
07:34:30 *** sbluhm has joined #gnucash
07:56:56 <gnucashout> They're turing complete and a pain in the ass.
07:59:26 *** David has quit IRC
07:59:37 *** David has joined #gnucash
08:00:45 *** sbluhm has quit IRC
08:45:08 *** sbluhm has joined #gnucash
08:53:57 <fell> gnucashout, perhaps you should ask on the user mailing list. See https://wiki.gnucash.org/wiki/Mailing_Lists#User_Lists
08:54:26 <fell> I never used QB.
09:03:52 *** sbluhm has quit IRC
09:16:58 *** storyjesse has quit IRC
09:20:54 *** Jimraehl1 has joined #gnucash
09:21:23 *** Jimraehl1 has quit IRC
09:50:43 <chris> jralls: #1248 ready ...?
09:55:25 <chris> it still does some unwanted copying cpp objects around, which is unwanted. if the original PeriodDataVec was retrieved in #L522 then #L524 wouldn't be necessary.
09:59:20 *** sbluhm has joined #gnucash
10:06:16 *** CDB-Man_ has quit IRC
10:09:32 *** CDB-Man has joined #gnucash
10:09:32 *** ChanServ sets mode: +v CDB-Man
10:21:01 <Simon> like anything else in a language, if you use C++ templates sensibly then they're fine
10:22:22 <Simon> they're useful to avoid writing what would otherwise be duplicate code, like the standard containers
10:23:31 *** David has quit IRC
10:23:41 *** David has joined #gnucash
10:42:04 *** sbluhm has quit IRC
10:44:20 <chris> c++ T = lisp macros then
10:44:35 *** David has quit IRC
10:44:44 *** David has joined #gnucash
10:56:31 *** sbluhm has joined #gnucash
11:11:30 *** sbluhm has quit IRC
11:27:14 *** sbluhm has joined #gnucash
12:01:09 *** Pegasus_RPG has quit IRC
12:01:18 *** mydogsnameisrudy has joined #gnucash
12:02:49 *** mydogsnameisrudy has quit IRC
12:05:19 *** David has quit IRC
12:05:29 *** David has joined #gnucash
13:17:01 *** Hamaryns has joined #gnucash
13:17:01 *** ChanServ sets mode: +v Hamaryns
13:36:24 *** field^Mop has joined #gnucash
13:40:45 *** sbluhm has quit IRC
13:50:24 *** field^Mop has quit IRC
14:06:18 *** kcin has joined #gnucash
14:10:37 *** sbluhm has joined #gnucash
14:20:50 *** kcin has quit IRC
14:33:59 *** kcin has joined #gnucash
14:47:18 *** Hamaryns has quit IRC
15:06:22 *** kcin has quit IRC
15:23:29 *** kcin has joined #gnucash
15:27:49 *** lagash has joined #gnucash
15:27:49 *** ChanServ sets mode: +v lagash
15:41:05 *** bertbob has quit IRC
15:42:49 *** bertbob has joined #gnucash
15:42:49 *** ChanServ sets mode: +v bertbob
16:37:12 *** gjanssens has quit IRC
17:00:19 *** sbluhm has quit IRC
17:05:43 *** kcin has quit IRC
17:18:57 *** Bambuzel has joined #gnucash
17:18:57 *** ChanServ sets mode: +v Bambuzel
17:20:36 *** Bambuzel has quit IRC
17:52:21 *** alt_mikee has joined #gnucash
17:52:24 *** mikee has quit IRC
18:03:55 <jralls> chris, templates are for writing what's called generic code. std::vector is an example you've used. In the Standard Library it's a template. When you create e.g. a std::vector<std::string> the compiler uses the template code to create and compile a constructor for you. If you then call foo.push_back("bar") the compiler will use the std::vector::push_back() template to create a function that takes a std::string argument and inserts it at the end of
18:03:55 <jralls> the vector.
18:05:56 <jralls> I don't know enough about the guts of scheme macros to understand how they work, but Scheme is already loosely typed so there's less need for generics.
18:08:09 <jralls> As gnucashout said the template language is turing complete so you can also use templates to do work at compile time to compute a run-time constant. That's called "template metaprogramming".
18:16:25 *** alt_mikee has quit IRC
18:19:00 *** mikee has joined #gnucash
18:20:43 *** linas has joined #gnucash
18:20:43 *** ChanServ sets mode: +v linas
18:21:30 *** David has quit IRC
18:21:40 *** David has joined #gnucash
19:02:24 *** guak has joined #gnucash
19:20:07 *** guak has quit IRC
21:30:31 *** CDB-Man has quit IRC
21:32:41 *** CDB-Man has joined #gnucash
21:32:41 *** ChanServ sets mode: +v CDB-Man
21:45:46 *** David has quit IRC
21:45:56 *** David has joined #gnucash
22:28:55 *** User_ has quit IRC
22:41:16 *** paul has quit IRC
23:17:55 *** Pegasus_RPG has joined #gnucash