04:23
<Jack Works>
https://marketplace.visualstudio.com/items?itemName=MagicWorks.ecmarkup ecmarkup language extension for vscode.
04:23
<Jack Works>
emu-* HTML tags definition
04:24
<Jack Works>
code snippet for verbose spec clause
04:25
<Jack Works>
alg highlight (still improving)
04:27
<Jack Works>
type check & lint result from ecmarkup cli
04:29
<Jack Works>
Warning: Low performance; May crash; bugs I'm going to rewrite it in the future
06:31
<ljharb>
should it also be throw?
08:13
<bakkot>
Jack Works: very nice!
08:14
<bakkot>
ljharb: we decided no - iterator helpers only forward the iteration parts of the generator protocol, meaning calls to next and return, and not even the values passed to those things
08:14
<bakkot>
nothing in the language calls .throw
08:14
<bakkot>
so leaving it out doesn't really affect anything
08:16
<bakkot>
as I understand it .throw is part of the generator protocol mostly to explain stuff like, if you think of async functions as a fancy kind of generator, well, await can throw, so there needs to be something in the protocol which explains that
08:16
<bakkot>
which is cool and all but is not relevant to iterators
15:18
<Kris Kowal>
Yeah, indeed. Q.async straddled both the modern and old Firefox generator functions. The throw and return methods made it possible to shim async functions elegantly. https://github.com/kriskowal/q/blob/master/q.js#L1253-L1327