2025-03-02 [07:28:27.0050] apologies to anyone following https://github.com/tc39/ecma402/issues/294 for redirecting someone who was, in retrospect, definitely just using AI into that thread [07:28:37.0714] I thought they might be but wanted to give the benefit of the doubt [07:28:43.0831] we gotta have a policy about this 2025-03-03 [23:58:42.0420] Are there existing examples of such policies for other standards or projects? [00:28:42.0317] I think most projects don't allow low effort/spam posts. and github itself also doesn't allow these things. [07:43:15.0858] this isn't exactly spam; I'm certain there was an individual human driving this request because they actually wanted it [07:43:35.0843] they were just getting the AI to write arguments for it, and to respond to objections [08:24:02.0210] most places don't have sufficient bureaucracy to require a policy, they just unilaterally ban it and call out people who seem like they're using LLMs [15:47:04.0270] this is why "low effort" is part of the qualification as well 2025-03-04 [16:15:38.0070] I don't mind if people want to polish their text with LLMs so that they can make themselves understandable in English with confidence. I've seen that in real life enabling better participation from people whose English level is prohibitive. ideally any policy we adopt wouldn't exclude that [16:30:50.0120] it's very tricky to allow any legit usage while disallowing all illegit usage tho. quite frankly i'd rather someone post a reply in their native language and _i_ do the translation for myself, than that they post something that appears to be in english but isn't idiomatic and has weird flaws [16:37:30.0035] that would work, as well. we'd have to be quite clear that it's encouraged, though; in many open source spaces non-English contributions are closed just as quickly than obvious LLM work, by well-meaning contributors [14:11:22.0018] Allowing multiple languages severely impacts search [15:15:56.0729] looking at RegExp.prototype[Symbol.replace] to fix a bug, what is this monstrosity? is this the most complicated builtin we have 2025-03-05 [16:47:40.0815] all the regex symbols are a monstrosity :-( [18:39:00.0274] have you considered just introducing more bugs, instead of fixing the bug [18:39:14.0240] if there's enough incompatible bugs across all the engines then no one will use it and we can rip it out [23:43:01.0565] Yeah it would be pretty great if someone could try ripping out the stuff about replacing exec. But as of 2016-ish it turned out people actually did replace it. But probably just silly polyfills and xregexp [23:43:24.0434] And when those were written, they didn’t expect to get called into by replace [23:43:46.0672] So it is just like the case that Mozilla looked into a little bit and then decided it wasn’t worth their time to look further 2025-03-06 [08:45:52.0261] thoughts on making the proposals table more concise by changing all the people's names to their notes shortcut + a link to the line in delegates.txt? [08:55:19.0136] could we just delete the authors and champions columns? [08:55:40.0937] that info is in the proposal's README anyway and the proposals table is just one more place for it to get out of date [08:55:55.0222] * that info is in each proposal's README anyway and the proposals table is just one more place for it to get out of date [08:57:10.0622] @pchimento:igalia.com it's a useful way to find which proposals a person is championing [08:57:10.0712] Do GitHub tables support `` elements? `NRO` [08:57:34.0036] (ashamedly, I have to search my own name on this page sometimes to remind me what I have to work on) [08:58:44.0146] I was going to ask "how often do you have to search the proposals page to look up what someone is championing" but I guess I have my answer 😄 [08:59:28.0428] not all of us can focus on a single proposal for 7 years straight [09:00:44.0427] how dare you sir. I've only been at this particular grindstone for 5 years 😄 [09:01:05.0962] yeah i definitely don't want to delete the info; individual proposals are inconsistent at storing info, which is why we added the reviewers column. [09:01:55.0934] i can definitely use an `` *as well* as a link, that seems pretty accessible. including the full name will make the markdown much larger but the rendered table smaller. [09:02:09.0894] sadly not: https://github.com/orgs/community/discussions/9681 [09:02:19.0959] boo [09:03:01.0014] so would just `[JHD](link to my line in delegates.txt)` be acceptable? [09:03:10.0979] I guess we could start by shortening/removing the author and not the champion? It seems like it's less relevant info [09:03:13.0526] * so would just `[JHD](link to my line in delegates.txt)` be acceptable? i don't want to type out a full `` :-) [09:03:31.0808] ah just realized authors might not have delegates abbreviations [09:03:34.0933] * ah, just realized authors might not have delegates abbreviations [09:03:44.0125] so the shortening would only work for delegates [09:52:05.0366] still an improvement I guess [10:01:08.0076] I would prefer to keep the full names because I have not memorized everyone's abbreviations [10:01:20.0828] so it would be much harder to read if we replaced names with abbreviations [10:01:45.0101] I don't think concision is all that valuable for this [10:13:21.0501] even if all the abbreviations were clickable? [10:14:28.0021] I mean it's a big table and GH squeezes it into 900px [10:14:29.0863] concision helps [10:17:16.0627] another benefit is that there'd be a single source of truth for the correct spelling/accents/etc of someone's name [11:15:27.0576] yes because then I have to scroll through the entire table clicking every abbreviation [11:15:31.0368] which is much worse than just reading it [11:39:21.0498] would a hover with the full name (which is probably still worse) be tolerable? [11:42:39.0931] If it also reminds me that Kevin means bakkot 😉 [15:10:07.0693] > <@nicolo-ribaudo:matrix.org> This is super early, however — a few of us will be taking the train to go to the A Coruña meeting in May (mostly from NL and UK). If anybody traveling from somewhere in western Europe wants to join us please write me a message by the end of February :) More details about this, if anybody wants to join. Right now we are about 5 people. https://noiseless-session-654.notion.site/A-Coru-a-2025-1aa8f6ddcc15807597f3ceb31cbd162f Feel free to message me :) 2025-03-10 [15:11:24.0060] lol i will miss you by almost exactly 24 hours. see you when you get back i guess 😄 2025-03-12 [12:06:53.0493] Hey, I was looking through some of the notes from the last plenary, and I noticed that for "Don't call well-known Symbol methods for RegExp on primitive values", it was pointed out that core-js implements the proposed PR rather than the spec [12:06:58.0695] and that doesn't seem to be true: https://github.com/zloirock/core-js/blob/master/packages/core-js/modules/es.string.match.js#L20 [12:37:06.0197] I assume that claim was based on https://github.com/tc39/ecma262/pull/3009#issuecomment-1451639187 [13:07:21.0623] I somehow missed that comment when looking through that issue 😅 [13:10:23.0347] but yeah, overriding `String.prototype[Symbol.match]` does make core-js's `String.prototype.match` polyfill throw [13:10:30.0373] * but yeah, overriding `String.prototype[Symbol.match]` to throw does make core-js's `String.prototype.match` polyfill throw [13:10:56.0317] * but yeah, defining `String.prototype[Symbol.match]` so it throws does make core-js's `String.prototype.match` polyfill throw 2025-03-27 [03:07:56.0679] I'm looking at the agenda for April, and Mark's proposals could as well be song titles. [09:20:00.0451] rishipal hi! [09:40:58.0151] Hi :) [11:23:34.0118] oh man we found some in-the-wild uses of extending non-extensible objects with private names [11:23:49.0906] how big are they? [11:23:55.0784] it doesn't look like a library though, but i can't tell [11:24:04.0385] maybe time for a reverse origin trial? [11:24:16.0433] # of page loads is still very low [11:24:20.0231] haha, markdown [11:24:27.0427] * no. of page loads is still very low [11:24:51.0313] https://gis.bvl.bund.de/ has this snippet somewhere: [11:25:29.0640] ``` class _ { // stuff ... static #t = void (Object.keys(_).forEach((t) => { _[t].type = t; }), Object.freeze(_)); } ``` [11:26:56.0170] oh it must be this https://www.disy.net/en/products/disy-cadenza/overview/ [11:52:53.0994] What in tarnation [11:55:01.0716] the other broken sites are worse, actually [11:55:09.0674] https://chromestatus.com/metrics/feature/timeline/popularity/5209 [11:55:57.0582] #2 and #6 are non-Cadenza breakages, and they break in the same way. they both seem to have identically structured source, which looks like some proprietary framework (i can't find any references to it on GH) [11:56:04.0600] #2 and #6 actually do something like [11:56:22.0942] ``` class t extends EventTarget { constructor() { super(); Object.freeze(this); } } class h extends t { #foo; #bar; constructor() { super(); this.#foo = ...; } } ``` [11:56:41.0945] still, very low page load [13:02:56.0370] 🤔 I wonder why they are freezing EventTarget [13:04:55.0073] my personal use of extending private names on objects I do not own, is to add a mark to any object I have seen, so I can easily debug them in the console [13:06:12.0342] the framework seems to be called "Axial", but i can't find any references to it on github [13:06:56.0017] it's not this thing: https://www.npmjs.com/package/axial [13:07:04.0176] if anyone has any idea what Axial is, please lmk [14:49:23.0289] Is this a terrible idea: still allow private fields to be installed if the new object wasn't replaced by the call to super and it only made it non-extensible [14:50:36.0719] I.e return override private field trick is removed [14:51:15.0164] but doesn't achieve what we want, which is the fixed shape guarantee [14:51:19.0544] * but that doesn't achieve what we want, which is the fixed shape guarantee [14:55:10.0353] Gotcha. I was focusing too much on the desire to remove the secret weakmap [15:00:23.0996] we can probably do outreach here [15:01:27.0763] And we also wanted to reduce new MOP predicates too which we get by expanding the meaning of non-extensible [15:02:49.0118] I guess if a class wants to freeze but not block subclass for having private fields they would only freeze based on a check to new.target and expect the subclass to do the same [15:03:17.0046] * I guess if a class wants to freeze but not block subclass from having private fields they would only freeze based on a check to new.target and expect the subclass to do the same  [15:06:38.0981] yeah, if you freeze in a class constructor, you gotta freeze in the leaves of the inheritance hierarchy [15:06:44.0630] * I guess if a class wants to freeze but not block subclass from having private fields they would only freeze based on a check to new.target and expect the subclass to do the same  [15:14:35.0310] yes, good plan [15:20:39.0237] we can simply go to their office https://www.disy.net/en/company/contact/#:~:text=Google%20Maps-,approach,-By%20public%20transport [15:20:41.0037] this is what Yehuda was proposing decorator instance finalizers for! 2025-03-28 [17:05:00.0302] Yeah there are no good way in the language to do "init finalization". [17:48:41.0153] It's interesting that all these hits are based in germany. Wondering if there is a local shop that has a bespoke UI framework [19:35:34.0530] the first one is a german GIS software. bespoke UI framework is my guess for the Axial breakages, too