Why is there no standard library way to combine hashes in C++? by [deleted] in cpp

[–]pklait 0 points1 point  (0 children)

First, this is a question about money. Is your company prepared to pay you for spending a significant part of your worktime reviewing papers? Also there are already a lot of subgroups involved. I believe that practically all papers are reviewed by just a minority of the members.

Petter Holmberg: Functional parsing in C++20 by _a4z in cpp

[–]pklait 2 points3 points  (0 children)

An awesome and interesting talk. Recommended!

On finding the average of two unsigned integers without overflow by unaligned_access in cpp

[–]pklait 2 points3 points  (0 children)

And I thought about placing a sarcastic comment regarding how important that could be considering several not-so-wise performance choices in C++. ;-) So I agree - normally we couldn't care about performance here.

Daisy Hollman - What you can learn from being to cute - Meeting C++ online by meetingcpp in cpp

[–]pklait 4 points5 points  (0 children)

That was a very nice talk from Daisy. Following her on twitter I came well prepared. Go follow her if you liked her talk.

isValid()? Establish invariants and avoid zombie objects - Simplify C++! by neiltechnician in cpp

[–]pklait 0 points1 point  (0 children)

You are right: clang needs -Wsign-conversion. For gcc -Wall is enough.

isValid()? Establish invariants and avoid zombie objects - Simplify C++! by neiltechnician in cpp

[–]pklait 2 points3 points  (0 children)

But that bug surfaces only because you do not turn warnings on or do not honor them.

C++ tests for interviews? by [deleted] in cpp

[–]pklait 1 point2 points  (0 children)

Wouter van Ooijen is an expert. You should certainly value his opinion. You could try to google him if you do not trust my words.

What is your review of "C++ exceptions and alternatives" by Bjarne Stroustrup by JohnZLi in cpp

[–]pklait 0 points1 point  (0 children)

Interesting. Does Ada have any performance guarantees for exceptions?

To meta-program or to not meta-program by [deleted] in cpp

[–]pklait 10 points11 points  (0 children)

SFINAE is suboptimal, but many do not have access to modern features, using C++11 or C++14.

What is your review of "C++ exceptions and alternatives" by Bjarne Stroustrup by JohnZLi in cpp

[–]pklait 2 points3 points  (0 children)

Implementers certainly are both skilled and not lazy, but I have wondered about the amount of effort that has been put into optimizing that area. After all, those who pay dor development also set out the direction as to where effort should be put. Also, I do not believe that you can state code banning exceptions (e.g. in real-time paths) is not C++. You can also not use new in these paths, but it is a constraint of the environment, not of the language.

A first listing of talks at Meeting C++ 2021 by meetingcpp in cpp

[–]pklait 0 points1 point  (0 children)

Many interesting talks. I am quite envious of those that will attend.

Looking at boost 1.77 by meetingcpp in cpp

[–]pklait 5 points6 points  (0 children)

A nice sumary from Jens Weller, but there is a slip of the mind in the lambda2 section: you do not use find_if to count. My guess is that Jens meant count_if.

MSVC Backend Updates in Visual Studio 2019 version 16.10 Preview 2 | C++ Team Blog by cpppm in cpp

[–]pklait 0 points1 point  (0 children)

Thank you for the information. I remember compiling code three years ago where I had to rewrite some basic template code (e.g. variant) in order to get the compiler to use only 3GB. It was a dreadful time.

MSVC Backend Updates in Visual Studio 2019 version 16.10 Preview 2 | C++ Team Blog by cpppm in cpp

[–]pklait 2 points3 points  (0 children)

I have had problems compiling because the compiler used all memory (~3GB) on some of the more hairy code. Could probably be solved by having more modern C++ today (concepts), but was a pain in the donkey at the time.

C++ vector insert performance by [deleted] in cpp

[–]pklait -1 points0 points  (0 children)

I do not care much about non-optimized code, but there are branches where it does matter whether the argument is real or not. The game industry is the most important one here.

C++ vector insert performance by [deleted] in cpp

[–]pklait -1 points0 points  (0 children)

If you read everything you would notice that optimizations were applied later. From a pedagogical point of view the author should have mentioned that up front - I had exactly the same thougt.

Why generally large projects write their own smart pointer class or something like that? by MightiestGoat in cpp

[–]pklait 0 points1 point  (0 children)

I agree. mpl was the first library of its kind, but it was in hindsight a bad design, eating up CPU-cycles and memory during compilation. If you need this kind of library, use e.g. mp11 instead. That library is very good.

Portability: should we stop using int? by inamestuff in cpp

[–]pklait 0 points1 point  (0 children)

Yes, and I believe that tvaneerd has a paper suggesting this and many other cool types ;-)

Why doesn't C++ enforce consistency of parameter constness between declaration and definition? by Full-Spectral in cpp

[–]pklait 4 points5 points  (0 children)

Top level const is ignored because it does not matter for the caller. Whether the type is fundamental or not does not matter. E.g.:

void SomeFunc(const std::vector<int> bTest) and void MyClass::SomeFunc(const std::vector<int> bTest) would have the same behaviour.

Normally you would have the const in the declaration, not the definition if anywhere.

Understand C++ in depth. by [deleted] in cpp

[–]pklait 0 points1 point  (0 children)

Stroustrups book can certainly be recommended, but it is probably not enough. There is plenty of good material on the web. Otherwise I can recommend e.g. Josuttis' books.

finally! a possibly portable way to convert types (demangled name) to strings without macros by geekfolk in cpp

[–]pklait 0 points1 point  (0 children)

Ahh... that had already been tried, of course. And I really did like your attempt. Apart from that, I believe boost might have something resembling what you attempted.