Skip to content

Editorial: introduce figures with a description - #4003

Merged
ljharb merged 1 commit into
tc39:mainfrom
nicolo-ribaudo:figure-intros
Nov 3, 2026
Merged

ljharb merged 1 commit into
tc39:mainfrom
nicolo-ribaudo:figure-intros

Conversation

@nicolo-ribaudo

Copy link
Copy Markdown
Member

tc39/ecmarkup#664 changes the position of figure captions to be below rather than above, meaning that some figures would suddenly appear in the text with no introduction:

image

This PR ensures that we always start with a paragraph introducing what the figure is about.

@github-actions

Copy link
Copy Markdown

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

Comment thread spec.html Outdated
<p>Every object created by a constructor has an implicit reference (called the object's <em>prototype</em>) to the value of its constructor's *"prototype"* property. Furthermore, a prototype may have a non-*null* implicit reference to its prototype, and so on; this is called the <em>prototype chain</em>. When a reference is made to a property in an object, that reference is to the property of that name in the first object in the prototype chain that contains a property of that name. In other words, first the object mentioned directly is examined for such a property; if that object contains the named property, that is the property to which the reference refers; if that object does not contain the named property, the prototype for that object is examined next; and so on.</p>
<p>In a class-based object-oriented language, in general, state is carried by instances, methods are carried by classes, and inheritance is only of structure and behaviour. In ECMAScript, the state and methods are carried by objects, while structure, behaviour, and state are all inherited.</p>
<p>All objects that do not directly contain a particular property that their prototype contains share that property and its value. <emu-xref href="#figure-1"></emu-xref> illustrates this:</p>
<emu-figure id="figure-1" caption="Object/Prototype Relationships">

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.

what a terrible id

Comment thread spec.html
<img alt="An image of lots of boxes and arrows." height="354" src="img/figure-1.svg" width="719">
</emu-figure>
<p>In a class-based object-oriented language, in general, state is carried by instances, methods are carried by classes, and inheritance is only of structure and behaviour. In ECMAScript, the state and methods are carried by objects, while structure, behaviour, and state are all inherited.</p>
<p>All objects that do not directly contain a particular property that their prototype contains share that property and its value. Figure 1 illustrates this:</p>

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.

A hard-coded figure number?! 😱

@michaelficarra michaelficarra added the ready to merge Editors believe this PR needs no further reviews, and is ready to land. label Oct 25, 2026
Comment thread spec.html Resolved
Comment thread spec.html Resolved
@michaelficarra michaelficarra removed the ready to merge Editors believe this PR needs no further reviews, and is ready to land. label Oct 26, 2026
@nicolo-ribaudo
nicolo-ribaudo force-pushed the figure-intros branch 2 times, most recently from 6d08633 to 9303cba Compare October 26, 2026 16:38
@nicolo-ribaudo

Copy link
Copy Markdown
Member Author

Done, thanks @gibson042 for suggesting the wording.

@michaelficarra michaelficarra added the ready to merge Editors believe this PR needs no further reviews, and is ready to land. label Oct 26, 2026
Co-authored-by: Nicolò Ribaudo <nribaudo@igalia.com>
Co-authored-by: Richard Gibson <richard.gibson@gmail.com>
@ljharb
ljharb merged commit 1c5d5e1 into tc39:main Nov 3, 2026
10 checks passed
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.

5 participants