22:48
<Justin Ridgewell>
Do we define what "present" means when it comes to AO params? Eg, I want to call https://tc39.es/ecma262/multipage/ordinary-and-exotic-objects-behaviours.html#sec-createbuiltinfunction and pass prefix, but don't want to pass realm or prototype.
22:48
<Justin Ridgewell>
Can I pass empty, and have these not be "present"
22:50
<littledan>
I don't think we have spec syntax for that, but it seems like it'll just be two lines of copy pasta to hack through it...
22:50
<ljharb>
it's defined, and no
22:50
<ljharb>
in Foo(_a_) vs Foo(_a_, _b_), b is not present in the first call. you have to branch and do two different invocations to the AO if you want to trigger "not present".
22:54
<Justin Ridgewell>
Where is it defined?
22:56
<Justin Ridgewell>
It's not in https://tc39.es/ecma262/multipage/notational-conventions.html#sec-notational-conventions, where I expected it
23:08
<Michael Ficarra>
AO parameter lists are described in the second paragraph of https://tc39.es/ecma262/multipage/notational-conventions.html#sec-algorithm-conventions
23:10
<Michael Ficarra>
we don't expand on the phrasing "is present" or "is not present", though we could if people find that confusing
23:10
<Michael Ficarra>
personally, I think it's pretty self-explanatory
23:11
<Michael Ficarra>
also, you can ask these kinds of questions in #tc39-editors:matrix.org
23:11
<Michael Ficarra>
if we add a <dfn> for it, then all the usages throughout the spec will link
23:13
<Michael Ficarra>
note that this phrasing is used both for positional AO parameter lists and optional terms in SDO grammar productions
23:13
<Justin Ridgewell>
also, you can ask these kinds of questions in #tc39-editors:matrix.org
"You do not have permission to post to this room"
23:13
<Michael Ficarra>
oh nooo
23:13
<Justin Ridgewell>
:sad trombone:
23:14
<Michael Ficarra>
🤔 I thought everyone who could post here could also post there
23:17
<Justin Ridgewell>

as in you'd prefer to do the manual List creation at the callsites
https://matrix.to/#/!nSLHQtIRJQxUJbEuGt:matrix.org/$l72R7TLaZX7Azd1F2whqM8jwErqy6Grx0tHr4PUaPDw?via=matrix.org&via=igalia.com

How do I reference an abstract closures dynamic arguments list?

23:17
<Justin Ridgewell>

do we have any use cases in 262 rn that could take advantage of that? if not, i'd assume the only reason not to so far was "it hasn't come up"
https://matrix.to/#/!nSLHQtIRJQxUJbEuGt:matrix.org/$v9_1LOpt83mI-ksAomfZUvYeaA9lxJg1TyUheVCuWm0?via=matrix.org&via=igalia.com

Both AsyncContext and String.dedent proposals want this

23:23
<Michael Ficarra>
yeah it sounds like the whole editor group is on board with using ellipsis in AC parameter lists, and if you want to use them in CBF, you just need to update the prose in CBF to support it
23:24
<Justin Ridgewell>
What's CBF?
23:25
<Michael Ficarra>
CreateBuiltinFunction
23:25
<Michael Ficarra>
sorry I have no idea how much context you have from the editor channel lol
23:27
<Justin Ridgewell>
How does modifying CBF's prose help with the AC parameter list?
23:28
<Justin Ridgewell>
Isn't this an issue with ecmarkup's linting?
23:41
<Michael Ficarra>
at the moment, AC parameter lists are, as specified, technically compatible with the ellipsis notation, but we've never used it so we didn't notice that ecmarkup doesn't support it
23:43
<Michael Ficarra>
but if you wanted to pass such an AC to CBF (which I'm assuming is what you meant by "Both AsyncContext and String.dedent proposals want this"), then you will need to modify the CBF prose to support ACs with that kind of parameter list