News for hackers. Stuff that matters.
Re:You can't make C++ not ugly, but you can't not try (2010) by Someone on Wednesday February 26, 2020 @06:50PM (#22428820)
I’m not aware any exist, but implementations of C++11 can have garbage collection by default. https://isocpp.org/wiki/faq/cpp11-library#gc-abi:

”Garbage collection (automatic recycling of unreferenced regions of memory) is optional in C++; that is, a garbage collector is not a compulsory part of an implementation. However, C++11 provides a definition of what a GC can do if one is used and an ABI (Application Binary Interface) to help control its actions.”

Re:You can't make C++ not ugly, but you can't not try (2010) by deaddodo on Wednesday February 26, 2020 @07:45PM (#22429210)
That's not "by default". The compiler doesn't provide it, the language provides for you as the developer using the language to implement your own (or use a third-party) GC and utilize it. D and Rust both offer the same amenities and are not "garbage collected" languages.
Re:You can't make C++ not ugly, but you can't not try (2010) by kllrnohj on Wednesday February 26, 2020 @08:39PM (#22429529)
> D and Rust both offer the same amenities and are not "garbage collected" languages.

Rust isn't but D is absolutely a garbage collected language. The GC is provided by default and expected to exist. https://dlang.org/overview.html#resource & https://dlang.org/spec/garbage.html

There's a non-GC'd subset of D, though. That would be the BetterC subset https://dlang.org/spec/betterc.html

Re:You can't make C++ not ugly, but you can't not try (2010) by bachmeier on Wednesday February 26, 2020 @09:00PM (#22429657)
I think it's more accurate to say D's GC is expected to exist if you want to use the full language. That's sensible, because the option to use GC makes some things practical that otherwise wouldn't be. You can disable or simply avoid the GC, and you can add @nogc attributes to your code if you want to be certain there won't be any GC allocations. BetterC certainly does guarantee there's no GC, but that's a limited (for now at least) subset of the full language.
Re:You can't make C++ not ugly, but you can't not try (2010) by dfox on Wednesday February 26, 2020 @08:57PM (#22429645)
The quote seems to be about the compiler/environment being permitted to offer GC, ie. permits you to write C++ implementation on top of some GC'd runtime. It does not say anything about you as a language user having enough introspection capabilities to write an GC. As a side note it seems that one can (ab)use smart pointers enough to build essentially working tracing GC on top of that, I've seen that done and well, the performance is horrible, obviously.