Skip to content

Editorial: Clean up Well-Known Intrinsic Objects table - #3881

Merged
ljharb merged 2 commits into
tc39:mainfrom
linusg:clean-up-intrinsics
Jun 2, 2026
Merged

Editorial: Clean up Well-Known Intrinsic Objects table#3881
ljharb merged 2 commits into
tc39:mainfrom
linusg:clean-up-intrinsics

Conversation

@linusg

@linusg linusg commented Jun 2, 2026

Copy link
Copy Markdown
Member

Closes #3836.

When we discussed this there was skepticism about using strings for the Global Name column due to the amount of visual noise but ultimately I prefer it over the monospace rendering because property names are represented as strings across the spec. Monospace rendering works best for informal mention of functions in prose IMO.

There's little precedent but at least https://tc39.es/ecma262/#sec-common-iteration-interfaces contains tables with property names in a similar fashion.

We could possibly use this column to replace the hand-wavy Let name be the String value of the property name. in SetDefaultGlobalBindings in the future (but might have to introduce a third table for the value properties to do so).

Before After
image image

Comment thread spec.html
<emu-clause id="sec-value-properties-of-the-global-object-infinity">
<h1>Infinity</h1>
<p>The value of `Infinity` is *+∞*<sub>𝔽</sub> (see <emu-xref href="#sec-ecmascript-language-types-number-type"></emu-xref>). This property has the attributes { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *false* }.</p>
<p>The initial value of the *"Infinity"* property of the global object is *+∞*<sub>𝔽</sub> (see <emu-xref href="#sec-ecmascript-language-types-number-type"></emu-xref>).</p>

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't quite like it but "initial value" is used for non-writable non-configurable properties all over the place. Potential for future cleanup.

@github-actions

github-actions Bot commented Jun 2, 2026

Copy link
Copy Markdown

The rendered spec preview for this PR is available as a single page at https://tc39.es/ecma262/pr/3881 and as multiple pages at https://tc39.es/ecma262/pr/3881/multipage .

@michaelficarra michaelficarra left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome!

@nicolo-ribaudo nicolo-ribaudo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I was one of those worried about visual noise, but it actually does not look bad :)

@gibson042 gibson042 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@michaelficarra michaelficarra added the ready to merge Editors believe this PR needs no further reviews, and is ready to land. label Jun 2, 2026
@ljharb
ljharb force-pushed the clean-up-intrinsics branch from 0902256 to c0a2b1a Compare June 2, 2026 21:17
@ljharb
ljharb merged commit c0a2b1a into tc39:main Jun 2, 2026
10 checks passed
@linusg
linusg deleted the clean-up-intrinsics branch June 3, 2026 10:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

editorial change ready to merge Editors believe this PR needs no further reviews, and is ready to land.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Inconsistent styling of globals in the intrinsics table

5 participants