<div dir="ltr"><div class="gmail_default" style="font-family:monospace">Hello Amber Dev TeaM,</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">I learned a lot about Exceptions in the previous discussion above, so I figured I'd ask this question as well -- when does it make sense
to handle exceptional cases via a Sealed Type (DivisionResult ====>
Success(double answer) || DivideByZero()) vs an Exception
(DivideByZeroException)?</div><div class="gmail_default" style="font-family:monospace"><div dir="ltr"><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">The
only difference I can see is that an Exception gives you debugging
details (line number, stack trace) that would be very difficult for a
Sealed Type to attain. And if that is the key difference, doesn't that
sort of imply that we should opt into the more info-rich source of
information wherever possible? After all, debugging is hard enough and more info is to everyone's benefit, right?</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">And most of the extra info
is static (line numbers don't change). I'll avoid performance as a
reason, as I don't understand the mechanics of what makes one faster or
slower.</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">Thank you all for your time and help!</div><div class="gmail_default" style="font-family:monospace">David Alayachew<br></div></div>
</div></div>