<!-- .slide: class="igalia-text-medium" --> # Notation support for `PluralRules` #### Ujjwal Sharma (Igalia x Google) #### TC39 April 2025 --- <!-- .slide: class="igalia-align-left" --> **PROBLEM** `Intl.PluralRules` doesn't take the notation into account. --- # History --- May 2018: [Unified NumberFormat added notations to `NumberFormat`](https://github.com/tc39/proposal-unified-intl-numberformat/issues/5) ![](https://notes.igalia.com/uploads/f311095c-2a95-470c-bbd7-e94b9c14d46c.png) --- Jan 2020: [We wanted to support them in `PluralRules` too](https://github.com/tc39/ecma402/issues/399) ![](https://notes.igalia.com/uploads/73a52e3f-3328-4a17-8b07-89a81ce261d3.png) --- ![](https://notes.igalia.com/uploads/4557691c-90b2-4656-9bd4-1d9e2102ae70.png) --- <!-- .slide: class="igalia-align-left" --> **SOLUTION** If we set a `[[Notation]]` slot in `PluralRules`, we can pass it into `ResolvePlural`. --- April 2025: [A minimal solution](https://github.com/tc39/ecma402/pull/989) ๐Ÿ› ๏ธ ```diff - 1. Perform ? SetNumberFormatDigitOptions(_pluralRules_, _options_, 0, 3, *"standard"*). + 1. Let _notation_ be ? GetOption(_options_, *"notation"*, ~string~, ยซ ... ยป, *"standard"*). + 1. Set _pluralRules_.[[Notation]] to _notation_. + 1. Perform ? SetNumberFormatDigitOptions(_pluralRules_, _options_, 0, 3, _notation_). ``` --- April 2025: TG2 Approval ๐Ÿง™โ€โ™‚๏ธ --- Consensus? --- # Thank you! ๐Ÿ™ --- ### Proposed conclusion for the notes Normative PR [ecma402#989](https://github.com/tc39/ecma402/pull/989) was presented to the committee for consensus, this PR adds support for a notation option in the `PluralRules` constructor for handling different non-standard notations.
{"title":"Notation support for PluralRules","type":"slide","slideOptions":{"transition":"slide","theme":"igalia","controlsLayout":"edges","slideNumber":"c/t"}}