pitrou commented on issue #14:
URL: https://github.com/apache/iceberg-cpp/issues/14#issuecomment-2586537552

   I went looking around for comparisons of exceptions and `std::expected` and 
I found an insightful tidbit here: 
https://www.foonathan.net/2017/12/exceptions-vs-expected/
   
   > [Exceptions] are not easily composable: There is only one current 
exception, you can’t have multiple ones. This was a problem, for example, for 
the [C++17 parallel 
algorithms](http://www.bfilipek.com/2017/08/cpp17-details-parallel.html). What 
if an exception is thrown in multiple of the worker threads? How to report all 
of them back to the caller? The implementation gave up on solving that problem 
and just decided to terminate the program if any exception is thrown.
   
   If this is still the case with C++20 (you can't store an exception on the 
side to later wrap or re-throw it, for example), then this sounds like a major 
annoyance. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to