00:31:05  * byronmejiajoined
00:39:30  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:56:41  * zenparsingquit (Quit: Connection closed for inactivity)
01:05:37  * keith_millerjoined
01:24:53  * aki_joined
01:25:48  * akirosequit (Ping timeout: 252 seconds)
01:25:49  * aki_changed nick to akirose
01:43:59  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:56:11  * emilianobovetti4quit (Ping timeout: 250 seconds)
01:56:12  * saulh[m]quit (Ping timeout: 250 seconds)
01:56:48  * emilianobovetti4joined
01:57:33  * saulh[m]joined
01:58:12  * cloudshuquit (Quit: Connection closed for inactivity)
02:17:31  * AtumTquit (Quit: AtumT)
03:21:20  * gibson042quit (Ping timeout: 276 seconds)
03:30:35  * aki_joined
03:31:31  * akirosequit (Ping timeout: 250 seconds)
03:31:32  * aki_changed nick to akirose
03:59:08  * byronmejiaquit (Read error: Connection reset by peer)
04:48:02  <TimothyGu>Is there a way to get the iterable generator object from the generator body itself?
04:49:04  <ljharb>TimothyGu: if i understand your meaning, it changes every invocation, so it'd kind of be like being able to do `arguments.callee`, wouldn't it?
04:49:41  <TimothyGu>ljharb: sure, it's like the `this` value of the .next() call if you will
04:49:51  <TimothyGu>(I'm too young to remember what `arguments.callee` is)
04:50:00  <TimothyGu>and too inexperienced
04:50:01  <ljharb>lulz
04:50:12  <ljharb>what would be your use case for getting at that object?
04:50:59  <TimothyGu>microscopically, allowing continuing execution of this current generator using a callback created within the generator function
04:51:14  <TimothyGu>macroscopically, implementing the Await() macro in ECMA-262
04:51:46  <TimothyGu>like
04:51:49  <ljharb>can you elaborate on the former?
04:52:07  <ljharb>for the latter, i'm not sure that's actually possible, by design, but i doubt i understand that macro enough to be confident
04:52:58  <TimothyGu>https://www.irccloud.com/pastebin/OCcePDjO/
04:53:26  <TimothyGu>we are modelling execution context suspension with generator functions, which works quite well for generator functions
04:53:40  <TimothyGu>now we are doing async functions
04:54:43  <TimothyGu>of course the dumb way is to just have an initial `const gen = yield;` and have the caller pass the generator object back in. But we'd like to avoid that if possible
04:54:46  * jwaldenquit (Quit: back tomorrow)
04:56:23  <devsnek>thats actually not even the problem rn
04:56:47  <TimothyGu>devsnek: shhh
04:56:57  <ljharb>lol
04:57:40  <devsnek>the problem is that we don't resume iterating the code execution state we create in AsyncFunctionStart because there's no way to be like "hey generator let someone else handle this next iteration then let me handle the rest"
04:57:55  <ljharb>`yield *` can't do that?
04:58:20  <devsnek>first next() triggers the thing timothy talked about above
04:58:32  <devsnek>the next next() would break it all though
04:58:41  <TimothyGu>devsnek: we could have a dummy yield
04:58:44  <devsnek>`const [status, val] = yield;` should be handled by the promise
04:59:04  <devsnek>but then after that, we need to go back to the original driver somehow
04:59:18  <TimothyGu>okay I'm more interested in the getting generator object question
04:59:24  <devsnek>lol
04:59:24  <TimothyGu>I feel like that's more appropriate for this channel
04:59:44  <ljharb>i imagine you'd need a special keyword, like `function.sent`-style
05:00:07  <TimothyGu>ljharb: I've always thought `this` refers to the generator object
05:00:07  <devsnek>lmao timothy use function.sent
05:00:21  <TimothyGu>considering `genFunc.prototype` is the prototype of the generator object
05:00:29  <ljharb>is it?
05:00:32  <TimothyGu>I think so
05:00:48  <devsnek>wait was function.sent ever actually a thing
05:00:48  <TimothyGu>yup
05:00:57  <devsnek>no i mean
05:01:02  <ljharb>wow, yeah it is
05:01:02  <devsnek>did it become official
05:01:05  <ljharb>devsnek: not yet, it's stage 2
05:01:16  <ljharb>devsnek: at this point tho if nobody picks it up, it should be moved to inactive
05:01:25  <TimothyGu>seems like the V8 code was removed after inactivity
05:01:35  <devsnek>it would probably be picked back up if it wasn't stuck on `function`
05:02:13  <ljharb>where would you stick it
05:02:29  <TimothyGu>[+Sent]
05:02:33  <devsnek>lmao
05:03:06  <devsnek>i would have put it on `yield`
05:03:19  <devsnek>like super properties and such
05:03:20  <ljharb>sure, you could do `yield.sent` or whatever
05:03:40  <ljharb>the proposal just needs a champion; a metaproperty that provides that value inside generators already has stage 2
05:04:04  <ljharb>(a champion who makes a real proposal repo and writes spec text and then asks for reviewers and gets it reviewed, and asks for stage 3) :-p
05:04:17  <TimothyGu>someone should create a company that sells ChaaS
05:04:25  <TimothyGu>Champion-as-a-Service, of course
05:04:35  <ljharb>lol i think that's what bocoup and igalia kind of are
05:04:46  <TimothyGu>hmm I guess
05:05:51  <devsnek>also maybe i'm crazy
05:06:00  <devsnek>but i think a stack pop is missing in Await()
05:06:11  <devsnek>i had to add one anyway
05:06:29  <TimothyGu>I mean Await has one already, no?
05:06:37  <devsnek>i mean in the new code execution state
05:06:52  <TimothyGu>uhm why…
05:07:03  <devsnek>it expects it to pop the stack
05:07:08  <TimothyGu>what expects it
05:07:18  <devsnek>check the assert after the resume in await fulfill functions
05:07:46  <TimothyGu>I don't think that's it devsnek
05:07:51  <devsnek>and in AsyncFunctionStart there is also a pop
05:08:05  <TimothyGu>when the code evaluation ends there should be a pop
05:08:10  <TimothyGu>but not when it begins
05:08:15  * jmdyckquit (Remote host closed the connection)
05:15:32  * howdoijoined
05:36:19  * akirose-joined
05:37:22  * akirosequit (Ping timeout: 246 seconds)
05:37:22  * akirose-changed nick to akirose
05:53:31  * keith_millerjoined
07:20:34  * akoserwajoined
07:42:01  * aki_joined
07:43:14  * akirosequit (Ping timeout: 268 seconds)
07:43:14  * aki_changed nick to akirose
07:51:24  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:18:17  * Guest43150part
08:19:16  * mgoljoined
09:48:14  * aki_joined
09:48:54  * akirosequit (Ping timeout: 252 seconds)
09:48:54  * aki_changed nick to akirose
10:31:23  * mathiasbynens_quit
10:31:46  * mathiasbynensjoined
11:32:10  * Draggorquit (Ping timeout: 272 seconds)
11:32:29  * keith_millerjoined
11:35:00  * keith_millerquit (Client Quit)
11:35:17  * Draggorjoined
11:54:48  * akirosequit (Ping timeout: 252 seconds)
11:55:23  * akirosejoined
13:25:49  * jmdyckjoined
13:35:05  * keith_millerjoined
14:02:57  * akirosequit (Ping timeout: 252 seconds)
14:03:08  * akirosejoined
14:11:51  * keith_millerquit (Ping timeout: 244 seconds)
15:00:53  * Aquazi_joined
15:01:31  * Aquazi_part
15:24:27  * keith_millerjoined
15:29:39  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:08:49  * aki_joined
16:09:39  * akirosequit (Ping timeout: 244 seconds)
16:09:39  * aki_changed nick to akirose
16:12:41  * akoserwaquit (Quit: Leaving)
16:22:59  * AtumTjoined
17:14:15  * howdoiquit (Quit: Connection closed for inactivity)
17:34:44  * keith_millerjoined
17:39:57  * keith_millerquit (Remote host closed the connection)
17:40:26  * keith_mi_joined
18:05:08  * nonicknamejoined
18:06:08  * nonicknamepart
18:10:13  * keith_mi_quit (Remote host closed the connection)
18:10:27  * keith_millerjoined
18:15:24  * aki_joined
18:16:30  * akirosequit (Ping timeout: 252 seconds)
18:16:30  * aki_changed nick to akirose
18:40:17  * keith_millerquit (Remote host closed the connection)
18:40:23  * keith_mi_joined
18:49:29  * keith_mi_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:55:40  * jwaldenjoined
19:06:33  * keith_millerjoined
20:13:26  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:21:17  * aki_joined
20:21:54  * akirosequit (Ping timeout: 252 seconds)
20:21:54  * aki_changed nick to akirose
20:50:52  * littledanjoined
21:14:52  * caiolima__part
21:35:54  * keith_millerjoined
22:11:58  * keith_mi_joined
22:27:26  * aki_joined
22:27:28  * akirosequit (Ping timeout: 246 seconds)
22:27:38  * aki_changed nick to akirose
23:37:34  * keith_mi_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)