*"amber-spec-experts"
*Sent: *Friday, February 18, 2022 3:34:45 PM
*Subject: *Re: [External] : Re: Record patterns (and beyond):
exceptions
But this clearly does not fall into ICCE. ICCE means,
basically, "your classpath is borked"; that thing
> From: "Brian Goetz"
> To: "Remi Forax"
> Cc: "amber-spec-experts"
> Sent: Friday, February 18, 2022 3:34:45 PM
> Subject: Re: [External] : Re: Record patterns (and beyond): exceptions
>>> But this clearly does not fall into ICCE. ICC
But this clearly does not fall into ICCE. ICCE means, basically,
"your classpath is borked"; that things that were known to be true
at compile time are not true at runtime. (Inconsistent separate
compilation is the most common cause.) But Box(Bag(null)) is not
an artifact
> From: "Brian Goetz"
> To: "Remi Forax"
> Cc: "amber-spec-experts"
> Sent: Thursday, February 17, 2022 3:43:08 PM
> Subject: Re: [External] : Re: Record patterns (and beyond): exceptions
>>> As we look ahead to record patterns, there
As we look ahead to record patterns, there is a new kind of
remainder: the "spine" of nested record patterns. This includes
things like Box(null), Box(novel), Box(Bag(null)),
Box(Mapping(null, novel)), etc. It should be clear that there is
no clean extrapolation from what
> From: "Brian Goetz"
> To: "amber-spec-experts"
> Sent: Wednesday, February 16, 2022 7:34:17 PM
> Subject: Record patterns (and beyond): exceptions
> As we move towards the next deliverable -- record patterns -- we have two new
> questions regarding except
Hello!
I like the comparison with ExceptionInInitializerError and want to
draw more parallels to static initializers. People rarely expect an
exception popping when you do something harmless like reading a static
field (likely it's much less expected than exception from pattern), so
it's usually
As we move towards the next deliverable -- record patterns -- we have
two new questions regarding exceptions to answer.
Questions
1. When a dtor throws an exception. (You might think we can kick this
down the road, since records automatically acquire a synthetic dtor, and
users can't