00:25:04  * caridyquit (Read error: Connection reset by peer)
00:25:10  * caridy_joined
00:53:29  * AtumTquit (Remote host closed the connection)
04:35:39  * jmdyckquit (Quit: Leaving.)
04:52:46  * gskachkovquit (Quit: gskachkov)
06:13:07  * afrael_joined
08:22:15  * gskachkovjoined
09:12:34  * gskachkovquit (Quit: gskachkov)
09:13:07  * gskachkovjoined
09:13:10  * gskachkovquit (Client Quit)
10:19:28  * gskachkovjoined
10:25:09  * mylesborinsquit (Quit: farewell for now)
10:25:40  * mylesborinsjoined
10:32:45  * gskachkovquit (Quit: gskachkov)
10:34:41  * gskachkovjoined
11:08:17  * gskachkovquit (Quit: gskachkov)
11:09:03  * gskachkovjoined
11:11:16  * gskachkovquit (Client Quit)
11:11:54  * gskachkovjoined
11:13:46  * gskachkovquit (Client Quit)
11:17:01  * gskachkovjoined
11:18:35  * gskachkovquit (Client Quit)
11:20:50  * gskachkovjoined
11:27:43  * gskachkovquit (Quit: gskachkov)
11:34:25  * gskachkovjoined
11:36:31  * gskachkovquit (Client Quit)
11:36:57  * gskachkovjoined
11:53:16  * gskachkovquit (Quit: gskachkov)
11:55:45  * jmdyckjoined
11:56:42  * gskachkovjoined
11:59:45  * gskachkovquit (Client Quit)
12:11:44  * gskachkovjoined
14:27:35  * gskachkovquit (Quit: gskachkov)
14:28:12  * gskachkovjoined
14:42:34  * gskachkovquit (Quit: gskachkov)
14:46:09  * AtumTjoined
14:57:19  * caridy_quit (Remote host closed the connection)
14:58:11  * caridyjoined
15:24:12  * momojoined
15:35:32  * kdexjoined
16:00:06  * kdexquit (Quit: Konversation terminated!)
16:01:37  * gskachkovjoined
16:33:20  * gskachkovquit (Quit: gskachkov)
16:36:21  * gskachkovjoined
16:40:03  * momoquit (Quit: Page closed)
16:42:17  * gskachkovquit (Quit: gskachkov)
18:10:21  * AtumT_joined
18:13:05  * AtumTquit (Ping timeout: 240 seconds)
18:24:09  * AtumTjoined
18:24:58  * AtumT_quit (Ping timeout: 255 seconds)
18:46:18  * duanebjoined
18:46:25  <duaneb>o/ hey guys
18:46:39  <duaneb>I'm looking at a specific draft: https://github.com/tc39/proposal-class-fields
18:46:51  <duaneb>I'm trying to get a pulse on how much of that is likely to change
18:46:58  <duaneb>where can i see the discussion on said draft?
18:49:29  <duaneb>I've found this but it doesn't appear at all recent: https://esdiscuss.org/topic/define-static-properties-and-prototype-properties-with-the-class-syntax
18:50:07  <duaneb>also this: https://esdiscuss.org/topic/proposal-for-a-static-constructor-and-static-member-variables
19:00:04  * afrael_quit (Remote host closed the connection)
19:00:39  * afrael_joined
19:05:27  <ljharb>duaneb: in the general case, it's all subject to change until stage 4; changes in stage 3 tend to only be for web compat, or implementation difficulty; but changes in stage 2 can be more varied.
19:05:37  * afrael_quit (Ping timeout: 248 seconds)
19:08:45  <Bakkot>that said, this particular feature is going for stage 3 in about two weeks, and I don't personally expect any (further) normative changes before then. It may or may not get stage 3, but if it does, as I think it probably will, then as @ljharb says it's unlikely to change much after that. but it still might if the need arises, especially in details.
20:28:08  * Fishrock123joined
20:35:00  <duaneb>ljharb, Bakkot, thank you :)
20:35:07  * duanebquit (Quit: Textual IRC Client: www.textualapp.com)
21:08:45  <aklein>bug of the day: what should this print? "for (let a = false, b = () => a; !a; true) { a = true; print(b()); }"
21:09:22  <aklein>(really the followup is more interesting: what does it print in actual implementations?)
21:10:08  <ljharb>hm
21:10:25  <ljharb>i would assume that either it never enters the block; or that it prints true forever
21:11:25  <bterlson>aklein: is the confusion around how the a captured by b is an outer a?
21:28:00  <aklein>bterlson: yup
21:28:04  <aklein>but per spec there is no outer a
21:28:22  <aklein>eshost output:
21:28:27  <aklein>#### v8
21:28:27  <aklein>false
21:28:27  <aklein>#### chakra
21:28:27  <aklein>false
21:28:27  <aklein>#### jsc
21:28:27  <aklein>true
21:28:28  <aklein>#### spidermonkey
21:28:28  <aklein>false
21:29:07  <aklein>jsc is the only one to get this right
21:29:24  <aklein>makes me wonder if chakra and spidermonkey are using the same desugaring strategy as v8
21:32:06  <bterlson>aklein: I think jsc is the only one to get this wrong?
21:32:26  <aklein>bterlson: interesting, why do you think it's wrong?
21:33:09  <bterlson>a is bound once before evaluating the loop head
21:33:20  <bterlson>and then rebound at the start of each iteration in a new lexical environment
21:34:17  <bterlson>so the a = true assignment doesn't impact the binding captured by b
21:35:18  <aklein>ah I see this now
21:36:16  * gskachkovjoined
21:36:47  <aklein>the factoring is different from the ForIn/Of case, leading me to confusion
21:42:24  <aklein>so that was a Friday afternoon question in more ways than one
21:47:03  <bterlson>aklein: :-D
21:47:18  <bterlson>with the best outcome: no changes needed ;)
21:48:04  <bterlson>lol benedikt tweeting about the perf optimization I requested
21:48:35  <bterlson>now over an order of magnitude faster than Chakra at set iteration I think
21:48:38  <bterlson>very cool
21:55:57  <aklein>heh
22:15:03  * Fishrock123quit (Remote host closed the connection)
22:21:23  <Bakkot>ljharb: any interest in writing a polyfill for https://michaelficarra.github.io/Symbol-description-proposal/ ?
22:21:35  <Bakkot>I haven't done one before or I'd do it myself. Still will if no one else wants to.
22:21:59  <Bakkot>I have an implementation in v8, which somewhat ironically was probably less less work than the polyfill would be.
22:22:37  <Bakkot>(Note that it's actually not totally polyfillable as it stands, since there's no way to distinguish between `x = Symbol()` and `y = Symbol('')`.)
22:23:20  <ljharb>sure there is, i'd just have to overwrite `Symbol` itself :-p
22:23:27  <ljharb>so sure, i can add that to my list
22:35:57  * Fishrock123joined
23:00:18  * caridyquit (Remote host closed the connection)
23:00:50  * caridyjoined
23:49:14  * Fishrock123quit (Remote host closed the connection)
23:55:01  * Fishrock123joined
23:56:51  * Fishrock123quit (Client Quit)