Ralph Corderoy wrote:
Hi Paul,
that's a knee-jerk reaction.
Very true. A regurgitation of a long-held view.
bert hubert at powerdns found a subset he can live with, and ways to
enforce it. basically there are no operators overloaded and no
subclassing.
I've struggled to find something on this, e.g. a guide to contributing
to PowerDNS's source, or Bert talking about it. I did find Orthodox C++
that has a list of other subsets at the end.
https://gist.github.com/bkaradzic/2e39896bc7d8c34e042b
i've asked bert for references, which i shall report back to here.
he wanted new(), and methods, and garbage collection.
GC as in https://en.wikipedia.org/wiki/Smart_pointer#Features ?
So analyse and switch from C pointers to the various C++ kinds?
i didn't even though about smart/unique/auto pointers. what i was
thinking of is that one of the smartest people i ever worked with, was
working on incremental generational mostly-copying garbage collection
when C++ came out, and in 1989, wrote this:
www.hpl.hp.com/techreports/Compaq-DEC/WRL-TN-12.pdf
in 2009 or so, there was a battle royale about C++ GC in stackexchange:
https://stackoverflow.com/questions/147130/why-doesnt-c-have-a-garbage-collector
so while the smart pointers you referenced in wikipedia appear to be a
feature of C++11, the GC i was thinking about for C++ happened in 1989.
note: because valgrind finds hundreds of thousands of runtime anomalies
in even a trivial libcurl application, and because the suppression file
syntax for valgrind doesn't permit me to say "if it comes from libcurl
just ignore it", i'm currently at wit's end in verifying my heap memory
management in dnsdbq (https://github.com/dnsdb/dnsdbq). any ideas welcomed!
--
P Vixie
--
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers