00:08:16  * michaelficarraquit (Quit: michaelficarra)
00:16:37  * sffcquit (Ping timeout: 268 seconds)
00:38:35  * rxmarblesjoined
00:42:07  * rmarkinsquit (Ping timeout: 240 seconds)
00:43:06  * rxmarblesquit (Ping timeout: 250 seconds)
00:47:59  * rmarkinsjoined
00:50:50  * gibson042quit (Quit: Leaving.)
00:51:10  * keith_millerjoined
00:52:08  * rmarkinsquit (Ping timeout: 245 seconds)
01:19:34  * akirosequit (Ping timeout: 244 seconds)
01:20:45  * akirosejoined
02:18:27  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:37:23  * keith_millerjoined
02:42:19  * jridgewellquit (Quit: Connection closed for inactivity)
02:58:48  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:17:59  * keith_millerjoined
03:18:09  * keith_millerquit (Remote host closed the connection)
03:18:30  * keith_millerjoined
03:19:21  * Draggorquit (Quit: WeeChat 2.2)
03:26:28  * aki_joined
03:27:42  * akirosequit (Ping timeout: 244 seconds)
03:27:42  * aki_changed nick to akirose
03:34:39  * michaelficarrajoined
03:40:36  * Sirisianjoined
03:43:06  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:47:16  <Sirisian>rbuckton, Question. These: https://github.com/bterlson/ecmarkup/issues/150 https://github.com/bterlson/ecmarkup/issues/133 should be moved to your grammarkdown repo right? I finally cloned ecmarkup to find who to talk to about these issues. Had no idea how many separate projects there were.
03:57:22  * howdoijoined
04:05:23  * rmarkinsjoined
04:05:39  * rmarkinsquit (Remote host closed the connection)
04:06:14  * rmarkinsjoined
04:07:31  * keith_millerjoined
04:13:33  * michaelficarraquit (Quit: michaelficarra)
04:13:48  * michaelficarrajoined
04:15:13  * Draggorjoined
04:21:12  * michaelficarraquit (Quit: michaelficarra)
04:21:25  * michaelficarrajoined
04:24:41  * jwaldenquit (Quit: g'night til tomorrow)
04:30:53  * rmarkins_joined
04:34:27  * rmarkinsquit (Ping timeout: 240 seconds)
04:36:20  * rmarkins_quit (Quit: Leaving...)
04:36:37  * rmarkinsjoined
04:47:48  <Sirisian>hmm, actually some of those ins and del work now. I updated my ecmarkup the other day after not updating in a while. Noticing a few tests in that repo specifically for testing inline ins and del.
04:52:18  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:58:13  * Draggorquit (Quit: WeeChat 2.2)
04:59:03  * Draggorjoined
04:59:38  <rbuckton>Sirisian: Most likely, yes.
05:01:28  <Sirisian>I'm creating more examples. That 26 issue fixed some things. There's some oddity with <emu-prodref name=MemberDefinition></emu-prodref> not copying the ins though. Not sure whose bug that is. I'll clean up my issue more.
05:08:00  <Sirisian>ah that makes sense. The ins is placed on the outside so ecmarkup doesn't copy it. This is all coming together.
05:19:10  * michaelficarraquit (Quit: michaelficarra)
05:26:34  * rmarkinsquit (Remote host closed the connection)
05:27:08  * rmarkinsjoined
05:29:01  <Sirisian>There I cleaned up the issues with examples and current output and expected output.
05:31:19  * rmarkinsquit (Read error: Connection reset by peer)
05:31:26  * rmarkins_joined
05:33:32  * aki_joined
05:34:17  * akirosequit (Ping timeout: 244 seconds)
05:34:17  * aki_changed nick to akirose
05:36:16  * rmarkins_quit (Ping timeout: 272 seconds)
05:39:39  * jmdyckquit (Remote host closed the connection)
05:45:49  * keith_millerjoined
06:27:16  * Havvyquit (Read error: Connection reset by peer)
06:28:05  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
06:31:59  * Havvyjoined
07:30:40  * keith_millerjoined
07:40:26  * akirosequit (Ping timeout: 240 seconds)
07:41:26  * akirosejoined
08:31:58  <annevk>ljharb: I don't care strongly, but given that TC39 already decided to do something with respect to https://github.com/tc39/ecma262/issues/1417 shouldn't that be tracked somehow?
09:47:38  * aki_joined
09:48:23  * akirosequit (Ping timeout: 245 seconds)
09:48:23  * aki_changed nick to akirose
10:51:33  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:53:47  * aki_joined
11:55:18  * akirosequit (Ping timeout: 268 seconds)
11:55:19  * aki_changed nick to akirose
12:19:16  * jmdyckjoined
12:53:13  * graingertchanged nick to usualrise
12:53:34  * usualrisechanged nick to graingert
12:55:49  * cloudshuquit (Quit: Connection closed for inactivity)
13:59:28  * aki_joined
14:00:28  * akirosequit (Ping timeout: 245 seconds)
14:00:28  * aki_changed nick to akirose
15:02:55  * jwaldenjoined
15:03:23  * gibson042joined
15:10:34  * michaelficarrajoined
15:31:52  * Nimelrianjoined
15:35:49  * michaelficarraquit (Read error: Connection reset by peer)
15:35:59  * michaelficarrajoined
15:57:10  * michaelficarraquit (Quit: michaelficarra)
15:59:51  * rmarkinsjoined
16:00:01  * rmarkinsquit (Remote host closed the connection)
16:00:40  * rmarkinsjoined
16:05:39  * aki_joined
16:06:06  * akirosequit (Ping timeout: 250 seconds)
16:06:06  * aki_changed nick to akirose
16:19:58  * jorydotcomquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:26:40  * howdoiquit (Quit: Connection closed for inactivity)
16:31:42  * plumajoined
16:36:51  * jorydotcomjoined
16:41:07  * gibson042quit (Quit: Leaving.)
16:48:08  * DblVsjoined
16:49:16  * rmarkinsquit (Remote host closed the connection)
16:49:50  * rmarkinsjoined
16:53:56  * rmarkinsquit (Ping timeout: 240 seconds)
16:58:20  * keith_millerjoined
16:58:37  * michaelficarrajoined
17:02:41  * jridgewelljoined
17:15:08  <ljharb>annevk: if you mean https://github.com/tc39/ecma262/issues/1417#issuecomment-454810957 then that should be tracked on the builtin modules proposal; personally i'd rather just see the globals added
17:16:42  * gibson042joined
17:18:38  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:20:53  * gibson042quit (Ping timeout: 245 seconds)
17:21:35  <Nimelrian>Has there ever been a proposal to introduce "single expression functions"? e.g. function foo(bar) = bar.baz which would simply be syntactic sugar for function foo(bar) { return bar.baz; }
17:24:15  <ljharb>Nimelrian: `const foo = bar => bar.baz`?
17:24:34  <Nimelrian>The problem with arrow functions would be that they don't get hoisted
17:25:30  <bterlson>flags #tc39 jorydotcom +V
17:25:40  <Nimelrian>So if I want to extract some single expression implementation details into a function to leverage e.g. declarative functional programming, I can't put those arrow function definitions at the bottom of the file / current scope
17:26:05  * cloudshujoined
17:26:31  <devsnek>just put it at the top instead
17:26:34  <Nimelrian>At the same time, writing a full function declaration is very verbose when all I want is to give a name to a single expression
17:26:35  <ljharb>Nimelrian: hmm, many style guides forbid relying on hoisting (ie, using functions before they're defined) - and i'm not sure the ordering of the functions is a part of "declarative functional programming"?
17:26:50  <Nimelrian>It's more about hiding implementation details at the bottom
17:27:07  <devsnek>why would you hide code
17:27:08  <DblVs>const foo = () => bar.baz ?
17:27:29  <ljharb>Nimelrian: typically that's "hidden" by putting it in another module
17:27:30  <TabAtkins>Nimelrian: Use `var` if you want hoisting, no?
17:27:32  <Nimelrian>So when I open a file the first thing I see is the general flow with nice declarative names, without seeing the implementation details
17:27:38  <ljharb>TabAtkins: that won't hoist the definition
17:27:56  <ljharb>Nimelrian: so it sounds like what you want is effectively an arrow function declaration
17:28:10  <Nimelrian>Well, I want a hoisted arrow function declaration
17:28:13  <ljharb>i know why i wouldn't want that, but i'm not sure why ES6 didn't include that. anyone who was around at that time that can weigh in?
17:28:17  <TabAtkins>ljharb: It hoists the variable tho; what's the difference? (I'm sure there is one, but I don't know it.)
17:28:23  <ljharb>("declaration" implies "hoisted" to me)
17:28:28  <devsnek>ljharb: because they're only expressions
17:28:31  <Bakkot>TabAtkins: it won't be invokable before the declaration itself is reached
17:28:38  <ljharb>TabAtkins: `a(); var a = () => {};` throws because undefined isn't a function
17:28:39  <devsnek>if you want a declaration use a function declaration
17:28:59  <Nimelrian>I'll write a gist so you can see what I mean
17:29:00  <TabAtkins>Oh, yeah, of course.
17:29:01  * keith_millerjoined
17:29:13  * rmarkinsjoined
17:29:18  <Bakkot>Nimelrian: the lack of hoisting is very unlikely to be enough, on its own, to warrant new syntax
17:29:26  <TabAtkins>This has never been a problem for me, because I've only ever called them from inside other functions, so all I ever need is the reference-hoisting.
17:29:31  <DblVs>it's quite strange use case.
17:29:41  <devsnek>TabAtkins: you can do reference hoisting with let/const too
17:29:43  <Bakkot>especially given various workarounds, like "put the things you want to hide in another module and put the imports at the top"
17:29:47  <ljharb>^
17:29:52  <TabAtkins>devsnek: ???
17:29:54  <devsnek>`const a = () => b(); const b = () => 5; a()` is valid
17:29:56  <ljharb>that's what the airbnb style guide requires
17:30:06  <ljharb>TabAtkins: let/const hoist as well, they just have a TDZ
17:30:30  <TabAtkins>I didn't actually realize that!
17:30:31  <ljharb>TabAtkins: otherwise `var a = 3; { console.log(a); const a = 4; }` would log `3` instead of throwing
17:30:31  <TabAtkins>Cool.
17:30:52  <TabAtkins>Yeah, makes sense.
17:31:36  <DblVs>what i would like to see would be JS version pragma to be able to introduce breaking changes
17:32:08  <DblVs>^ that might be a bit controversial though
17:32:23  <devsnek>it was done once
17:32:26  <devsnek>with strict mode
17:32:40  <devsnek>and everyone agreed it was super annoying and shouldn't be done again
17:33:01  * rmarkinsquit (Remote host closed the connection)
17:33:06  <DblVs>well everyone uses 'use strict' now
17:33:09  <bterlson>DblVs: you basically have to show how you won't create a python 2 -> 3 situation
17:33:23  <bterlson>DblVs: not on the web, anyway
17:33:40  * rmarkinsjoined
17:34:07  <devsnek>plus engines dislike having to ship multiple versions of things
17:34:12  <bterlson>DblVs: A few years ago I found something like only half the top 100k sites were strict mode
17:34:17  <DblVs>my idea would have been per file basis of parsing the contents based on a pragma rather than switching the whole engine on start up
17:34:30  <bterlson>some percent of them were attempting strict mode but failing because the directive prologue got concatted into the middle of their program somewhere
17:34:44  <devsnek>there was a thing on mdn
17:35:04  <devsnek>https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode#Strict_mode_for_scripts
17:35:16  * gibson042joined
17:36:54  <DblVs>does any of you think that currently not being able to make breaking changes a bit difficult to build new things with ?
17:37:07  <bterlson>extremely difficult
17:37:25  <ljharb>extremely worth it tho
17:37:55  <DblVs>i just want to know whether its just me that thinks its a problem and finds the new features to be weird in a syntactially
17:38:00  <Bakkot>this comes up a lot; we should really get those docs which say "no more modes" published somewhere.
17:38:11  <DblVs>weird in syntactical way*
17:38:14  <Bakkot>DblVs: yeah, it's definitely a problem. it's just that pragmas are too painful of a fix, so we're just going to live with the problem.
17:40:12  <DblVs>i wish we could find a way to solve it, i guess me thinking about the pragma is just the first thing that came to my mind.
17:40:37  <Bakkot>wasm :D
17:40:42  <DblVs>^
17:40:52  <DblVs>brb in 20 min
17:42:09  <Nimelrian>Wrote a small gist: https://gist.github.com/Nimelrian/928987ab2270f996a9158283d06232c0
17:42:33  <Nimelrian>In regards to previous work: Kotlin and C# both support this way of defining functions
17:44:17  <devsnek>what's the problem in the gist
17:44:25  <devsnek>oh there are multiple files
17:45:00  <devsnek>Nimelrian: i think the problem is the disagreement of "unnecessary noise"
17:45:20  <Nimelrian>Sure, that's definitely a subjective matter
17:45:35  <devsnek>also interestingly, firefox had the exact syntax you are asking for
17:45:37  * DblVsquit (Ping timeout: 256 seconds)
17:45:40  <devsnek>old old firefox*
17:45:54  <Bakkot>did't have the `=`, but otherwise yes
17:45:57  <Bakkot>*didn't
17:46:10  <Bakkot>predates arrows, though; they would not have added them in a world with arrows
17:46:16  <devsnek>indeed
17:46:39  <devsnek>Nimelrian: if you define those functions outside the function, you can use arrows
17:46:59  <devsnek>`function getWhatever() {} const helper1 = (x) => x.y`
17:47:08  <Nimelrian>Yeah, but then they are unscoped and I like keeping stuff in the scope they are used in :/
17:47:52  <devsnek>seems like a lot just to move some code around that is only used once
17:48:02  <Nimelrian>And it wouldn't work for the getOrdersForUser function either because it uses the orderService parameter
17:48:14  <Nimelrian>So it'd have to take it as an additional parameter as well
17:49:16  <Bakkot>Nimelrian: these kinds of preferences, while valid, are not usually sufficient grounds for new syntax
17:49:16  * rilutjoined
17:49:45  <Nimelrian>tbh this isn't a problem for "traditional", more imperative Javascript code. But I'm more a fan of the functional side and other people who enjoy FP usually write code the same way.
17:50:20  <Nimelrian>I understand, that's why I came here to ask for general feedback before just going ahead and writing a whole proposal
17:50:32  <ljharb>Nimelrian: not sure how universal that is; myself and the airbnb styleguide both encourage and enjoy FP and never rely on hoisting to do it
17:52:08  <Bakkot>yeah, in Haskell I tend to use `let .. in` more than `where`, which essentially correspond to arrows-at-top and hoisting respectively
17:53:16  * TJ_joined
17:53:46  <rkirsling>Bakkot: really? I thought `let .. in` was more historical (ML-style) while `where` is meant to be ergonomic
17:54:11  * DblVsjoined
17:55:11  <Bakkot>rkirsling: /shrug; I don't know much about the general culture. I see both a lot in codebases I've touched.
17:55:15  <TabAtkins>I mean, they're basically just order-swapped variants, so which is more ergonomic kinda depends on what you're doing?
17:55:22  <rkirsling>no doubt
17:55:30  <Bakkot>also there's some semantic differences, yeah? `where` is more restricted in which contexts it's legal in?
17:55:32  <Nimelrian>I updated the gist with the arrows function outside of the scope
17:55:49  * rilutquit (Ping timeout: 256 seconds)
17:56:12  <rkirsling>Bakkot: ah yeah that's probably true
17:56:14  <bterlson>Suppose I still need +n (registered nicks only) on the channel? Maybe the spam wave of before is over...
17:56:53  <ljharb>you could turn it off, but in my experience it's easier to stick a "how to register" link in the topic and retain the restriction
17:57:05  * TJ_quit (Client Quit)
17:57:17  <bterlson>ljharb: hmm not a bad idea
17:57:28  * tjcrowderjoined
17:57:57  <rkirsling>yeah, it was *so* bad when it got bad, that it might be better to make sure it doesn't happen again
18:01:21  * chadhietalajoined
18:01:43  * jmdyckquit (Ping timeout: 245 seconds)
18:03:25  * jmdyckjoined
18:04:02  <DblVs>did i miss anything
18:05:06  <Bakkot>i would link you logbot, but it still seems dead (cc bterlson)
18:05:23  <Bakkot>nothing about your topic though
18:05:33  <bterlson>Bakkot: whattttt
18:05:47  <Bakkot>"The channel #tc39 is not logged."
18:06:02  * globbotjoined
18:06:02  <globbot>channel logging requested by bterlson: https://freenode.logbot.info/tc39
18:06:25  <devsnek>can we get the libuv slurper
18:06:33  <devsnek>it hasn't gone down in like 5 years
18:11:29  <DblVs>is it possible to create a FAQ ?
18:12:14  <Bakkot>for JS in general? we're working on some related things, I think, yes
18:12:20  <DblVs>im sure almost every person has wondered about the topic i spoke about. it would be waste of your time
18:13:26  * akirosequit (Ping timeout: 240 seconds)
18:14:23  * tjcrowderpart
18:16:11  * akirosejoined
18:24:08  <pouwerkerk>can people use mics?
18:24:48  * DblVsquit (Quit: Page closed)
18:25:03  <Nimelrian>Maybe I'll still put a mail in regarding the single expression functions. Can't hurt to have it floating around on a more slow platform. Though I can definitely understand if it wouldn't make the cut :)
18:25:49  * chicoxyzzyjoined
18:29:03  * chadhietalaquit (Quit: Page closed)
18:29:23  * chadhietalajoined
18:31:27  * chadhietalaquit (Client Quit)
18:31:56  * vikashjoined
18:32:20  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:35:52  * michaelficarraquit (Quit: michaelficarra)
18:45:39  * keith_millerjoined
18:55:58  * chicoxyzzyquit (Remote host closed the connection)
19:00:07  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:04:02  * keith_millerjoined
19:14:25  * michaelficarrajoined
19:38:12  * michaelficarraquit (Quit: michaelficarra)
19:41:47  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:46:11  * keith_millerjoined
19:53:54  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:05:18  * michaelficarrajoined
20:22:17  * aki_joined
20:22:47  * akirosequit (Ping timeout: 240 seconds)
20:22:50  * aki_changed nick to akirose
20:41:03  * jorydotcomquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:50:10  * keith_millerjoined
20:58:04  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:06:56  * Nimelrianquit (Ping timeout: 240 seconds)
21:09:46  * vikashquit (Changing host)
21:09:47  * vikashjoined
21:09:47  * vikashquit (Changing host)
21:09:47  * vikashjoined
21:33:26  * keith_millerjoined
21:43:48  * michaelficarraquit (Quit: michaelficarra)
21:48:43  * yaelhejoined
21:50:47  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:53:16  * keith_millerjoined
21:54:21  * AtumTjoined
21:54:56  * flibbjoined
21:57:44  * keith_millerquit (Client Quit)
22:00:03  * keith_millerjoined
22:01:15  * michaelficarrajoined
22:01:50  * keith_millerquit (Client Quit)
22:07:08  * vikashquit (Quit: Page closed)
22:07:39  * keith_millerjoined
22:08:20  * AtumT_joined
22:08:22  * AtumTquit (Ping timeout: 250 seconds)
22:08:52  * yaelhequit
22:11:27  * AtumT_quit (Client Quit)
22:11:43  * chicoxyzzyjoined
22:29:13  * akirosequit (Ping timeout: 245 seconds)
22:31:46  * akirosejoined
22:43:15  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:46:54  * keith_millerjoined
23:01:19  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
23:05:19  * kilroyjoined
23:15:09  * morguljoined
23:15:59  * kilroyquit (Quit: WeeChat 2.3)
23:27:26  * chicoxyzzyquit (Ping timeout: 240 seconds)
23:38:59  * plumaquit (Quit: Connection closed for inactivity)
23:42:37  * morgulquit (Ping timeout: 256 seconds)
23:43:43  * rmarkinsquit (Remote host closed the connection)
23:44:19  * rmarkinsjoined
23:48:48  * rmarkinsquit (Ping timeout: 245 seconds)