Throwing exceptions

Hi all,

I know that exception workflow is controversial, to say the least. I’m not here to determine if they are harmful or the way®. I personally prefer to limit them and use monadic tricks (std::optional, std::expected), but sometime it’s unavoidable (failure from a ctor, for example).

I’m looking for an explanation, resources, of why the Be Engineers chose not to use exceptions.

I’m having some hypothesis:

  • wasn’t mature at the time anyway
  • doesn’t play nice with multithreaded environments
  • RAII wasn’t invented yet
  • tradition

I couldn’t find anything in the archived newsletter myself :frowning_face:

Thanks for your help!