←2019-07-05 2019-07-06 2019-07-07→ ↑2019 ↑all
00:55:29 -!- arseniiv has quit (Ping timeout: 248 seconds).
00:57:58 -!- ski has quit (Ping timeout: 245 seconds).
00:59:32 -!- ski has joined.
01:39:37 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
01:43:09 -!- Lord_of_Life has joined.
02:56:29 -!- moei has joined.
03:07:38 <esowiki> [[A:;]] https://esolangs.org/w/index.php?diff=63930&oldid=62159 * Voltage2007 * (+244)
03:22:07 -!- moei has quit (Ping timeout: 245 seconds).
04:01:00 -!- moei has joined.
04:32:52 -!- MDude has quit (Ping timeout: 272 seconds).
05:05:53 -!- FreeFull has quit.
06:16:10 -!- [ has changed nick to uplime.
06:25:42 <esowiki> [[Turth-machine]] https://esolangs.org/w/index.php?diff=63931&oldid=56519 * Voltage2007 * (+299)
06:32:52 <esowiki> [[A:;]] https://esolangs.org/w/index.php?diff=63932&oldid=63930 * Voltage2007 * (-218)
07:08:36 -!- atslash has joined.
07:15:46 -!- AnotherTest has joined.
07:25:50 -!- AnotherTest has quit (Ping timeout: 252 seconds).
08:43:32 <esowiki> [[Pistons & Pistons]] M https://esolangs.org/w/index.php?diff=63933&oldid=63923 * A * (+170) /* Infinite Loop */
08:49:40 -!- LKoen has joined.
08:50:28 <esowiki> [[Talk:Pistons & Pistons]] M https://esolangs.org/w/index.php?diff=63934&oldid=63925 * A * (+541)
08:53:36 <esowiki> [[Pistons & Pistons]] M https://esolangs.org/w/index.php?diff=63935&oldid=63933 * A * (+121) /* Infinite Loop */
08:56:24 <esowiki> [[Talk:Pistons & Pistons]] M https://esolangs.org/w/index.php?diff=63936&oldid=63934 * A * (+139)
08:56:39 -!- atslash has quit (Quit: This computer has gone to sleep).
09:13:22 -!- john_metcalf has joined.
09:20:52 -!- mniip has quit (Ping timeout: 600 seconds).
09:46:40 -!- Sgeo__ has joined.
09:48:09 -!- arseniiv has joined.
09:49:38 -!- Sgeo_ has quit (Ping timeout: 245 seconds).
09:51:08 <esowiki> [[Special:Log/move]] move * Arcorann * moved [[SLOBOL]] to [[SLOBOL (2015 language)]]: If you've invented a language with the same name as an existing one yours should have the bracketed bit afterwards
09:51:08 <esowiki> [[Special:Log/move]] move * Arcorann * moved [[Talk:SLOBOL]] to [[Talk:SLOBOL (2015 language)]]: If you've invented a language with the same name as an existing one yours should have the bracketed bit afterwards
09:54:38 <esowiki> [[SLOBOL]] https://esolangs.org/w/index.php?diff=63941&oldid=63938 * Arcorann * (+752)
09:55:29 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=63942&oldid=63927 * Arcorann * (+8) /* A */
10:01:07 <shachaf> Taneb: did you invent any good data structures or algorithms lately twh
10:01:53 <Taneb> Not recently I'm afraid
10:02:00 <Taneb> I haven't had much free time for experimentation lately
10:03:29 <shachaf> oh no :'(
10:06:34 <shachaf> do you have any old ones for me
10:24:16 <b_jonas> shachaf: you don't want to think about the Old Ones. and if you have to, at least don't remind everyone else on the channel about them.
10:35:33 <shachaf> What's the harm of thinking abou the Old Ones?
10:35:36 <shachaf> They're great.
10:36:04 -!- john_metcalf has quit (Ping timeout: 246 seconds).
10:46:47 <esowiki> [[Forks & Forks]] N https://esolangs.org/w/index.php?oldid=63943 * A * (+515) Simplify Pistons & Pistons
10:57:19 <esowiki> [[Forks & Forks]] M https://esolangs.org/w/index.php?diff=63944&oldid=63943 * A * (+605) /* Symbols */
11:01:55 <esowiki> [[Forks & Forks]] M https://esolangs.org/w/index.php?diff=63945&oldid=63944 * A * (+434)
11:07:45 <esowiki> [[Forks & Forks]] M https://esolangs.org/w/index.php?diff=63946&oldid=63945 * A * (+544)
11:19:37 <esowiki> [[Forks & Forks]] M https://esolangs.org/w/index.php?diff=63947&oldid=63946 * A * (+621)
11:22:45 <esowiki> [[Forks & Forks]] M https://esolangs.org/w/index.php?diff=63948&oldid=63947 * A * (+114) /* Symbols */
11:25:22 <esowiki> [[Forks & Forks]] M https://esolangs.org/w/index.php?diff=63949&oldid=63948 * A * (+189)
11:43:12 -!- atslash has joined.
12:11:29 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
12:50:49 <esowiki> [[User:YamTokTpaFa/sandbox3]] https://esolangs.org/w/index.php?diff=63950&oldid=62026 * YamTokTpaFa * (-2)
12:52:47 <esowiki> [[User:YamTokTpaFa/sandbox3]] https://esolangs.org/w/index.php?diff=63951&oldid=63950 * YamTokTpaFa * (+101)
12:53:23 <esowiki> [[POGAACK]] M https://esolangs.org/w/index.php?diff=63952&oldid=49935 * YamTokTpaFa * (+288)
12:59:39 <esowiki> [[Ante]] https://esolangs.org/w/index.php?diff=63953&oldid=41535 * YamTokTpaFa * (+42)
13:06:24 <esowiki> [[Nairb]] https://esolangs.org/w/index.php?diff=63954&oldid=50931 * YamTokTpaFa * (+168) More edits plz.
13:06:53 <esowiki> [[Tweet]] https://esolangs.org/w/index.php?diff=63955&oldid=49061 * YamTokTpaFa * (+29) +CAT
13:07:50 <esowiki> [[Print "deadfish"]] https://esolangs.org/w/index.php?diff=63956&oldid=47289 * YamTokTpaFa * (+24) Y U NO +CAT ?
13:09:44 <esowiki> [[Category:Works-in-Progress]] https://esolangs.org/w/index.php?diff=63957&oldid=44863 * YamTokTpaFa * (+24) Let's +CAT
13:11:27 -!- LKoen has joined.
13:12:54 <esowiki> [[User talk:Oerjan]] https://esolangs.org/w/index.php?diff=63958&oldid=62023 * YamTokTpaFa * (+515) /* I have lots of things I'd like to discuss. */ new section
13:13:39 <esowiki> [[User talk:Oerjan]] https://esolangs.org/w/index.php?diff=63959&oldid=63958 * YamTokTpaFa * (+122) /* I have lots of things I'd like to discuss. */
13:20:38 <arseniiv> <b_jonas> shachaf: you don't want to think about the Old Ones. and if you have to, at least don't remind everyone else on the channel about them. => too late, I’m already here
13:21:49 -!- arseniiv has left ("gone too far").
13:21:57 -!- arseniiv has joined.
13:28:29 -!- MDude has joined.
13:40:31 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
13:42:24 -!- Lord_of_Life has joined.
13:52:08 -!- MDude has quit (Ping timeout: 245 seconds).
13:59:50 -!- unlimiter has joined.
14:18:25 -!- atslash has quit (Quit: This computer has gone to sleep).
14:28:25 -!- mniip has joined.
14:36:53 -!- unlimiter has quit (Quit: Cya guys!).
15:24:47 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
16:08:49 -!- iconmaster has joined.
16:32:15 -!- AnotherTest has joined.
16:47:13 -!- iconmaster has quit (Ping timeout: 276 seconds).
16:47:36 -!- border has joined.
16:58:19 -!- unlimiter has joined.
17:02:26 -!- unlimiter has quit (Client Quit).
17:14:27 -!- border has quit (Remote host closed the connection).
17:31:07 -!- iconmaster has joined.
17:31:18 -!- iconmaster has quit (Read error: Connection reset by peer).
17:45:52 -!- mniip has quit (Ping timeout: 615 seconds).
17:50:52 -!- mniip has joined.
18:38:54 -!- laerling has joined.
18:50:19 <b_jonas> do you like the Niagara board game?
18:54:21 -!- yaewa has joined.
18:55:32 -!- moei has quit (Ping timeout: 244 seconds).
19:01:37 -!- moei has joined.
19:04:01 -!- FreeFull has joined.
19:05:06 -!- yaewa has quit (Ping timeout: 258 seconds).
19:21:18 <zzo38> I don't know what game
19:33:06 <tswett[m]> So, it's easy enough to come up with a Turing machine that halts if and only if ZFC is inconsistent.
19:33:15 <tswett[m]> I wonder about going the other way, though.
19:33:53 <tswett[m]> Consider a Turing machine C that halts if and only if the Collatz conjecture has a looping counterexample.
19:34:26 <tswett[m]> Can we come up with a set theory that is inconsistent if and only if this Turing machine halts?
19:34:34 <int-e> tswett[m]: The opposite would make consistency of ZFC decidable, wouldn't it? So you would be showing that ZFC is inconsistent, I think.
19:35:21 <b_jonas> I'm asking mostly because Niagara is a multiplayer game that could be reasonably played on irc, using a bot that implements the game rules
19:35:28 <int-e> (But this is not what you asked.)
19:35:51 <tswett[m]> Now, we could do something boring, like take an existing set theory and add an axiom asserting that the Collatz conjecture has no such counterexamples.
19:36:19 <int-e> Well... boring is good. :P
19:36:21 <tswett[m]> I wonder if we could do it in a more interesting and "natural" way.
19:44:30 <int-e> I doubt it. I don't know. Ask a proof theorist :)
19:50:09 -!- AnotherTest has quit (Ping timeout: 250 seconds).
19:54:32 <zzo38> I am sure I can play chess on IRC, as well as most other methods of communication.
19:55:21 <b_jonas> sure, it's not the only such game. some card games work too.
19:55:54 <zzo38> Maybe it is, but I think card games is more difficult.
19:58:13 <zzo38> What card game do you think will work?
19:58:25 <shachaf> Do you know how to play poker on IRC?
19:59:00 <b_jonas> with a trusted bot that does the randomness. I don't want to mess with the cryptographic magic that lets you avoid that.
19:59:18 <b_jonas> I don't even understand how some of that cryptographic magic works.
19:59:26 <zzo38> I would think poker would be difficult to do. But chess you can do easily; just write the moves, is all that is needed.
19:59:54 <b_jonas> and in poker, you just write the raises and keeps and folds
20:00:03 <b_jonas> why is that harder?
20:00:10 <zzo38> Because you need the cards.
20:00:22 <zzo38> Poker could be done with a bot that displays private cards to private messages and then public cards could be mentioned in the channel, though.
20:00:26 <b_jonas> sure. the GM bot tells the cards to you in private messages
20:00:32 <b_jonas> exactly
20:00:53 <b_jonas> you want the inverse for Niagara, where you send simultaneous move choices to the bot in private message
20:01:00 <zzo38> O, OK.
20:01:01 <shachaf> Oh, I meant the cryptographic magic version without a trusted bot.
20:01:11 <b_jonas> part of the game has each player choose a card from their hand secretly, then revealing all of them
20:01:22 <zzo38> What I meant is that chess you don't need the bot or any private messages
20:01:29 <b_jonas> shachaf: I really don't understand how that works for poker and similar card games, even in theory
20:01:39 <zzo38> b_jonas: O, so it is a card game.
20:01:52 <b_jonas> it is reputed to be possible though, and I believe that
20:02:01 <b_jonas> zzo38: yes, that's true, for chess you don't need private messages
20:02:13 <b_jonas> because it's a full information game
20:17:01 <arseniiv> b_jonas: is there a light TL;DR description of Niagara you could link to?
20:17:21 <arseniiv> I’m interested in playing games over text channels via bots
20:18:30 <arseniiv> though I’m also very partially interested in that cryptographic magic, purely for understanding sake, so if that topic will arise in the future, I’m in
20:19:09 <arseniiv> also, e4
20:19:43 <b_jonas> arseniiv: I don't know. https://boardgamegeek.com/boardgame/13308/niagara has full description. but I can try to give a short description in a few lines of irc, without the full rules
20:20:13 <b_jonas> this is a German style board game for 3 to 5 players
20:20:53 <b_jonas> the fluff is that you are controlling canoes to collect gems on a river that has a waterfall, if you collect gems you win, if you fall down the waterfall you're penalized
20:21:33 <b_jonas> the board has a river that's like five map squares of straight river, then below that, a fork with two map squares on either branch, then below that a waterfall
20:22:52 <b_jonas> there are five mines on the shore where the gems start, three next to the lower three squares of the straight part, one shared between the upper squares of the two branches of the fork, and one shared between the lower squares
20:23:24 <b_jonas> there's a base camp on the shore next to the topmost square (there's nothing at the shore next to the square below that)
20:24:33 <b_jonas> the gimmick of the game is that the river flows down, which moves the floor of each water square one square down in the main branch, then the fifth square moves to one of the branches of the forks alternatingly, pushing the upper square of that branch to the lower square and the lower square to destruction by waterfall, while the other branch doesn't move in that flow
20:24:51 <b_jonas> when floors move this way, canoes on them move with them
20:25:16 <b_jonas> the way how the river flowing is computed is interesting:
20:25:50 <b_jonas> each player has a hand of seven cards, called 1 2 3 4 5 6 R, that they use up in seven consecutive turns then get the full hand back
20:26:15 <b_jonas> at the start of the turn, each player simultaneously secretly chooses a card from their hand to use for that turn, then they reveal it
20:26:43 <b_jonas> then they do actions with their canoes, generally they paddle as many tiles up or down with each canoe as their card shows, but the details are complicated
20:27:20 <b_jonas> and then the river flows as many tiles as the smallest number card revealed among the players, modified by the weather which can be one of -1, 0, 1, 2, and stays constant until a player uses the R card to adjust it
20:27:57 <b_jonas> so if you use a high card, you get to move your canoe long distance, but you risk that other players also bid a high number, in which case the river flows a lot down, bringing your canoes closer to the peril at the waterfall
20:29:16 <b_jonas> your can a gem from the mines on the shore into your canoe, or steal them from an other player's canoe, and transport them with your canoe. you can unload them at your base, where they're owned by you and mostly safe, the aim is to collect enough gems at your base; you can also strategically unload a gem at a mine
20:30:28 <arseniiv> <b_jonas> then the fifth square moves to one of the branches of the forks alternatingly => oh, nice, actually!
20:30:38 <b_jonas> for the movement, each of your two canoes move, except when both are at your home base, in which case only one moves. they either move as many tiles as your card shows, up or down, or two tiles less than that in which case you load or unload a gem to that canoe from a mine either before or after moving the canoe, and you choose the move independently for your two canoes
20:31:17 <b_jonas> the movement itself is sequential in seating order amongst the players, the player who moves first in this round moves last in the next round
20:31:50 <b_jonas> you can't move less than the card says, except when you move to the home base, in which case it's free
20:32:21 <b_jonas> the details are more complicated, boardgamegeek has a full rules sheet and photos of the board that you can use to reconstruct everything
20:35:08 <arseniiv> b_jonas: thank you, seems very decent!
20:35:56 <arseniiv> if someone starts writing a bot in a language I understand, maybe I’ll try to help
20:36:38 <arseniiv> though not knowing the rules in detail as of now, I can’t suggest anything useful
21:04:07 <tswett[m]> So I decided to load up a PC emulator and start writing an operating system in machine code.
21:04:18 <tswett[m]> After about 20 minutes of effort, I managed to write an instruction that jumps to itself.
21:04:24 <tswett[m]> That's a success!
21:05:09 <b_jonas> tswett[m]: nice. next, try one that prints hello world and then enters an infinite loop
21:05:34 <tswett[m]> Whoa whoa, *prints*? That's a bit much to ask. :D
21:06:20 <b_jonas> tswett[m]: you can choose between serial port and video, and in either case, you can choose between BIOS services or doing it on your own using the PC hardware
21:17:25 <tswett[m]> I'm now trying to save the machine state so that I can pick up where I left off instead of having to start over every time I close the page.
21:18:51 <b_jonas> write the relevant parts of the memory to the diskette
21:23:29 <esowiki> [[Symbols]] https://esolangs.org/w/index.php?diff=63960&oldid=58540 * Voltage2007 * (+1263)
21:29:16 -!- user24 has joined.
21:36:27 <zzo38> DOSBOX does not have the function to save the machine state but I would hope that in a later version they might add such thing possibly
21:43:04 <esowiki> [[AAAAAAAAAAAAAA!!!!]] https://esolangs.org/w/index.php?diff=63961&oldid=41034 * Voltage2007 * (+461)
21:47:59 -!- laerling has quit (Remote host closed the connection).
21:54:49 <tswett[m]> PCjs is awfully underdocumented...
21:56:49 <esowiki> [[Argh!]] https://esolangs.org/w/index.php?diff=63962&oldid=53674 * Voltage2007 * (+6)
21:58:01 <tswett[m]> The documentation says that you can create a "Save" button, but there's no documentation on what that button actually does or what is required to make it work.
21:59:05 <int-e> . o O ( Buttons are for pressing. Or for buttoning. )
22:07:05 <zzo38> I wrote this http://zzo38computer.org/gurpsgame/1.ui/wiki?name=Session+22 and try to think of what to write where it says "[Four weeks have passed.]". Mostly, Ziveruskex is studying mathematics, but other stuff could happen too, related and unrelated. I should see if anyone (including myself) has some idea what to write.
22:10:35 <int-e> Completely unperturbed, Earth moves silently through space, traveling 72 million kilometers around the Sun.
22:11:06 <zzo38> Yes, of course that is one thing, but is probably not remarkable to this.
22:13:47 -!- user24 has quit (Quit: Leaving).
22:17:12 -!- moei has quit (Quit: Leaving...).
22:24:58 <tswett[m]> Actually, it turns out that the earth is completely stationary and the universe is rotating around it. The motion is kept uniform and circular by various inertial forces.
22:25:39 <tswett[m]> For example, the sun and the moon (like almost everything in the universe) are moving east very quickly, which causes them to experience a downward Coriolis force.
22:36:00 <tswett[m]> I'm having a hell of a time with PCjs.
22:36:14 <tswett[m]> The vast majority of its functionality is undocumented, so you have to look at the source code.
22:36:36 <tswett[m]> The funny thing about that is that there's also no documentation about how to *use* the source code.
22:37:03 <tswett[m]> Like, they give you a collection of JavaScript files, and they say "here's the source code", but they don't explain how to do anything with those JavaScript files.
22:54:22 <int-e> tswett[m]: There are some package.json sprinkled in the source code which presumably are understood by npm. the build system is called gulp, and there's at least one 'gulpfile' around. The .js files are actually clojure sources?
22:55:00 <esowiki> [[ABC]] https://esolangs.org/w/index.php?diff=63963&oldid=53728 * Voltage2007 * (+754)
22:59:06 <int-e> tswett[m]: So... 'npm build' at the root should do something, I imagine.
23:06:41 <shachaf> I feel like I'm committing the great sin by commenting on how terrible npm and npm culture is but it's so bad I'm going to say it anyway.
23:07:04 <shachaf> I wrote a little program and it has over 300 dependencies.
23:07:18 <shachaf> Most of them seem to be nonsense.
23:07:50 <int-e> . o O ( cabal install criterion )
23:08:17 <int-e> 49 packages, okay, not quite 300
23:08:51 <shachaf> Also people seem to be incompetent and have no taste. They just write bad code and have no idea about anything.
23:08:56 <int-e> TIL about 'gauge' which is 'criterion' but some non-essential features and a lot of dependencies cut.
23:09:10 <int-e> It works, therefore it can be shipped.
23:09:14 <int-e> Sorry
23:09:24 <int-e> It seems to work, therefore it can be shipped.
23:09:41 <shachaf> You have it backwards.
23:09:47 <shachaf> It was shipped, therefore it seems to work.
23:10:00 <int-e> I see I still have a lot to learn.
23:10:43 <shachaf> Did you know NPM has over a million packages now?
23:10:51 <shachaf> Can you imagine?
23:10:54 <int-e> No I did not.
23:11:03 <shachaf> The NPM greatest hits include packages like https://www.npmjs.com/package/ansi-red
23:11:21 <shachaf> A million downloads a week.
23:11:58 <int-e> this one is ... brilliant
23:12:12 <int-e> I mean... it has a dependency!
23:12:32 <shachaf> Of course. It's impossible to write software without dependencies.
23:12:55 <shachaf> The npm command line program takes over 500ms to print the help message.
23:13:00 <shachaf> What could it be doing?
23:13:24 <zzo38> It is JavaScript; it has to start the JavaScript code, unlike the C code which is compiled into native code before you try to execute it.
23:13:40 <int-e> the author has 834 repositories on gituhub
23:13:51 <b_jonas> shachaf: the first time, or also the subsequent times?
23:14:40 <shachaf> Also subsequent times.
23:14:54 <int-e> shachaf: sadly I can see how "modern" software engineering might make such a "package" popular.
23:14:54 <shachaf> OK, it almost gets down to 400ms some runs.
23:15:21 <b_jonas> shachaf: make a cheating benchmark that doesn't count the startup time then
23:15:46 <shachaf> zzo38: And yet the Ruby `gem` program, written in Ruby, takes 100ms (which is still absurdly long).
23:16:05 <int-e> shachaf: I bet there's an umbrella package that uses them all, and then some semi-useful library with actual functionality that depends on that for colorful messages.
23:16:13 <shachaf> If "it's written in JavaScript" is an excuse for making the program bad, the solution is not to write it in JavaScript.
23:16:38 <shachaf> (I'm pretty sure JavaScript programs don't have to take 400ms to print a help message, though, so it's not really an excuse.)
23:16:50 <zzo38> Yes, I don't know why npm is slower.
23:16:54 <int-e> though, hmm, https://www.npmjs.com/package/ansi-bgcyan has only 100k downloads.
23:17:05 <b_jonas> or you could realize that just because you're using javascript, you don't have to use the most popular library for doing whatever you want
23:17:33 <int-e> shachaf: How much Javascript does node have to JIT-compile before that help message is printed?
23:18:03 <shachaf> Probably a trillion lines.
23:18:26 <shachaf> But I wouldn't even blame JavaScript for that. You can do an OK job in JavaScript for this kind of thing.
23:18:54 <int-e> ... hence my question
23:19:16 <shachaf> Right.
23:19:20 <int-e> if you can get to the help message before you compile 100k lines of code, maybe half a second would be node's fault.
23:20:01 <int-e> (that number is pulled out of thin air)
23:20:06 <tswett[m]> Good news, I got persistence working in PCjs. \o/
23:20:19 <shachaf> On the other hand I'm timing Python pip and it's over 900ms.
23:20:31 <int-e> tswett[m] unlocks "persistence" achievement.
23:20:32 <shachaf> So maybe terrible software is just the norm.
23:21:12 <int-e> Right, Python can do better as well.
23:21:40 <shachaf> guess how long apt takes to print a help message
23:21:40 <tswett[m]> Now I have to figure out how the heck keyboard input works on an IBM PC. :D
23:22:58 <shachaf> I wrote a timing program and it's better in terms of the information it shows than my /usr/bin/time or bash builtin time.
23:23:20 <int-e> shachaf: I felt bad about one of our academic tools taking 0.2s to print the help message.
23:23:43 <shachaf> How many people use your academic tool?
23:24:13 <int-e> (It's written in ocaml. It used to be much faster, but then ocaml decided to go the first-class module route, punishing the separation of interfaces and modules...)
23:24:24 <int-e> Hmm, a couple of dozen maybe.
23:24:27 <shachaf> npm has millions of users. If they use it once a day on average, that's several days of waiting for it to print the help message, every day.
23:24:52 <int-e> Obviously the right thing to do is to print out the help message once and for all.
23:25:10 <shachaf> Right.
23:26:04 <shachaf> (Of course every npm action other than printing a help message takes longer than 400ms, even the trivial ones.)
23:28:56 <int-e> Oh well, you'd have to design for this, rather than starting your file with all the 'requires' that are potentially relevant (as I presume npm is doing).
23:29:14 <int-e> (Or maybe it's worse and it's actually a huge minimized javascript file)
23:29:43 <int-e> obviously I hardly know what I'm talking about
23:29:56 <int-e> > time npm --help
23:29:56 <int-e> bash: npm: command not found
23:29:57 <int-e> real 0m0.001s
23:29:57 <int-e> user 0m0.000s
23:29:57 <int-e> sys 0m0.001s
23:29:59 <lambdabot> error: Variable not in scope: time :: t0 -> terror: Variable not in scope: npm
23:30:10 <int-e> @botsnack
23:30:11 <lambdabot> :)
23:30:35 <int-e> shachaf: ^^ can't reproduce
23:30:44 <shachaf> int-e: Oh, you have the best version of npm installed.
23:30:49 <shachaf> http://slbkbs.org/tmp/tym.c -- I guess I already posted this here.
23:31:54 <int-e> I guess that's a tiny bit more informative than /usr/bin/time
23:32:22 <shachaf> /usr/bin/time supports almost all that information with a format string.
23:32:27 <shachaf> At least the one on Debian does.
23:32:38 <shachaf> But it doesn't have precise timestamps.
23:32:58 <b_jonas> isn't using the right incantation of options to time enough?
23:33:07 <shachaf> Which time?
23:33:13 <int-e> Heh I've never looked at the manpage for 'time'.
23:33:16 <b_jonas> shachaf: the GNU one, not the builtin one
23:33:24 <b_jonas> int-e: it's an info page because it's GNU software
23:33:42 <int-e> there's a manpage which seems comprehensive enough
23:33:58 <shachaf> b_jonas: No, it can only give you second precision for elapsed time.
23:34:14 <b_jonas> I see
23:34:15 <shachaf> Otherwise yes. I used to use it.
23:34:40 -!- xkapastel has joined.
23:34:47 <int-e> huh. SEE ALSO: tcsh, prinf... that seems a bit random.
23:35:32 <int-e> especially since it's printf(3)
23:36:11 <int-e> Oh I see why.
23:36:59 <int-e> tcsh is referenced because it extends the tcsh `time' builtin, and printf for the similarity in format specifiers. Never mind.
23:37:20 <shachaf> In bash time is not a builtin.
23:37:25 <shachaf> It's a keyword.
23:37:48 <shachaf> That means that if you alias the keyword "time" to something else, you have no way to invoke it.
23:38:00 <b_jonas> shachaf: you do, you can use (builtin time foo)
23:38:09 <b_jonas> if you also alias builtin to something else, then you're screwed
23:38:16 <int-e> presumably it's a keyword so that it can apply to a whole pipe...
23:38:25 <zzo38> When I write programs in JavaScript generally I try to avoid too many dependencies
23:38:28 <b_jonas> int-e: yes
23:38:53 <shachaf> b_jonas: No, it's not a builtin, it's a keyword.
23:39:05 <b_jonas> oh
23:39:06 <b_jonas> ...
23:39:34 <shachaf> The only way I know is to unalias it.
23:45:38 <shachaf> Here's a pretty good package: https://www.npmjs.com/package/is-unc-path
23:45:59 <shachaf> It takes a string and matches it against a regular expression.
23:46:17 <shachaf> It has a dependency, which is a different package by the same author that exports that regular expression.
23:46:59 <shachaf> 2 weekly megadownloads
23:47:34 <int-e> it's the same author as ansi-red
23:48:11 <b_jonas> shachaf: some perl modules pull in a large dependency forest through a module that it uses for author-only documentation coverage tests, where that module pulls in another module for finding the difference between two sets, to pretty print the set of functions that do not have doc coverage
23:48:11 <shachaf> Yes. He has over 1400 npm packages.
23:48:32 <shachaf> But he's not the only one with the coveted comma in the number of packages.
23:49:46 <int-e> different author: https://www.npmjs.com/package/is-finite
23:49:49 <b_jonas> lol "coveted comma"
23:50:32 <shachaf> int-e: Yep.
23:50:49 <shachaf> A slacker with only 1.1 kilopackages
23:51:27 <int-e> so unpopular... https://www.npmjs.com/package/leading-zeros
23:53:05 <shachaf> For a good time type a package name into https://npm.anvaka.com/
23:53:09 <int-e> words of wisdom: While polyfills are naughty, ponyfills are pure, just like ponies.
23:53:27 <int-e> (Despite my choice of language, I do not want to see that as a wisdom entry.)
23:55:21 <shachaf> https://npm.anvaka.com/#/view/2d/npm
23:55:49 <shachaf> Now I see why npm takes 400ms to start up.
23:56:26 <int-e> shachaf: I guess this is a glimpse into the wonderful Javascript/npm culture you mentioned... https://kikobeats.com/polyfill-ponyfill-and-prollyfill/
23:57:07 <int-e> Here's me hoping it's just an esoteric subculture.
23:58:02 <int-e> Or maybe exotic.
23:59:17 <shachaf> int-e: I read that article and derived no pleasure from it.
←2019-07-05 2019-07-06 2019-07-07→ ↑2019 ↑all