Skip to content
This repository was archived by the owner on Jan 26, 2022. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -1289,7 +1289,6 @@ See [Term rewriting][].
[“don’t shoot me in the foot”]: ./goals.md#dont-shoot-me-in-the-foot
[“make my code easier to read”]: ./goals.md#make-my-code-easier-to-read
[`??:`]: https://github.com/tc39/proposal-nullish-coalescing/pull/23
[`do` expression]: ./relations.md#do-expressions
[`do` expressions]: ./relations.md#do-expressions
[`for` iteration statements]: https://tc39.github.io/ecma262/#sec-iteration-statements
[`in` relational operator]: https://tc39.github.io/ecma262/#sec-relational-operators
Expand Down Expand Up @@ -1518,4 +1517,4 @@ See [Term rewriting][].
[WHATWG-stream piping]: https://streams.spec.whatwg.org/#pipe-chains
[Wikipedia: term rewriting]: https://en.wikipedia.org/wiki/Term_rewriting
[zero runtime cost]: ./goals.md#zero-runtime-cost


16 changes: 3 additions & 13 deletions relations.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ Living Document. J. S. Choi, 2018-12.
- [Pattern matching](#pattern-matching)
- [Block parameters](#block-parameters)
- [Topic metaprogramming references](#topic-metaprogramming-references)
- [`do` expressions](#do-expressions-1)
- [Private class fields, class decorators, nullish coalescing, and optional chaining](#private-class-fields-class-decorators-nullish-coalescing-and-optional-chaining)
- [Alternative pipeline Babel plugin](#alternative-pipeline-babel-plugin)
- [Alternative pipeline proposals](#alternative-pipeline-proposals)
Expand Down Expand Up @@ -219,7 +218,7 @@ same value. This can be useful for embedding side effects, `if` `else`
statements, `try` statements, and `switch` statements within pipelines.
They may be made even pithier with [Additional Feature BP][], explained later.

However, smart pipelines do not depend on `do` expressions, with the exception
Smart pipelines do not depend on `do` expressions, with the exception
of [Additional Feature BP][].

## Function binding
Expand Down Expand Up @@ -1243,14 +1242,6 @@ select ('world') {
};
```

## `do` expressions
Because pipeline [topic style][] supports [arbitrary expressions][expressive
versatility], when [`do` expressions][] are added to JavaScript they too will be
supported within pipeline steps. When this occurs, topic references would be
allowed within inner `do` expressions, along with arrow functions and `if` and
`try` statements. [Additional Feature BP][] would extend this further, also
supporting pipeline-step blocks that act nearly identically to `do` expressions.

## Private class fields, class decorators, nullish coalescing, and optional chaining
This proposal’s compatibility with these four proposals depends on its choice of
tokens for its topic references, such as `#`/`##`/`###`/`...`, `@`/`@@`/`@@@`,
Expand Down Expand Up @@ -1376,8 +1367,7 @@ proposals in a uniform manner.
["don’t shoot me in the foot"]: ./goals.md#dont-shoot-me-in-the-foot
["make my code easier to read"]: ./goals.md#make-my-code-easier-to-read
[`??:`]: https://github.com/tc39/proposal-nullish-coalescing/pull/23
[`do` expression]: ./relations.md#do-expressions
[`do` expressions]: ./relations.md#do-expressions
[`do` expressions]:<https://github.com/tc39/proposal-do-expressions>
[`for` iteration statements]: https://tc39.github.io/ecma262/#sec-iteration-statements
[`in` relational operator]: https://tc39.github.io/ecma262/#sec-relational-operators
[`match` expressions]: ./relations.md#pattern-matching
Expand Down Expand Up @@ -1605,4 +1595,4 @@ proposals in a uniform manner.
[WHATWG-stream piping]: https://streams.spec.whatwg.org/#pipe-chains
[Wikipedia: term rewriting]: https://en.wikipedia.org/wiki/Term_rewriting
[zero runtime cost]: ./goals.md#zero-runtime-cost