01:13
<Domenic>
annevk: Domenic I don't know if it matters much, but the return value of parse a JSON string to an infra value seems inconsistent to me. Rather than always returning a completion record, it returns an "throw" completion record on failure and a infra value on success
returning a throw completion record is the same as throwing an exception.
02:45
<jugglinmike>
Domenic: Right. I was thinking about how it seems to return a completion record in some cases and an infra value in others. When I remembered the "implicit normal completion" section in ECMAScript, I thought that might explain things here, because if it also applies to the Infra spec, it would mean that the algorithm always returns a completion record.
02:45
<Domenic>
It always either returns an Infra value or throws an exception.
02:46
<jugglinmike>
But an Infra value is not a completion record, right?
02:46
<Domenic>
Correct. It never returns a completion record.
02:48
<jugglinmike>
Oh, huh. So a throw completion is not a completion record?
02:49
<jugglinmike>
That can't be it. "throw completion refers to any Completion Record with a [[Type]] value of throw."
02:51
<jugglinmike>
Here's where I'm getting confused: I can't square the statements that "[the algorithm] never returns a completion record" and "[the algorithm] always either returns an Infra value or throws an exception", given that "returning a throw completion record is the same as throwing an exception"
03:47
<sideshowbarker>
At Google is there a current Developer Advocate for WebAssembly? (I know it used to be Ingvar Stepanyan)
08:53
<annevk>
jugglinmike: it makes sense to me; it returns an Infra value or throws an exception (which is inclusive of returning a throw completion record as that's the same thing)
18:02
<jugglinmike>
annevk: So could we also say, "it returns an Infra value or it returns a throw completion record"?