---
# System prepended metadata

title: 101st Meeting of TC39

---

# 101^st^ Meeting of TC39

![487px-Solar_eclipse_1999_4](https://hackmd.io/_uploads/Sk56SbAJA.jpg) <sup>new eclipse who dis</sup>

- TCQ: https://tcq.app/meeting/0CD8
- Agenda: https://github.com/tc39/agendas/blob/main/2024/04.md
- Reflector: https://github.com/tc39/Reflector/issues/522

## Agenda key

When applicable, use these emoji as a prefix to the agenda item topic.

| Emoji | Meaning                                                              |
| :---: | :---                                                                 |
|  ❄️   | hard schedule constraints apply to this agenda item (e.g. presenter) |
|  🔒   | schedule constraints apply to this agenda item                       |
|  ⌛️   | late addition for stage advancement and/or schedule prioritization   |
|  🔁   | continuation of a previous agenda item                               |

## Day 1 ([notes](https://mths.be/tc39day1))

<details>

<summary>10:00 to 15:00 America/New_York (UTC -4) on Monday</summary>

### 10:00-12:00 (full)

- Opening & Welcome (15m, Ujjwal Sharma)
  - Opening of the meeting
  - TC39 follows its Code of Conduct
  - Overview of communication tools
  - Quick recap of meeting IPR policy
  - Reminder to review Github Delegate teams (Jordan Harband)
  - <details>
        <summary>Note about meeting transcriptions</summary>
        A detailed transcript of the meeting is being prepared and will be eventually posted on GitHub. You may edit this at any time during the meeting in Google Docs for accuracy, including deleting comments which you do not wish to appear. You may also request corrections or deletions after the fact, by editing the Google Doc (in the first two weeks after the TC39 meeting) or subsequently making a PR in the notes repository or contacting the TC39 chairs.
    </details>
  - 🌑🌕 Solar eclipse reminder: <https://www.nasa.gov/news-release/how-to-watch-upcoming-total-solar-eclipse-with-nasa-from-anywhere/>
  - Ecma recognition awards reminder
  - 🗒️ Call for note-takers
  - Adoption of the agenda
    - The agenda doth runneth over; please be mindful.
    - Presenters: please be on the lookout for messages from chairs; we will try to move topics forward as time allows, while still respecting constraints.
  - Approval of the minutes from last meeting
  - Next meeting host and logistics
- Secretary's Report (15m, Samina Husain)
- Project Editors’ Reports
  - [ECMA262](https://github.com/tc39/ecma262) Status Updates ([slides](https://docs.google.com/presentation/d/1mXvZ-hgyjFca8BzqZ5jzFSa3AdCcr3rFkINaeZ857nA/edit)) (5m, Kevin Gibbons)
    - [update on automatically producing print-quality PDFs](https://docs.google.com/presentation/d/1kCDZewoWZtL26FnFSiK4tr6ZotGo7TR0_AZGlCwHiEQ/edit) (30m, Michael Ficarra)
  - [ECMA402](https://github.com/tc39/ecma402) Status Updates (5m?)
  - [ECMA404](https://www.ecma-international.org/publications/standards/Ecma-404.htm) Status Updates (1m, Chip Morningstar)
  - [Test262](https://github.com/tc39/test262) Status Updates (10m, Philip Chimento)
- Task Group Reports
  - TG3: Security (5m, Chris de Almeida)
    - TG3 convenors appointment (5m, Ujjwal Sharma)
  - TG4: Source Maps (5m?)
  - TG5: Experiments in Programming Language Standardization (5m?)
- Updates from the [CoC Committee](https://tc39.es/code-of-conduct/#code-of-conduct-committee) (5m, Chris de Almeida)
- “array last” proposal [withdrawn](https://github.com/tc39/proposals/pull/511) (1m, Jordan Harband)
- TC39 website - call for translators - [GH issue](https://github.com/tc39/tc39.github.io/issues/406) (1m, Chris de Almeida)
- [Temporal](https://github.com/tc39/proposal-temporal) normative bugfix ([PR](https://github.com/tc39/proposal-temporal/pull/2797), [slides](http://ptomato.name/talks/tc39-2024-04/)) (15m, Philip Chimento)
- [Duplicate named capture groups](https://github.com/tc39/proposal-duplicate-named-capturing-groups) for stage 4 ([PR](https://github.com/tc39/ecma262/pull/2721), [tests](https://github.com/tc39/test262/pull/3625)) (10m, Kevin Gibbons)
- [Set methods](https://github.com/tc39/proposal-set-methods) for stage 4 ([PR](https://github.com/tc39/ecma262/pull/3306), [tests](https://github.com/tc39/test262/pull/3966)) (10m, Kevin Gibbons)

### lunch (60 minutes)

### 13:00-15:00 (10m underflow)

- 🌑🌕 Eclipse starting
- [joint iteration](https://github.com/tc39/proposal-joint-iteration): confirm our stance on [#1](https://github.com/tc39/proposal-joint-iteration/issues/1#issuecomment-1981587641) (10m, Michael Ficarra)
- [Promise.try](https://github.com/tc39/proposal-promise-try) for Stage 2.7 (20m, Jordan Harband)
- [RegExp.escape](https://github.com/tc39/proposal-regex-escaping) for stage 2.7 (20m, Jordan Harband)
- [Make eval-introduced global vars redeclarable](https://github.com/tc39/proposal-redeclarable-global-eval-vars) for stage 2.7 ([slides](https://docs.google.com/presentation/d/1p--DB6SNlDv5XOn9g4bmwoymYQ93VWK_RDrCHLJJd60/edit?usp=sharing)) (30m, Shu-yu Guo)
- 🔒 [ESM Source Phase](https://github.com/tc39/proposal-esm-phase-imports) status update and layering change (https://github.com/tc39/proposal-source-phase-imports/pull/62) (30m, Guy Bedford)
- 🔒 [`Atomics.microwait()`](https://github.com/syg/proposal-atomics-microwait) (without mini wait) for stage 2 ([slides](https://docs.google.com/presentation/d/1Sb4Qaa5F8ZM9X0kxv5e-Wh5CbT1ZoryeCtVShoVhu8Y/edit?usp=sharing)) (15m, Shu-yu Guo)
- 🌑🌕 Maximum eclipse period starting for Middle Western US

</details>

## Day 2 ([notes](https://mths.be/tc39day2))

<details>

<summary>10:00 to 15:00 America/New_York (UTC -4) on Tuesday</summary>

### 10:00-12:00 (15m underflow)

- ❄️ [Explicit Resource Management](https://github.com/tc39/proposal-explicit-resource-management) Normative Updates and Needs Consensus PRs ([slides](https://1drv.ms/p/s!AjgWTO11Fk-TkqpkI6V9_w6ykvsG1w?e=ehAC64), [PRs](https://github.com/tc39/proposal-explicit-resource-management/pulls?q=is%3Aopen+is%3Apr+label%3Aneeds-consensus)) (30m, Ron Buckton)
- ❄️🔒 [AsyncContext](https://github.com/tc39/proposal-async-context/) Stage 2 updates (15m, Justin Ridgewell)
- ❄️ [Deferred import evaluation](https://github.com/tc39/proposal-defer-import-eval/) for Stage 2.7 (without "tree-shakeable" exports) ([slides](https://docs.google.com/presentation/d/1oPEF8nA9Iq5cAqjN-FqMigNNfz6lWCUbNfIsEjRXf4Y/edit?usp=sharing)) (30m, Nicolò Ribaudo)
- ❄️ [Treeshakeable/deferred re-exports](https://github.com/tc39/proposal-defer-import-eval/pull/30) status update (slides TBD) (30m, Nicolò Ribaudo)

### lunch (60 minutes)

### 13:00-15:00 (full)

- [Iterator.range](https://github.com/tc39/proposal-iterator.range) for stage 2.7 (30m, Jack Works)
- [Math.sumExact](https://github.com/tc39/proposal-math-sum) for stage 2.7 ([slides](https://docs.google.com/presentation/d/1QallvKcuIL2UHALEYnP4AdT8nX_iZ6QHDgpVISUXHMg/edit?usp=sharing)) (30m, Kevin Gibbons)
- 🔒 Discussing new directions for [R&T](https://github.com/tc39/proposal-record-tuple) ([slides](https://docs.google.com/presentation/d/1JfChmW8tQ2_mrFDynosNqa1tjJ2j-qX6WoKm8vc_tkY/), [related repo](https://github.com/acutmore/proposal-keyby)) (60m, Ashley Claymore)
  
</details>

## Day 3 ([notes](https://mths.be/tc39day3))

<details>

<summary>10:00 to 15:00 America/New_York (UTC -4) on Wednesday</summary>

### 10:00-12:00 (full)

- ❄️ [Reality and spec differ on property key resolution timing for `o[p] = f()`](https://github.com/tc39/ecma262/issues/3295 ) ([PR](https://github.com/tc39/ecma262/pull/3307)) (15m, Ross Kirsling)
- ❄️ [Intl.MessageFormat](https://github.com/tc39/proposal-intl-messageformat) status update, maybe for stage 0? (30m, Eemeli Aro)
- ❄️ [Discard Bindings](https://github.com/tc39/proposal-discard-binding) for Stage 2 ([slides](https://1drv.ms/p/s!AjgWTO11Fk-TkqpoWw0poDW3dawBQg?e=O3UP1c), [spec](https://tc39.es/proposal-discard-binding/)) (30m, Ron Buckton)
- ❄️ [Extractors](https://github.com/tc39/proposal-extractors) for Stage 2 ([spec](https://tc39.es/proposal-extractors/), [slides](https://1drv.ms/p/s!AjgWTO11Fk-TkqpinLRBZZwud0rM9w?e=s7hKoI)) (45m, Ron Buckton)

### lunch (60 minutes)

### 13:00-15:00 (full)

- ❄️🔒 `eval`/`new Function` changes for Trusted Types as Normative PR or Stage 3 ([PR](https://github.com/tc39/ecma262/pull/3294), [slides](https://docs.google.com/presentation/d/14AjvbW2-aNvlirB-7pPhIAeM7oWKtjqONRcyp9ID7gg/edit?usp=sharing)) (30m, Nicolò Ribaudo)
- 🔒 [Array.isTemplateObject](https://github.com/tc39/proposal-array-is-template-object) next steps (60m, Daniel Ehrenberg)
- 🔒 [Module sync assert](https://github.com/tc39/proposal-module-sync-assert) for stage 2 (30m, Jack Works)
- bringing back [Error.isError](https://github.com/ljharb/proposal-is-error), for stage 1 or 2 (or even 2.7) (30m, Jordan Harband)

</details>

## Day 4 ([notes](https://mths.be/tc39day4))

<details open>

<summary>10:00 to 15:00 America/New_York (UTC -4) on Thursday</summary>

### 10:00-12:00 (full)

- ❄️ [Decimal](https://github.com/tc39/proposal-decimal) for stage 2 ([slides](https://docs.google.com/presentation/d/1kXurIVl4kjzclwFgfzJqohtPyryeKI7Mn9C_w7aAYp8/)) (60m, Jesse Alama)
- 🔒 [Shared structs](https://github.com/tc39/proposal-structs) discussion ([slides](https://docs.google.com/presentation/d/1a53adMbL_Uqb1KxnY-r6Ie6n1PQXvNw3JgUOvRYFido/edit?usp=sharing)) (60m, Shu-yu Guo)

### lunch (60 minutes)

### 13:00-15:00 (15m overflow)

- ❄️ [Strict Enforcement of 'using'](https://github.com/rbuckton/proposal-using-enforcement) for Stage 1 or 2 ([slides](https://1drv.ms/p/s!AjgWTO11Fk-TkqpmyWWWHf6TPYt2gg?e=fPIwaL&nav=eyJzSWQiOjI1NiwiY0lkIjoyMTg5ODA3Nzk5fQ), [spec](https://rbuckton.github.io/proposal-using-enforcement/)) (30m, Ron Buckton)
- Stop coercing things pt 4 ([slides](https://docs.google.com/presentation/d/1aumShXqYgQV38Bg_L3FfJvGKIupJVCxs_C-Iz3r_tRE/edit)) (45m, Kevin Gibbons)
- 🔁 joint iteration: confirm our stance on #1 (cont'd) (10m, Michael Ficarra)
- 🔁 [Make eval-introduced global vars redeclarable](https://github.com/tc39/proposal-redeclarable-global-eval-vars) for stage ~~2.7~~ 3 ([slides](https://docs.google.com/presentation/d/1p--DB6SNlDv5XOn9g4bmwoymYQ93VWK_RDrCHLJJd60/edit?usp=sharing)) (3m, Shu-yu Guo)
- 🔁 [Extractors](https://github.com/tc39/proposal-extractors) for Stage 2 (cont'd) ([spec](https://tc39.es/proposal-extractors/), [slides](https://1drv.ms/p/s!AjgWTO11Fk-TkqpinLRBZZwud0rM9w?e=s7hKoI)) (20m, Ron Buckton)
- 🔒⌛️ [Signals](https://github.com/proposal-signals/proposal-signals) for Stage 1 (45m, Daniel Ehrenberg and Jatin Ramanathan)
- Incubation call chartering (15m on the last day)

</details>

***

## Overflow

### From agenda

### Timebox overrun

## Schedule constraints

- Ron Buckton will not be present on Day 1 of the plenary (April 8), but would like to be present for (w/highest priority first) Shared structs discussion, Pattern Matching, R&T, `Atomics.microwait()`, and Signals.
- Nicolò Ribaudo will not be available on Day 4, and would like to be present for (sorted by priority) ESM source phase, module sync assert, R&T.
- The changes for Trusted Types presentation should be before Array.isTemplateObject, ideally in the same day
- Eemeli Aro will not be present on Day 2 of the plenary (April 9).
- Ross Kirsling will only be available during the first hour of each day.
- Jesse Alama prefers to present the decimal presentation sometime in the first two hours. Any day is fine. A co-presenter in Asia (TC39 delegate from Albibaba) will make a 5-minute contribution during the decimal presentation, hence the request to have the presentation within the first two hours.
- Justin Ridgewell will not be available to present AsyncContext on day 1 (April 8).
- Andreu Botella will not be available for the first two hours of day 4 (April 11), and would like to be present for AsyncContext.
- As much as possible, Signals should not move day/time

<style>summary { font-weight: bold; }</style>