logoalt Hacker News

AlotOfReadinglast Sunday at 8:24 PM2 repliesview on HN

The dialects issue is why I avoid interviewing in C++, because inevitably it turns out the interviewer has some weird view of what "C++" is and doesn't realize it. Years ago I had an interview in "C++14" that required std::optional (C++17) as implemented by a C++14 compiler with only experimental, nonstandard support. In another case, an interviewer on the LLVM team vehemently disagreed with me that you could legally implement std::atomic types with mutexes, as I was going over a story about fixing issues in an awful stdlib that implemented them with mutexes.

This kind of thing doesn't happen when I interview in other languages.


Replies

t0mpr1c3last Sunday at 8:53 PM

It seems like the history of programming languages since the 1980s has mostly been people trying to avoid C++.

First languages with run-times and dynamic types, and more recently lower levels of abstraction (Go, Rust).

show 1 reply
bee_riderlast Sunday at 11:34 PM

What was the disagreement on the atomics issue?

I only know them from openMP (more of a Fortran person)… without much thought my gut says that it’d be possible to implement an atomic operation with a mutex, but sort of defeating the purpose. An atomic operation is mostly expected (intended? hoped?) to be backed by some hardware atomic instructions anyway, right?

show 1 reply