15:54 | <jschoi> | ljharb: Regarding https://github.com/tc39/proposal-pipeline-operator/issues/262#issuecomment-1036323490, However, |
15:55 | <jschoi> | Also, source |> a => # + a |> output(#) is invalid because arrow functions (and all other non-pipe AssignmentExpressions) must be parenthesized in pipe bodies to prevent confusing grouping. |
16:02 | <ljharb> | Thanks, the rules are straightforward but that doesn’t mean contrived examples are intuitive :-) |
18:46 | <jschoi> | We have banned I think we should also ban |
18:55 | <TabAtkins> | yes |
19:14 | <jschoi> | Should we ban a = b |> # and require (a = b) |> # or a = (b |> #) ? |
19:14 | <jschoi> | And should we ban a => b |> # and require (a => b) |> # or a => (b |> #) ? |
19:16 | <jschoi> | And should we ban yield a |> # and require (yield a) |> # or yield (a |> #) ? |
19:17 | <jschoi> | My inclination is no: the ternary operator is special and has special opportunity for confusion, but = , => , and yield are okay to have “looser” precedence than |> . |
19:18 | <jschoi> | (Note: We do already ban all three of these operators in pipe bodies: a |> b = # , a |> b => # , and a |> yield # are all SyntaxErrors.) |
19:28 | <TabAtkins> | Agree on all counts; those all read reasonably to me as the head of statements (assuming that for all of them the pipe binds tighter, producing the second parenthesized example) |
19:33 | <jschoi> | Yeah. |
19:33 | <jschoi> | The precedence relationships between
|
21:49 | <jschoi> | Regarding the topic token: Based on https://github.com/tc39/proposal-record-tuple/issues/10#issuecomment-1036648269, it seems like ljharb would push back against # and @@ . If this is strongly felt, it seems like ^^ and %% may be the top contenders (or at least the least offensive) within the Committee. |
22:09 | <ljharb> | i haven't decided how strong i feel about it, but i don't think @ is better than # |
22:10 | <ljharb> | i do prefer a single token over a double one tho |