00:27:06  <ljharb>devsnek: i do note that https://tc39.github.io/ecma262/#sec-resolveexport seems to be missing an assertion that it *is* a List
00:27:31  <devsnek>🤷
00:27:37  <ljharb>same with https://tc39.github.io/ecma262/#sec-getexportednames for `exportStarSet`
00:48:02  * nilsetjoined
00:52:40  * nilsetquit (Ping timeout: 268 seconds)
01:25:51  * Havvyquit (Remote host closed the connection)
01:26:12  * Havvyjoined
01:33:01  * nilsetjoined
01:44:39  * aki_joined
01:45:30  * akirosequit (Ping timeout: 244 seconds)
01:45:31  * aki_changed nick to akirose
02:33:07  * nilsetquit (Ping timeout: 240 seconds)
03:37:20  * wuz_joined
03:41:43  * wuz_quit (Ping timeout: 245 seconds)
03:50:54  * aki_joined
03:51:55  * akirosequit (Ping timeout: 246 seconds)
03:51:55  * aki_changed nick to akirose
03:53:59  * spectranaut_quit (Quit: No Ping reply in 180 seconds.)
03:55:04  * spectranautjoined
04:29:45  * nilsetjoined
04:34:13  * nilsetquit (Ping timeout: 245 seconds)
05:33:38  * jmdyckquit (Quit: Leaving.)
05:40:00  * nilsetjoined
05:41:07  * howdoijoined
05:57:04  * aki_joined
05:57:56  * akirosequit (Ping timeout: 250 seconds)
05:57:57  * aki_changed nick to akirose
06:03:01  * jwaldenquit (Quit: ChatZilla 0.9.92-rdmsoft [XULRunner 35.0.1/20150122214805])
07:47:55  <nilset>is it a bug if greedy parsing of grammar productions leads to a misparse? or is the a parser supposed to be trying different paths to see if a parse is possible?
07:49:51  <nilset>for example, a greedy parsing of MultiLineComment will put the `*` in the closing `*/` at the end of MultiLineCommentChars, making it fail to match the literal
07:51:31  <nilset>the grammar does prevent the MultiLineCommentChars production from consuming the `/` but it is allowed to consume the `*`
08:03:16  * aki_joined
08:04:13  * akirosequit (Ping timeout: 244 seconds)
08:04:13  * aki_changed nick to akirose
08:04:27  <nilset>i think making PostAsteriskCommentChars be not optional in both places resolves the ambiguity
08:05:07  <nilset>since then an asterisk in the body of a comment must always be followed by a non slash
08:05:16  <ljharb>nilset: i'd email es-discuss asking; if nobody knows then maybe you could file an issue on the spec
08:07:10  <nilset>i feel like a pr is more likely to get the attention of people who know?
08:07:58  <ljharb>i think they're all equally likely, but a PR is unnecessary if there's a reason it's the way it is
08:08:58  <nilset>ok, but do you know in general id its expected that a parser would need to backtrack from a valid inner production to make a valid outer prodiction?
08:09:57  <ljharb>i don't believe backtracking is ever needed, but i do believe there's cases where you have to hold multiple possibilities until you encounter a disambiguator
08:10:03  <ljharb>grammar's not my specialty thoh
10:09:15  * akirosequit (Ping timeout: 244 seconds)
10:13:13  * akirosejoined
10:20:53  * nilsetquit (Ping timeout: 245 seconds)
10:45:27  * nilsetjoined
10:49:47  * nilsetquit (Ping timeout: 240 seconds)
12:21:03  * akirosequit (Ping timeout: 246 seconds)
12:21:45  * akirosejoined
12:46:11  * nilsetjoined
12:51:37  * nilsetquit (Ping timeout: 246 seconds)
13:41:28  * jmdyckjoined
14:04:54  * AtumTjoined
14:27:28  * aki_joined
14:28:23  * akirosequit (Ping timeout: 245 seconds)
14:28:23  * aki_changed nick to akirose
14:42:21  * nilsetjoined
14:46:27  * nilsetquit (Ping timeout: 240 seconds)
15:40:07  * bradleymeckperks up
15:41:03  <devsnek>nilset: it's correct. for example, parsing an arrow function in most parsers is parsing a comma separated list until it hits => or whatever
15:45:04  <bradleymeck>nilset the lexing changes slightly depending on which production you are in, however, Comments are dropped before even being passed to syntactic grammar at the lexical level. I'm not sure i understand your comment about valid outer production here.
15:45:59  <bradleymeck>PostAsteriskCommentChars would be optional but if you reach EOF then MultiLineComment will fail
16:02:24  <jmdyck>nilset: "is it a bug if greedy parsing of grammar productions leads to a misparse?" It's a bug in the parser, not the grammar. (Well, there *might* be a bug in the grammar, but a greedy parser isn't going to prove that it's there.)
16:04:39  * jwaldenjoined
16:05:54  <jmdyck>If we made PostAsteriskCommentChars non-optional, then /* foo **/ wouldn't parse.
16:09:06  <jmdyck>The greedy choice is not always the correct choice, so if your parser is greedy, it must be prepared to backtrack.
16:09:40  * nilsetjoined
16:10:10  <jmdyck>ah, nilset, you have some replies since you left
16:19:37  * howdoiquit (Quit: Connection closed for inactivity)
16:35:09  * aki_joined
16:35:22  * akirosequit (Ping timeout: 250 seconds)
16:35:25  * aki_changed nick to akirose
16:37:26  <nilset>jmdyck: thanks, yeah i did notice the problem with /* foo **/ last night
16:40:36  <nilset>jmdyck: given this line in the spec "Because a single-line comment can contain any Unicode code point except a LineTerminator code point, and because of the general rule that a token is always as long as possible, a single-line comment always consists of all code points from the // marker to the end of the line."
16:41:07  <nilset>i think greedyness is expected though? although a production inside the comment grammar is not exactly a token
16:43:20  <nilset>otoh you can argue that including the * is longer than possible since that means it doesnt parse higher up the tree
16:52:57  <devsnek>nilset: /* */ is a multiline
16:53:07  <devsnek>even if its contained with in a single line
16:53:12  <devsnek>within*
16:59:49  <nilset>devsnek: yes, my point was just about the aside describing a general rule that a token is always as long as possible
17:00:15  <devsnek>oh i see what you're saying
17:03:54  <jmdyck>I think you've got 2 different ideas of greediness there: one is a strategy for choosing between the RHSs of a production (in a recursive-descent parser, say), and the other is the mandate to choose the longest possible token.
17:04:04  <jmdyck>The first doesn't necessarily lead to the second.
17:19:49  <nilset>i think the trick is that only the current goal symbol is supposed to be as long as possible
17:27:50  <bradleymeck>nilset: it always consumes the longest possible amount of tokens regardless of which production is being used in the lexical grammar: " The source text is scanned from left to right, repeatedly taking the longest possible sequence of code points as the next input element"
17:35:29  <jmdyck>nilset: current goal symbol of the lexical parser, yes.
17:37:18  <jmdyck>(syntactic parser doesn't have that rule.)
17:48:47  * rektidequit (Ping timeout: 240 seconds)
18:00:47  * nilsetquit (Ping timeout: 250 seconds)
18:41:46  * aki_joined
18:42:46  * akirosequit (Ping timeout: 250 seconds)
18:42:46  * aki_changed nick to akirose
19:04:00  * nilsetjoined
19:09:43  * nilsetquit (Ping timeout: 268 seconds)
19:10:12  * nilsetjoined
19:36:07  * nilsetquit (Ping timeout: 250 seconds)
19:49:11  * nilsetjoined
20:00:44  * keith_millerjoined
20:08:55  * wuzjoined
20:09:41  * wuzpart
20:10:02  * wuz_joined
20:10:08  <wuz_>Hello again!
20:11:36  * AtumT_joined
20:14:47  * AtumTquit (Ping timeout: 244 seconds)
20:15:09  * jorydotcomjoined
20:16:43  * jorydotcomquit (Client Quit)
20:17:36  * jorydotcomjoined
20:18:23  * jorydotcomquit (Client Quit)
20:18:24  * wuz_quit (Ping timeout: 244 seconds)
20:19:26  * jorydotcomjoined
20:20:17  * jorydotcomquit (Client Quit)
20:25:34  * nilsetquit (Ping timeout: 268 seconds)
20:25:54  * AtumTjoined
20:26:18  * AtumT_quit (Ping timeout: 245 seconds)
20:47:37  * aki_joined
20:47:58  * akirosequit (Ping timeout: 245 seconds)
20:47:58  * aki_changed nick to akirose
20:54:40  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:55:10  * keith_millerjoined
20:55:12  * keith_millerquit (Client Quit)
21:01:07  * keith_millerjoined
22:54:27  * akirosequit (Ping timeout: 240 seconds)
22:56:30  * akirosejoined
22:59:38  * AtumTquit (Quit: AtumT)