00:14:00  * rmarkinsjoined
00:29:56  * rmarkinsquit (Ping timeout: 268 seconds)
00:40:51  * Havvyjoined
00:40:55  * rmarkinsjoined
00:46:07  * rmarkinsquit (Ping timeout: 240 seconds)
01:25:43  * aki_joined
01:26:43  * akirosequit (Ping timeout: 245 seconds)
01:26:43  * aki_changed nick to akirose
02:05:12  * coolreader18joined
02:11:02  * jwaldenquit (Quit: back maybe later)
02:22:21  * cybaijoined
02:24:04  * gibson042quit (Quit: Leaving.)
02:26:26  * cybaiquit (Ping timeout: 240 seconds)
02:43:11  * rmarkinsjoined
02:48:44  * jorydotcomjoined
02:50:26  * rmarkinsquit (Ping timeout: 240 seconds)
02:54:13  * coolreader18quit (Ping timeout: 245 seconds)
02:58:51  <Bakkot>devsnek: you should write down the "if .throw or .return is called on an iterator produced by one of these iterator methods, it calls that method with the same argument on the underlying iterator" behavior somewhere that isn't the spec
02:59:12  <Bakkot>for Object.fromEntries I had a `DETAILS.md` where I wrote down design decisions of that type, so that they'd be easier to identify and review
02:59:44  <devsnek>ok
03:00:04  <devsnek>btw is that more of an opinionated choice than i imagined it to be?
03:08:13  * h11quit (Ping timeout: 250 seconds)
03:08:32  <Bakkot>No, probably not.
03:09:01  * h11joined
03:09:30  <Bakkot>That is, it's almost certainly right, unless I'm missing something. It's just not something I'd thought about and I needed to stare at the spec for a moment to think about what was going on, and I like to have those things written down.
03:14:48  <Sirisian>bterlson, https://github.com/bterlson/ecmarkup/issues/152 I made an issue. mmm elegant.
03:22:36  <devsnek>Sirisian: that takes td items based on the th declared?
03:22:46  <Sirisian>yes, magic
03:22:53  <devsnek>took me a minute to figure out
03:23:24  <Sirisian>ah, I can probably add a note for that.
03:27:01  <Sirisian>I'm adding all the Symbol.operators from my proposal into the tables. This is so verbose.
03:27:20  <devsnek>Symbol.operators
03:29:34  <Sirisian>yes, great evil. https://github.com/sirisian/ecmascript-types#classes-and-operator-overloading wcgw
03:30:17  <devsnek>i still don't get why this isn't better suited for build time 🤷
03:30:34  <devsnek>you can do more powerful type checks with more time
03:30:42  <Sirisian>build time?
03:31:11  * aki_joined
03:31:36  <devsnek>yeah
03:31:43  <devsnek>types usually happen at compile time
03:32:00  * akirosequit (Ping timeout: 250 seconds)
03:32:01  * aki_changed nick to akirose
03:32:55  <devsnek>Sirisian: btw simd was explicitly moved to wasm land
03:33:15  <Sirisian>As in ECMAScript can never have it?
03:33:18  * jmdyck1quit (Ping timeout: 250 seconds)
03:33:53  * jmdyckjoined
03:33:56  <Sirisian>I asked about that before and was told by others that wasm isn't designed to replace ECMAScript.
03:34:22  <Sirisian>Wait, can ECMAScript use wasm?
03:34:30  <devsnek>ecmascript has no concept of wasm
03:34:42  <Sirisian>oh, I thought I missed something. Got excited.
03:34:48  <devsnek>but the people working on the simd api moved all their efforts to wasm
03:39:38  <Sirisian>I was hoping when that's finalized it would be more refined for an inclusion into ECMAScript. I mostly just added it to think about language features. Would be nice for math library performance though. Always found matrix operations to be disappointingly slow. Also I think my implementation with types will be cleaner. No accidental conversions to Number and other weird things.
03:47:37  * jorydotcomquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:51:53  * rmarkinsjoined
03:57:08  * rmarkinsquit (Ping timeout: 250 seconds)
04:01:24  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:23:18  * jwaldenjoined
04:42:27  * keith_millerjoined
04:43:51  * keith_millerquit (Client Quit)
05:00:03  * coolreader18joined
05:08:10  * cybaijoined
05:12:32  * cybaiquit (Ping timeout: 250 seconds)
05:22:04  * coolreader18quit (Ping timeout: 250 seconds)
05:37:08  * aki_joined
05:37:58  * akirosequit (Ping timeout: 245 seconds)
05:37:58  * aki_changed nick to akirose
05:47:36  * coolreader18joined
05:51:36  * jmdyckquit (Remote host closed the connection)
05:53:10  * rmarkinsjoined
05:57:33  * rmarkinsquit (Ping timeout: 245 seconds)
06:06:18  * coolreader18quit (Ping timeout: 245 seconds)
06:57:40  <Sirisian>There's no harm if operator overloading is added to allow static operator overloading right? class A { static operator +=(value) { this.constructor.x += value; } } A.x = 0; A += 5; Seems deceptively simple. Makes the grammar change straightforward. http://sirisian.github.io/ecmascript-types/#prod-MethodDefinition I can pitch it to a champion later as "ECMAScript now with more powerful singleton features." Developers love those.
06:59:19  * Richicoderquit (Ping timeout: 256 seconds)
06:59:35  <ljharb>Sirisian: operator overloading has brought up lots of concerns from implementors that it would make *every* operation in the language slower
06:59:47  <ljharb>plus it's not a given that everyone *wants* that feature.
07:00:43  <Sirisian>That would be bad. I'm trying to make every operation faster. :|
07:02:22  <Havvy>Operator overloading without a type-checked step means that every operator suddenly becomes less predictable than `==`.
07:02:33  <Sirisian>The only reason I want operator overloading is for math libraries. Oddly enough that's all it's generally used for in other languages. Except C++. Those guys are insane. They were right to be wary to add it there.
07:05:34  <ljharb>Sirisian: `a.add(b)` can already be done
07:05:41  <ljharb>Sirisian: or `a['+'](b)`
07:06:04  <ljharb>or ``` math`${a} + ${b}` ``` perhaps
07:06:06  <Sirisian>Meaning it's not a concern?
07:06:18  <ljharb>meaning that the tradeoff might not be worth it to add syntax for it
07:06:51  <Sirisian>Trust me. I have a ton of math libraries written without it and code. It's a pain.
07:07:28  <ljharb>fair, but if it's going to slow down all the non-math libraries, that's going to be a hard sell
07:08:09  <Sirisian>Indeed.
07:08:18  <Havvy>If it slows down the math libraries, it's going to be an even harder sell. ;)
07:09:37  <ljharb>ha, true
07:34:22  * keith_millerjoined
07:35:47  * keith_millerquit (Client Quit)
07:43:30  * aki_joined
07:44:12  * akirosequit (Ping timeout: 250 seconds)
07:44:12  * aki_changed nick to akirose
07:54:17  * rmarkinsjoined
07:58:52  * rmarkinsquit (Ping timeout: 268 seconds)
08:53:10  * jwaldenquit (Quit: ChatZilla 0.9.92-rdmsoft [XULRunner 35.0.1/20150122214805])
09:10:11  * Nimelrianjoined
09:49:04  * aki_joined
09:49:56  * akirosequit (Ping timeout: 240 seconds)
09:49:57  * aki_changed nick to akirose
09:55:28  * rmarkinsjoined
09:59:42  * rmarkinsquit (Ping timeout: 244 seconds)
11:48:52  * AtumTjoined
11:55:16  * aki_joined
11:56:24  * akirosequit (Ping timeout: 250 seconds)
11:56:25  * aki_changed nick to akirose
13:06:55  * keith_millerjoined
13:34:51  * jmdyckjoined
13:43:52  * keith_m__joined
13:44:26  * keith_mi_quit (Ping timeout: 240 seconds)
13:57:34  * rmarkinsjoined
14:00:51  * aki_joined
14:01:27  * akirosequit (Ping timeout: 240 seconds)
14:01:27  * aki_changed nick to akirose
14:01:43  * rmarkinsquit (Ping timeout: 245 seconds)
14:50:09  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:55:34  * rmarkinsjoined
14:58:06  * cybaijoined
15:00:03  * rmarkinsquit (Ping timeout: 245 seconds)
15:23:25  * keith_millerjoined
15:45:41  * rmarkinsjoined
16:07:09  * aki_joined
16:08:30  * akirosequit (Ping timeout: 268 seconds)
16:08:31  * aki_changed nick to akirose
16:16:30  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:26:06  * coolreader18joined
16:43:21  * keith_millerjoined
16:48:54  * rmarkinsquit (Ping timeout: 244 seconds)
17:19:13  * gibson042joined
17:23:31  * gibson042quit (Ping timeout: 244 seconds)
17:30:31  * keithamusquit (Quit: The Lounge - https://thelounge.chat)
17:31:52  * keithamusjoined
17:33:45  * keithamusquit (Client Quit)
17:35:11  * keithamusjoined
17:37:42  * gibson042joined
17:38:05  * rmarkinsjoined
17:42:40  * rmarkinsquit (Ping timeout: 272 seconds)
17:47:42  * Nimelrianquit (Ping timeout: 268 seconds)
17:52:37  * jorydotcomjoined
17:55:03  * jorydotcomquit (Read error: Connection reset by peer)
17:58:26  * keithamusquit (Quit: The Lounge - https://thelounge.chat)
17:58:50  * keithamusjoined
18:11:53  * keithamusquit (Quit: The Lounge - https://thelounge.chat)
18:12:39  * keithamusjoined
18:13:52  * aki_joined
18:14:55  * akirosequit (Ping timeout: 246 seconds)
18:14:55  * aki_changed nick to akirose
18:15:25  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:17:41  * keith_millerjoined
18:19:11  * keithamusquit (Quit: The Lounge - https://thelounge.chat)
18:27:49  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:31:29  * keith_millerjoined
18:40:15  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:40:35  * cybaiquit (Remote host closed the connection)
18:53:23  * akirosequit (Ping timeout: 245 seconds)
19:10:07  <devsnek>should apis check the arguments passed or the validity of the receiver first
19:15:00  * cybaijoined
19:38:24  * rmarkinsjoined
19:42:33  * rmarkinsquit (Ping timeout: 245 seconds)
19:49:11  * akirosejoined
19:55:18  * AtumT_joined
19:56:40  * AtumTquit (Ping timeout: 268 seconds)
20:06:56  <Domenic>Receiver is the precedent I believe
20:34:38  * coolreader18quit (Ping timeout: 245 seconds)
20:42:11  * coolreader18joined
21:30:50  <ljharb>+1 to that
21:31:10  <ljharb>(i think of the receiver as an implicit first argument, so it comes before all the arguments)
21:39:26  * rmarkinsjoined
21:44:36  * rmarkinsquit (Ping timeout: 272 seconds)
21:56:14  * aki_joined
21:57:08  * akirosequit (Ping timeout: 245 seconds)
21:57:08  * aki_changed nick to akirose
22:57:44  * rmarkinsjoined
22:59:16  * rmarkinsquit (Remote host closed the connection)
23:00:27  * rmarkinsjoined
23:09:33  <FireFly>I'm not sure I'd want operator overloading, and I've written some mathsy JS code that would have benefitted from it syntactically..
23:44:19  * AtumT_quit (Quit: AtumT_)
23:59:38  * gibson042quit (Ping timeout: 250 seconds)