←2020-09 2020-10 2020-11→ ↑2020 ↑all
2020-10-01
00:28:13 -!- tromp has joined.
00:32:43 -!- tromp has quit (Ping timeout: 260 seconds).
00:45:43 -!- adu has joined.
01:09:52 -!- adu has quit (Quit: adu).
01:20:41 -!- adu has joined.
01:22:14 -!- tromp has joined.
01:26:35 -!- tromp has quit (Ping timeout: 240 seconds).
02:19:59 -!- tromp has joined.
02:24:25 -!- tromp has quit (Ping timeout: 240 seconds).
03:04:17 -!- Lord_of_Life_ has joined.
03:06:34 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
03:06:34 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
03:14:32 -!- tromp has joined.
03:19:04 -!- tromp has quit (Ping timeout: 256 seconds).
03:23:22 -!- tromp has joined.
03:27:58 -!- tromp has quit (Ping timeout: 256 seconds).
03:28:08 -!- adu has quit (Quit: adu).
03:56:45 -!- adu has joined.
04:17:50 -!- tromp has joined.
04:21:47 -!- tromp has quit (Ping timeout: 240 seconds).
04:46:27 -!- tromp has joined.
04:51:20 -!- tromp has quit (Ping timeout: 265 seconds).
04:57:12 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
05:40:37 -!- tromp has joined.
05:45:04 -!- tromp has quit (Ping timeout: 246 seconds).
05:59:00 -!- adu has quit (Quit: adu).
06:32:51 -!- tromp has joined.
06:54:35 -!- glowcoil has quit (*.net *.split).
07:00:27 -!- Sgeo has quit (Read error: Connection reset by peer).
08:07:25 -!- glowcoil has joined.
08:09:09 -!- hendursa1 has joined.
08:09:42 -!- cpressey has joined.
08:11:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:52:42 -!- glowcoil has quit (*.net *.split).
08:55:45 -!- t20kdc has joined.
09:10:07 -!- glowcoil has joined.
09:14:01 -!- sebbu has quit (Ping timeout: 246 seconds).
09:46:47 -!- imode has quit (Ping timeout: 240 seconds).
10:27:02 -!- wib_jonas has joined.
10:48:16 -!- cpressey has quit (Quit: \o/).
11:02:17 -!- hendursa1 has quit (Remote host closed the connection).
11:03:10 -!- hendursa1 has joined.
11:10:33 -!- sebbu has joined.
11:11:51 -!- arseniiv has joined.
11:39:55 -!- atriq has joined.
11:40:07 -!- Taneb has quit (Ping timeout: 240 seconds).
11:53:10 -!- hendursa1 has quit (Quit: hendursa1).
11:53:27 -!- hendursaga has joined.
12:34:47 -!- atriq has changed nick to Taneb.
13:02:52 -!- xelxebar has quit (Remote host closed the connection).
13:03:39 -!- xelxebar has joined.
14:52:09 -!- Sgeo has joined.
14:53:58 <wib_jonas> `? password
14:54:00 <HackEso> The password of the month is juberous.
14:58:07 <wib_jonas> ``` hg log -l 9 -T '{date(date,"%Y-%m-%dT%H:%M%z")}\n' /hackenv/wisdom/password
14:58:08 <HackEso> 2020-09-01T02:18+0000 \ 2020-07-03T10:20+0000 \ 2020-06-01T00:25+0000 \ 2020-05-30T16:11+0000 \ 2020-04-05T05:35+0000 \ 2020-03-01T00:14+0000 \ 2020-02-12T01:20+0000 \ 2020-02-12T01:19+0000 \ 2020-02-12T01:18+0000
15:01:11 <Arcorann> What's this password thing for anyway?
15:03:36 <myname> a password of the month
15:04:31 <Taneb> You'll know when you need it
15:05:36 -!- Lord_of_Life_ has joined.
15:07:18 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
15:08:13 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
15:09:21 <wib_jonas> the password for last month, specifically
15:21:48 <wib_jonas> `learn The password of the month is Algol Waterloo Athens aftermath quadrant hydraulic tissue exodus stormy decadence egghead resistor flatfoot escapade newborn recipe
15:21:51 <HackEso> Relearned 'password': The password of the month is Algol Waterloo Athens aftermath quadrant hydraulic tissue exodus stormy decadence egghead resistor flatfoot escapade newborn recipe
15:22:23 <myname> neat one
15:22:46 <myname> very memorable
15:28:27 -!- MDude has joined.
15:37:47 <Arcorann> Is that a passphrase for a Bitcoin wallet?
15:38:31 <esowiki> [[Hanoifuck]] https://esolangs.org/w/index.php?diff=77775&oldid=60363 * Zesterer * (+134) Added reference impl
15:39:09 <esowiki> [[Hanoifuck]] M https://esolangs.org/w/index.php?diff=77776&oldid=77775 * Zesterer * (-3)
15:42:01 <wib_jonas> Arcorann: yes, it's the passphrase for Satoshi's billion dollar bitcoin wallet
15:43:35 <wib_jonas> and you can get the encrypted private key too, you have have to hang throught the ceiling Mission Impossible style in the secret computer room in the bunker under his hidden luxury mansion and copy it to a floppy
15:44:35 <wib_jonas> the laser beams on the head of the moat sharks are harmless, they couldn't get it to act as death rays, because the sharks wouldn't keep the required battery swallowed for a long enough time
15:44:54 -!- wib_jonas has quit (Quit: Connection closed).
15:45:17 <esowiki> [[SCREAMCODE]] M https://esolangs.org/w/index.php?diff=77777&oldid=77556 * Baguette * (+11) Re-formatted example program
15:46:38 <esowiki> [[SCREAMCODE]] M https://esolangs.org/w/index.php?diff=77778&oldid=77777 * Baguette * (+95) Clarifies how instructions are written
15:54:47 -!- imode has joined.
15:54:50 -!- Arcorann has quit (Read error: Connection reset by peer).
15:56:09 -!- arseniiv has quit (Ping timeout: 260 seconds).
16:00:58 -!- arseniiv has joined.
16:20:01 <t20kdc> wib_jonas: what about the implantations
17:40:11 <arseniiv> I downloaded and executed a virus, dumb me :D
17:40:42 <arseniiv> I was too eager
17:40:47 <myname> why would you do that
17:40:51 -!- arseniiv has quit (Quit: gone too far).
17:43:43 <myname> satoshi_wallet.exe?
17:44:12 <imode> totally_real_esolang_interpreter.pdf.exe
17:55:49 -!- LKoen has joined.
18:00:57 -!- glowcoil has quit (*.net *.split).
18:47:26 -!- glowcoil has joined.
19:02:23 -!- xelxebar has quit (Remote host closed the connection).
19:02:48 -!- xelxebar has joined.
19:29:17 -!- zeroed has quit (Quit: ZNC 1.7.2+deb3 - https://znc.in).
19:37:03 -!- admino has joined.
19:37:53 -!- admino has changed nick to zeroed.
20:06:35 <zzo38> Does magnet: URI scheme have a parameter to specify the MIME type of the file? As far as I can tell, it doesn't have. There is the name, length, and hash, but you might want the MIME type too. Application-specific parameters are possible, but the MIME type seems like something that might be common enough that shouldn't need to be an application-specific parameter.
21:26:48 -!- LKoen has quit (Remote host closed the connection).
21:30:39 -!- LKoen has joined.
21:55:04 -!- LKoen has quit (Remote host closed the connection).
21:55:41 <b_jonas> do you suppose the SHA-4 contest will be decided by cryptanalysis and similar practical considerations all the way, or will they use ritual trial by combat among champions representing each finalist hash function?
21:58:16 <zzo38> What is the SHA-4 hash function?
22:01:19 <b_jonas> zzo38: we don't know yet, the contest would be held to decide what hash function it will be, just like the SHA-3 contest
22:02:25 <zzo38> O, well, probably cryptanalysis and stuff like that might be the consideration, I think.
22:05:14 <zzo38> But, I don't know how the contests actually work, so I just guess.
22:28:37 <b_jonas> the cryptanalysis and simliar stuff is always a consideration of course
22:29:53 <b_jonas> I'm just asking what happens in the final when the NIST has to pick one among multiple spotless candidates
22:30:54 <zzo38> O, I don't know.
22:32:08 <t20kdc> Will the trial by combat be recorded? It's important for analysis of the reasoning method. (Popcorn purchase complete.) Ignore that.
22:33:57 <zzo38> Maybe, if there are two that work OK, choose one which is not too complicated to implement.
22:42:09 <b_jonas> t20kdc: yes, the whole point is the transparency of the process, so that NIST doesn't have to choose from among hash functions without clear drawbacks, and they don't want to make it look like they make the choice because they know some secret vulnerability in one of the hash functions
22:42:20 <b_jonas> so the trial by combat has to be documented carefully
22:43:19 * t20kdc nods
22:53:18 -!- Arcorann has joined.
22:54:00 -!- Arcorann has quit (Remote host closed the connection).
22:54:29 -!- Arcorann has joined.
23:17:40 -!- deltaepsilon23 has joined.
23:54:57 -!- glowcoil has quit (*.net *.split).
2020-10-02
00:05:48 -!- glowcoil has joined.
00:09:04 -!- t20kdc has quit (Remote host closed the connection).
00:09:19 -!- deltaepsilon23 has quit (Ping timeout: 246 seconds).
00:24:25 -!- deltaepsilon23 has joined.
00:24:42 -!- deltaepsilon23 has quit (Client Quit).
00:27:20 -!- deltaepsilon23 has joined.
00:47:31 -!- aaaaaa has joined.
02:16:05 <shachaf> b_jonas: I hope they standardize an unkeyed permutation instead.
02:17:10 <shachaf> Then you can construct a hash function, stream cipher, block cipher, etc. out of it.
02:24:09 -!- deltaepsilon23 has quit (Quit: Leaving).
02:40:59 -!- adu has joined.
03:05:53 -!- Lord_of_Life has quit (Ping timeout: 258 seconds).
03:06:47 -!- Lord_of_Life has joined.
03:21:09 -!- glowcoil has quit (*.net *.split).
03:49:00 -!- glowcoil has joined.
03:51:09 <esowiki> [[Coeus]] N https://esolangs.org/w/index.php?oldid=77779 * Tetrapyronia * (+829) Created page with "'''Coeus''' is an esolang inspired (loosely) by 3-cell brainf*ck. It uses 4 registers (A-D). A is initially 1 and all others are 0. === Commands === X and Y represent any regi..."
04:01:16 -!- aaaaaa has quit (Quit: leaving).
04:06:04 <esowiki> [[User:Tetrapyronia]] https://esolangs.org/w/index.php?diff=77780&oldid=77673 * Tetrapyronia * (+12)
04:29:55 -!- arseniiv has joined.
05:27:35 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
06:18:26 <esowiki> [[Coeus]] M https://esolangs.org/w/index.php?diff=77781&oldid=77779 * Tetrapyronia * (-2)
06:20:04 -!- adu has quit (Quit: adu).
06:39:41 <zzo38> Does any open source pokemon battle simulator implement a rule the same as or similar to the following: If the opponent's pokemon is Spinda and the generation is III or IV or V, you can see their ability, and unless the generation is V, also their nature.
08:08:51 -!- hendursa1 has joined.
08:11:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:12:22 -!- Sgeo has quit (Read error: Connection reset by peer).
08:15:54 -!- sprocklem has quit (Ping timeout: 256 seconds).
08:19:30 -!- cpressey has joined.
08:46:08 -!- dingwat has quit (Quit: Connection closed for inactivity).
09:54:47 -!- imode has quit (Ping timeout: 240 seconds).
10:33:41 -!- wib_jonas has joined.
10:50:02 -!- cpressey has quit (Quit: WeeChat 1.9.1).
11:15:44 <esowiki> [[Grass]] https://esolangs.org/w/index.php?diff=77782&oldid=65950 * YamTokTpaFa * (-48) TODO!
11:29:55 -!- hendursa1 has quit (Quit: hendursa1).
11:30:11 -!- hendursaga has joined.
11:44:15 <esowiki> [[Grass]] https://esolangs.org/w/index.php?diff=77783&oldid=77782 * YamTokTpaFa * (+43)
11:50:56 <esowiki> [[Grass]] https://esolangs.org/w/index.php?diff=77784&oldid=77783 * YamTokTpaFa * (+393) /* Overview */
11:56:46 <esowiki> [[Grass]] https://esolangs.org/w/index.php?diff=77785&oldid=77784 * YamTokTpaFa * (+493) /* Overview */
12:00:49 <esowiki> [[Grass]] https://esolangs.org/w/index.php?diff=77786&oldid=77785 * YamTokTpaFa * (+240) /* Overview */
12:02:45 <esowiki> [[Grass]] https://esolangs.org/w/index.php?diff=77787&oldid=77786 * YamTokTpaFa * (+55) /* Overview */ NO WAIT THIS IS MEDIAWIKI NOT MARKDOWN
12:13:25 -!- cpressey has joined.
12:25:13 -!- adu has joined.
12:55:53 -!- t20kdc has joined.
13:57:23 -!- grumble has changed nick to Spooktober.
14:07:59 -!- arseniiv has quit (Quit: gone too far).
14:15:15 -!- deltaepsilon23 has joined.
14:26:12 -!- adu has quit (Quit: adu).
14:36:41 -!- Sgeo has joined.
14:40:32 -!- glowcoil has quit (*.net *.split).
14:41:50 -!- glowcoil has joined.
14:48:05 -!- dingwat has joined.
14:50:24 -!- cpressey has quit (Ping timeout: 272 seconds).
14:58:43 -!- MDude has joined.
15:02:30 -!- cpressey has joined.
15:07:22 -!- wib_jonas has quit (Quit: Connection closed).
15:08:28 -!- Lord_of_Life has quit (Ping timeout: 258 seconds).
15:11:34 -!- adu has joined.
15:23:08 -!- Arcorann has quit (Read error: Connection reset by peer).
15:45:15 -!- imode has joined.
15:51:48 -!- LKoen has joined.
15:59:47 -!- Lord_of_Life has joined.
16:02:30 -!- cpressey has quit (Quit: WeeChat 1.9.1).
17:00:11 -!- FreeFull has joined.
18:12:02 -!- Remavas has joined.
18:24:20 -!- Remavas has quit (Quit: Leaving).
18:52:54 -!- adu has quit (Quit: adu).
19:25:01 -!- sprocklem has joined.
19:54:07 <esowiki> [[English]] https://esolangs.org/w/index.php?diff=77788&oldid=72674 * Tux1 * (+159)
19:57:10 -!- sftp has quit (Excess Flood).
19:57:28 -!- sftp has joined.
20:50:08 <esowiki> [[Hello world program in esoteric languages]] https://esolangs.org/w/index.php?diff=77789&oldid=77626 * Aspwil * (-86) /* Sabdt */
20:56:51 <esowiki> [[Coeus]] M https://esolangs.org/w/index.php?diff=77790&oldid=77781 * Tetrapyronia * (+0)
21:01:42 <esowiki> [[Special:Log/newusers]] create * Olivato * New user account
21:09:31 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77791&oldid=77759 * Olivato * (+241)
21:36:17 <esowiki> [[Mapfuck]] https://esolangs.org/w/index.php?diff=77792&oldid=77645 * Aspwil * (+1) /* mappings */
22:09:54 -!- t20kdc has quit (Remote host closed the connection).
22:13:00 -!- LKoen has quit (Remote host closed the connection).
22:37:34 <int-e> @metar lowi
22:37:35 <lambdabot> LOWI 022220Z AUTO 06012KT 020V100 9999 FEW036 BKN080 20/07 Q0994
22:38:22 <int-e> what's happening, it has not cooled down this night at all... Föhn (https://en.wikipedia.org/wiki/Foehn_wind) maybe..
22:44:23 <fizzie> @metar EGLL
22:44:24 <lambdabot> EGLL 022220Z AUTO 05008KT 010V080 5000 -RA BKN008/// BKN014/// OVC046/// //////TCU 14/13 Q0989 TEMPO 4000 RA
22:46:28 <int-e> https://www.bergfex.at/tirol/wetter/stationen/innsbruck-flughafen/ has temperature curves going back two weeks... having a flat line after 1pm is pretty unusual :)
22:46:58 <int-e> But Föhn is a real phenomenon here and is the most probable explanation.
22:47:05 <spruit11> @metar ehdl
22:47:06 <lambdabot> EHDL 022225Z AUTO VRB10KT 9999 -DZ OVC093 15/13 Q0991 BLU
23:08:01 -!- FreeFull has quit.
23:18:01 <Sgeo> My browser remembers me visiting newlisp.org but not newsday.com ?
23:46:50 -!- Arcorann has joined.
23:48:21 <shachaf> @metar koak
23:48:22 <lambdabot> KOAK 022253Z 30005KT 3SM FU HZ OVC028 30/16 A2992 RMK AO2 SLP131 FU OVC028 T03000156
23:48:32 <shachaf> I need to decide when to go back to KOAK.
23:48:45 <shachaf> That FU does not make it sound appealing.
2020-10-03
00:02:33 -!- aaaaaa has joined.
00:04:28 <int-e> `? password
00:04:29 <HackEso> The password of the month is Algol Waterloo Athens aftermath quadrant hydraulic tissue exodus stormy decadence egghead resistor flatfoot escapade newborn recipe
00:04:52 <int-e> . o O ( Somebody overcompensated for lost opportunities. )
00:16:01 -!- deltaepsilon23 has left ("Leaving").
00:39:49 <int-e> WTF... https://www.lifewire.com/strong-password-examples-2483118 lists "BankLogin!3" as an excellent password...
00:42:36 <shachaf> I think maybe I should ban digits and "special characters" in passwords.
00:42:57 <shachaf> They make passwords harder to remember and probably don't meaningfully increase entropy?
00:43:10 <int-e> They make them quicker to type though
00:43:49 <zzo38> I think you should not ban anything except perhaps null characters and some control characters (depending on the application). However, you should not require digits and "special characters" either. And, please do not set the maximum length too small!
00:43:56 <int-e> And they add some bits of entropy if they're not l33t-derived.
00:44:38 <shachaf> Maybe it should just be a-z
00:44:46 <zzo38> Arbitrary octets should otherwise be allowed in the password.
00:44:47 <shachaf> I guess allowing capital letters is one bit per character.
00:45:00 <shachaf> > logBase 2 26
00:45:06 <lambdabot> 4.700439718141093
00:45:10 <shachaf> > logBase 2 62
00:45:13 <lambdabot> 5.954196310386876
00:45:16 <shachaf> I guess I could've guessed that one.
00:45:37 <int-e> capital letters... I'd imagine for most people they add one bit per word.
00:45:38 <shachaf> > logBase 2 72
00:45:40 <lambdabot> 6.169925001442312
00:45:51 <shachaf> > 15 * logBase 2 26
00:45:54 <lambdabot> 70.50659577211638
00:45:58 <shachaf> Presumably this is a pretty good password.
00:46:20 <int-e> (and yes, people will use words if you let them)
00:46:43 <int-e> I wonder what word list b_jonas used.
00:46:51 <shachaf> Maybe you shouldn't let people choose passwords.
00:46:55 <zzo38> Well, some people will. Some people use numbers instead.
00:47:08 <shachaf> Just generate a 70-bit 15-character password and let them regenerate on demand.
00:47:08 <int-e> (I suspect this is one of his serious entries... so it's bound to be 16 actually random words.)
00:47:49 <zzo38> I think that you should let people choose passwords, but ensure the maximum length is sufficiently long (I suggest at least sixty bytes, probably more). A random password option might be good too, though, maybe.
00:48:03 <int-e> It's not diceware.
00:48:31 <int-e> 60 bytes.
00:48:35 <int-e> Good one, good one.
00:49:00 <Arcorann> 60 bytes would be overkill for random passwords though
00:49:07 <int-e> password123xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
00:49:19 <esowiki> [[Special:Log/newusers]] create * Kosayoda * New user account
00:49:22 <int-e> it's also a pretty useless metric
00:49:24 <zzo38> Arcorann: Yes, but I only specified that as a maximum length, not the minimum or default length.
00:49:31 <int-e> oh
00:49:35 <int-e> my bad, I misread.
00:49:39 <Arcorann> Same...
00:50:10 <int-e> or rather, made an assumption because hardly anybody speaks of maximum password lengths... minimum lengths are all the rage
00:50:13 <zzo38> (If you can, increase the maximum length to more than that.)
00:50:47 <Arcorann> Maximum length restrictions beyond those required to avoid extreme processing times shouldn't be necessary in any sensible password scheme
00:51:09 <shachaf> int-e: That page also says that "BankLogin" is an OK password.
00:51:39 <int-e> shachaf: Yeah, it's wholly embarrassing.
00:51:50 <int-e> Designed to make people feel good about their passwords, I'm sure.
00:52:09 <shachaf> It also says that "kitty" is an OK password.
00:52:24 <shachaf> Despite saying a bit above that such a password is incredibly insecure.
00:52:29 <zzo38> Arcorann: Yes, that is true. (Well, not only time but also memory. And depending on the program, it may display asterisks as it is being typed and there may be limited space on the display, but you can also conceal the password entirely (like traditionally in UNIX-based systems), display on multiple lines, use smaller fonts, etc.)
00:52:30 <shachaf> I guess "OK" is a euphemism?
00:52:34 <int-e> I didn't read it all.
00:52:52 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77793&oldid=77791 * Kosayoda * (+186) Add introduction
00:53:03 <oren> I have begun using relatively long sentences in conlangs as passwords
00:53:45 <esowiki> [[Chicken]] M https://esolangs.org/w/index.php?diff=77794&oldid=71117 * Kosayoda * (+63) Add a Python implementation of the language.
00:53:46 <Arcorann> Probably shouldn't have called it "OK", but yeah the mechanism of "take a dictionary word and add special characters or numbers" is not great
00:53:55 <shachaf> I think a random word in /[a-z]{15}/ is pretty good.
00:54:08 <shachaf> Do I want more than 70 bits?
00:54:11 <zzo38> oren: Yes, that can work.
00:55:57 <int-e> There's always the battery horse staple thing.
00:56:11 <esowiki> [[Chicken]] M https://esolangs.org/w/index.php?diff=77795&oldid=77794 * Kosayoda * (+19) Add name to linked implementation.
00:56:49 <shachaf> How many bits do you get from that?
00:57:03 <shachaf> If it's a password you type regularly, saving on characters is probably good.
00:57:06 <shachaf> I mean on keystrokes.
00:57:14 <shachaf> Shift is an extra keystroke.
00:57:23 <int-e> https://xkcd.com/936/ said 44 bits
00:57:45 <shachaf> > 10 * logBase 2 26
00:57:48 <lambdabot> 47.00439718141092
00:59:11 <shachaf> `` egrep --text -o '[a-z]' /dev/urandom | tr -d '\n' | head -c10
00:59:12 <HackEso> rmtjeklgfm
00:59:15 <Arcorann> Nowadays I get KeePass to generate my passwords except for a few that I've memorised
01:01:06 <shachaf> 44 bits is presumably OK if you know the password is being stored securely with a fancy KDF.
01:01:17 <shachaf> But if you don't then you probably want more.
01:01:23 <shachaf> Is 70 even enough?
01:03:27 <int-e> 70 is plenty
01:05:19 <int-e> I usually look at this... Bitcoin is at 2^47 hashes per second.
01:06:25 <shachaf> Isn't it way more than that?
01:06:52 <shachaf> https://www.blockchain.com/charts/hash-rate says 140M TH/s
01:07:02 <shachaf> > logBase 2 140e18
01:07:06 <lambdabot> 66.92398872491749
01:07:25 <int-e> Ugh.
01:07:31 <int-e> Okay, fine.
01:07:41 <int-e> I can't do ISO :-(
01:07:54 <shachaf> ISO?
01:07:55 <int-e> Or SI for that matter.
01:08:50 <int-e> Okay, so maybe 70 is only plenty if it's not stored as a plain hash.
01:22:21 <int-e> (Oh well. The SI/ISO mixup isn't new, at least. But getting the prefixes wrong is.)
01:23:07 <shachaf> Oh, the number you gave was 140e12.
01:23:18 <shachaf> I think it's confusilating of them to give numbers in millions of terahashes.
01:23:39 <shachaf> Either give hashes or exashes or something.
02:37:48 -!- hendursaga has quit (Remote host closed the connection).
02:47:32 -!- hendursaga has joined.
03:06:53 -!- Lord_of_Life_ has joined.
03:09:04 -!- Lord_of_Life has quit (Ping timeout: 256 seconds).
03:09:05 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
03:39:55 -!- adu has joined.
03:46:00 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:01:40 -!- aaaaaa has quit (Quit: leaving).
04:32:31 <int-e> `` unshare -U true
04:32:32 <HackEso> unshare: unshare failed: Operation not permitted
04:40:54 <int-e> This is confusing me (on my own system; less so for HackEso)... The failing syscall is `unshare`: unshare(CLONE_NEWUSER) = -1 EPERM (Operation not permitted) But according to the `unshare` manpage, unprivileged users are supposed to be able to create a new user namespace, except under fairly specific circumstances... hmm one of which I can't easily check.
04:50:32 <shachaf> Seems to work here.
04:55:06 <int-e> works on none of my (Debian) systems
04:57:51 <int-e> (the thing that I don't know how to check is that EPERM is raised if "the caller's root directory does not match the root directory of the mount namespace"... is this something that a badly designed initrd can mess up forever?)
04:58:27 <shachaf> That seems unlikely.
04:59:36 <int-e> The other condition is for unmapped (effective) user/group ids... but the default maps map *all* 32 bit values to themselves.
05:00:19 <int-e> (cat /proc/self/{g,u}id_map --> 0 0 4294967295, twice (with some more spaces))
05:01:35 <int-e> OTOH it works for root at least.
05:02:12 <shachaf> If it works for root then it doesn't seem like the initrd thing, does it?
05:02:27 <int-e> hmm
05:02:48 <int-e> yes, that seems to be implied.
05:05:15 <shachaf> Is the EPERM coming from https://github.com/torvalds/linux/blob/v5.8/kernel/user_namespace.c#L69 ?
05:06:28 <int-e> I'd assume so.
05:15:59 <zzo38> I see two cases in that function that return EPERM. Do you know which of those it is?
05:24:50 <shachaf> Man, I was trying to create a chroot to test this in and the situation is ridiculous.
05:25:04 <shachaf> /bin/ls depends on libraries in /usr, so what's the point of anything?
05:25:08 <shachaf> What a silly system.
05:26:33 <shachaf> OK, so inside a regular chroot, you can escape easily by e.g. chdir /proc/1/root
05:26:36 <shachaf> (As root.)
05:27:52 <shachaf> int-e: Presumably your /proc/1/root looks identical to your /?
05:30:09 <int-e> yes.
05:30:46 <int-e> root@harpy:/# unshare -U true
05:30:46 <int-e> unshare: unshare failed: Operation not permitted
05:30:51 <int-e> that's inside a chroot, as root.
05:31:25 <int-e> I should've thought of trying to test the positive case... so it's not the chroot check, phew.
05:34:27 <zzo38> The linked program says "Verify that we can not violate the policy of which files may be accessed that is specified by the root directory, by verifing that the root directory is at the root of the mount namespace which allows all files to be accessed."
05:44:13 <int-e> Bah. https://salsa.debian.org/kernel-team/linux/-/blob/master/debian/patches/debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch
05:45:40 <zzo38> Is read permission required if you try to execute a file that has setuid bit but it is ignored? I think that, in addition to requiring execute permission, in order to execute a file, it should require that either the effective user owns the file or the effective user has permission to read the file.
05:45:43 <int-e> So on Debian one needs sysctl kernel.unprivileged_userns_clone=1
05:45:53 <int-e> And then it works.
05:46:49 <shachaf> int-e: Well, so much for my kernel source code reading efforts.
05:47:22 <zzo38> (perhaps only for files with setuid/setgid, although perhaps in other cases too, such as if namespaces have been tampered with in any way at all)
05:47:55 -!- adu has quit (Quit: adu).
05:47:56 <int-e> shachaf: I'm sorry. I went down the same road though... https://elixir.bootlin.com/linux/latest/source/kernel/user_namespace.c#L69 is a useful site for that (it has links for identifiers)
05:48:18 <shachaf> int-e: I was mostly using livegrep.com
05:48:26 <int-e> shachaf: And only then I decided that it's probably something Debian specific.
05:49:06 <int-e> Gotta love the "This is a short-term patch." from 2013.
05:50:02 <shachaf> It says "saucy" -- is it an Ubuntu thing?
05:51:17 <int-e> Well, Ubuntu is based on Debian.
05:51:33 <int-e> So it's no big surprise if patches flow in the other direction as well?
05:51:53 <int-e> Not everything Ubuntu does is stupid ;)
05:57:46 -!- arseniiv has joined.
05:59:03 <int-e> (I'm somewhat divided on whether this is a good patch or a bad patch... what is horrible is discoverability of the feature.)
06:19:52 <shachaf> If only there was more than a numeric error code for system calls to fail with.
06:20:06 <shachaf> I don't know why they even have any error code other than EINVAL, since it covers every use case.
07:05:46 -!- sftp has quit (Ping timeout: 244 seconds).
07:06:00 -!- sftp has joined.
07:18:04 -!- imode has quit (Ping timeout: 260 seconds).
07:19:24 -!- LKoen has joined.
08:08:23 -!- hendursa1 has joined.
08:11:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:38:43 -!- dog_star has quit (Ping timeout: 272 seconds).
08:38:54 -!- dog_star has joined.
10:27:09 <esowiki> [[05AB1E]] https://esolangs.org/w/index.php?diff=77796&oldid=77453 * SunnyMoon * (+414) 2sable!
10:35:57 <esowiki> [[Zirconium]] https://esolangs.org/w/index.php?diff=77797&oldid=77773 * RocketRace * (-2) Synthetic station definitions should be postfix, not prefix
10:37:49 <Arcorann> https://sr.ht/~sircmpwn/evilpass/ <-- that's one way of checking password security
10:40:14 <myname> nice
10:42:31 -!- Sgeo has quit (Read error: Connection reset by peer).
10:49:20 <esowiki> [[Special:Log/newusers]] create * SoicBR * New user account
10:55:05 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77798&oldid=77793 * SoicBR * (+295) /* Introductions */
11:12:21 -!- laerling has quit (Quit: leaving).
11:23:52 -!- t20kdc has joined.
12:19:55 -!- arseniiv has quit (Ping timeout: 240 seconds).
12:21:27 -!- t20kdc has quit (Remote host closed the connection).
12:42:59 -!- sebbu2 has joined.
12:43:36 -!- sebbu has quit (Ping timeout: 256 seconds).
12:46:53 -!- sebbu2 has changed nick to sebbu.
13:05:00 -!- Arcorann_ has joined.
13:07:25 -!- Arcorann has quit (Ping timeout: 240 seconds).
13:38:47 -!- moony has quit (Remote host closed the connection).
13:39:14 -!- ATMunn_ has joined.
13:39:19 -!- ATMunn has quit (Quit: lol rip).
13:39:21 -!- moony has joined.
15:07:17 -!- Lord_of_Life_ has joined.
15:07:56 -!- at-nyc has joined.
15:09:29 <at-nyc> Not sure this is the right place, but I couldn’t believe that esolang.org wasn’t already a redirect to esolangs.org. I bought it and want to donate/transfer the registration. Who do I contact about that?
15:09:45 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
15:09:55 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
15:12:10 <b_jonas> at-nyc: you contact fizzie here
15:13:18 <at-nyc> Excellent — thank you
15:13:25 <fizzie> The problem with domains is, you need to keep paying for them. True, it's not much, but it's the principle of the thing.
15:14:22 -!- at-nyc has quit (Remote host closed the connection).
15:16:52 <b_jonas> fizzie: yeah. so I presume either at-nyc pays for them, or it just goes to resale after they stop paying for them, and is a redirect until that.
15:17:15 <fizzie> That's what would happen if it was transferred to me, at least.
15:17:33 <b_jonas> maybe they don't realize just how old this channel is, and bought it for six years which is basically forever on the internet
15:17:44 <fizzie> I'm not sure our "brand" warrants starting to collect variant domains. Of course if someone else wants to hold esolang.org (either as an alias for esolangs.org, or for any other purpose), I'm fine with that.
15:18:41 <b_jonas> the wiki started in 2005 I think, and the channel before 2002-12
15:19:00 <b_jonas> it's crazy
15:19:33 <b_jonas> "brand" hmm. are we selling T-shirts and such merchandise yet?
15:23:18 <fizzie> Time to set up a CafePress shop, I guess.
15:23:22 <fizzie> (No, we're not.)
15:23:44 <fizzie> I've got a fungot T-shirt for special occasions, but I just got it done at one of those design-your-own places.
15:23:44 <fungot> fizzie: for a while it was frustrating. hb, used his sword into. he went in and killed some powerful monsters with his new hammer to the specibus
15:24:33 -!- hendursa1 has quit (Quit: hendursa1).
15:24:49 -!- hendursaga has joined.
15:28:27 -!- Arcorann_ has quit (Read error: Connection reset by peer).
15:29:23 <b_jonas> I only visit like a handful of internet communities that are this old. perlmonks started in 2000, my user was registered in 2003, but I'm not very active there anymore. Tom7's blog (radar) is active since 2000, but I only found it in 2006 when he organized an ICFP contest. I don't know when I started reading David Madore's blog, but that one started in 2003.
15:30:11 <b_jonas> http://www.madore.org/~david/weblog/d.2003-09-17.0234.html always amazes me: it's a post where David scans some public domain images and hosts them on his webpage. The normal place to host such images would be Wikimedia Commons, but Commons actually didn't exist back then. It's so hard to imagine that now.
15:31:56 <b_jonas> what the. ERICH FRIEDMAN'S MATH MAGIC ENDED?
15:32:41 <b_jonas> it apparently dropped out from its former address http://www2.stetson.edu/~efriedma/mathmagic/archive.html , and there's an archive at https://erich-friedman.github.io/mathmagic/
15:32:52 <b_jonas> that's been going on from 1998 every month
15:33:08 <b_jonas> sad
15:34:47 <b_jonas> that's one of the oldest continuously active website that dropped out of the internet
15:36:16 <b_jonas> not the oldest, because yahoo.com web search started in 1995 and is still active and I have been using it
15:40:52 <fizzie> google.com's been around since 1998, and I'm still using it quite often.
15:41:04 <fizzie> Not exactly a "community" though.
15:43:15 <fizzie> https://www.fidonet.org/genlinfo.html "Accessing Fidonet via BBS is gaining in prominence." :)
15:43:43 <rain1> how come i never heard about erich friedman
15:43:48 -!- mich181189 has quit (Ping timeout: 272 seconds).
15:44:42 -!- ocharles has quit (Ping timeout: 260 seconds).
15:44:53 <myname> neither have i
15:45:13 -!- mich181189 has joined.
15:45:36 <b_jonas> fizzie: yeah.
15:46:31 <fizzie> sieni.us had shut down (well, removed all the content) recently, that's another semi-old (2005) piece of (Finnish) Internet subculture gone. :/
15:47:02 <b_jonas> rain1: I have a link on my homepage. notable parts of his homepage are Math Magic (monthly puzzles posted by Friedmann, optimized by an open community, i.e. anyone can send solutions in email), packing center, puzzle collection, and periodic table of mathematicians (biographies)
15:47:04 -!- ocharles has joined.
15:47:41 <b_jonas> when was en.wikipedia founded? in 2001 apparently
15:48:45 <b_jonas> IOCCC is yearly regular since 1998
15:48:58 <b_jonas> no sorry
15:49:05 <b_jonas> ICFP contest is yearly regular since 1998
15:49:29 <b_jonas> IOCCC is yearly irregular since 1984 WOW
15:49:36 <b_jonas> it's older than me? that's crazy
15:50:06 <b_jonas> I never realized that, despite that its first winner contains machine code for two obsolete CPU architectures
15:50:49 <b_jonas> ioccc/1984/mullender and for VAX-11 and PDP-11
15:51:52 <fizzie> The (probably-)largest-circulation Finnish computer magazine ("MikroBitti") had a BBS system from 1994 onwards, later with some Internet things (email, a ~10-megabyte web page hosting place), and it was still accessible over telnet up to... well, sometime this millennium, anyway.
15:53:47 <fizzie> The BBS had a funny time-keeping system, you were allowed to be connected for up to 60 minutes/day, but you could also save your unused time in the "time bank" I think up to 4 hours or so, which was convenient for some of the larger downloads that would take over an hour.
15:55:45 <b_jonas> fizzie: until what time was it accessible outside the internet?
15:56:55 <fizzie> Apparently only until 2002.
15:57:05 <fizzie> Oh, "outside".
15:57:08 <fizzie> Hmm, not sure.
15:57:34 <fizzie> Maybe they turned off both the internet and phone lines at the same time, in 2002.
15:59:27 <fizzie> https://www.reddit.com/r/IAmA/comments/1m6ift/i_was_the_sysop_of_mbnet_perhaps_the_biggest_bbs/
15:59:57 <b_jonas> I see
16:00:23 <b_jonas> I hope someone has a backup of most of the static content on the web
16:00:46 <b_jonas> (in, like, one small zip on archive.com)
16:15:29 -!- arseniiv has joined.
16:32:32 -!- user24 has joined.
18:02:44 -!- b_jonas has quit (Quit: leaving).
18:04:49 -!- b_jonas has joined.
18:11:50 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=77799&oldid=77748 * Olivato * (+15) /* C */
18:26:41 -!- Remavas has joined.
18:26:59 -!- Remavas has quit (Client Quit).
18:29:43 -!- imode has joined.
18:53:00 <esowiki> [[Complack]] N https://esolangs.org/w/index.php?oldid=77800 * Olivato * (+5013) Created page with "'''Complack''' is a simple, stack-based language created by [[User:Olivato]]. Is based in [[Simplack]] created by [[User:Saka]]. Complack means '''Compl'''ex St'''ack''' is an..."
18:55:16 <esowiki> [[Complack]] https://esolangs.org/w/index.php?diff=77801&oldid=77800 * Olivato * (+36)
18:56:26 <esowiki> [[Complack]] https://esolangs.org/w/index.php?diff=77802&oldid=77801 * Olivato * (-1) /* Fibonacci of the n-th */
18:56:44 <esowiki> [[Complack]] https://esolangs.org/w/index.php?diff=77803&oldid=77802 * Olivato * (-2) /* Subroutine */
18:56:58 <esowiki> [[Complack]] https://esolangs.org/w/index.php?diff=77804&oldid=77803 * Olivato * (-3) /* Using multiple stacks */
18:58:48 <esowiki> [[Simplack]] https://esolangs.org/w/index.php?diff=77805&oldid=56199 * Olivato * (+95)
19:02:40 -!- MDude has joined.
19:08:37 -!- arseniiv has quit (Ping timeout: 258 seconds).
19:10:49 -!- adu has joined.
19:16:13 -!- MDude has quit (Read error: No route to host).
19:31:09 -!- Sgeo has joined.
19:54:43 -!- adu has quit (Quit: adu).
20:02:27 <zzo38> Do you know what software was the MikroBitti BBS system? Was it any common one?
20:03:56 <zzo38> I know a program still being maintained is Synchronet, which now supports JavaScript, although I don't know if it supports typed arrays yet (and other modern JavaScript features).
20:07:35 -!- user24 has quit (Quit: Leaving).
20:33:19 <fizzie> zzo38: It was PCBoard-based, I believe.
20:35:28 <fizzie> I think I set up an instance of BBBS once, just to play around with it, but I don't think I ever had it externally accessible.
20:36:42 <fizzie> Huh, I wonder what's the name of that one Mac OS -oriented BBS system, with a GUI and all.
20:36:48 <fizzie> Oh, right, FirstClass.
20:38:00 <fizzie> The local Mac users' community (fiMUG) had a BBS based on that, I always found it really charming.
20:38:51 <fizzie> https://upload.wikimedia.org/wikipedia/en/1/1c/FirstClass_GLFN_desktop.png
20:39:07 <fizzie> It had these small red flags denoting unread messages.
21:01:13 <b_jonas> fizzie: phpbb can do the small red flags for undread messages in HTML too
21:02:16 <b_jonas> the mnemonic is weird because we never had those kinds of mailboxes here in the city
21:02:26 <b_jonas> I think they only exist in the American country
21:02:43 <b_jonas> with huge fields where you want to see if you got mail from far away
21:05:44 -!- aaaaaa has joined.
23:40:04 <b_jonas> oh great. an advertisment of snack food where the highlighted feature is that the new product is smaller than the previous one of the same brand. smaller. that's it. if they can sell with this, they can sell anything. not that all the spam I get doesn't already prove that they can sell anything.
23:45:50 <fizzie> Is it called "fun-sized"?
23:55:17 <int-e> maybe all the taste is one the surface and all the calories are inside
23:55:24 <int-e> one -> on
23:57:26 <b_jonas> fizzie: no. "mini".
23:57:40 <b_jonas> int-e: it's a snack. calories aren't the point.
23:57:54 <b_jonas> a salty cracker.
23:58:15 <b_jonas> biscuit type, not bread type.
2020-10-04
00:05:54 -!- Arcorann_ has joined.
01:25:32 <esowiki> [[05AB1E]] https://esolangs.org/w/index.php?diff=77806&oldid=77796 * TwilightSparkle * (+82) /* 2sable */
01:29:21 <esowiki> [[Talk:SCREAMCODE]] N https://esolangs.org/w/index.php?oldid=77807 * TwilightSparkle * (+227) Created page with "We already had enough of these trivial BF derivatives. When you get bored, please at least do something creative, please! ~~~~"
02:04:52 <esowiki> [[Ecstatic]] https://esolangs.org/w/index.php?diff=77808&oldid=67121 * B jonas * (+54) /* Syntax */
02:10:19 <esowiki> [[Unary]] https://esolangs.org/w/index.php?diff=77809&oldid=75557 * B jonas * (+14) /* See also */
02:16:23 <esowiki> [[Unary]] https://esolangs.org/w/index.php?diff=77810&oldid=77809 * B jonas * (+3) /* See also */
02:26:45 <esowiki> [[Trivial brainfuck substitution]] https://esolangs.org/w/index.php?diff=77811&oldid=69323 * B jonas * (+616) show just how many of these are on the wiki
02:31:25 -!- LKoen has quit (Read error: Connection reset by peer).
02:31:32 -!- LKoen has joined.
03:52:50 <b_jonas> so when I bought four 4TB hard disks with the new machine, planning to have two internal and two that I occasionally plug in to make backups on and swap them so one is off-site all the time, I knew that some of the HDD manufacturers don't tell which of their drives is secretly shingled.
03:54:19 <b_jonas> this is obviously bad, because customers could choose the right HD for the right purpose if they knew which ones are which, eg. I'd buy two non-shingled ones as internal and two shingled ones for the backups; and operating systems could optimize use of shingled drives much better than in the current situation when the firmware just doesn't tell anything about what it's doing and all the OS can do is
03:54:25 <b_jonas> hope that the drive won't lock up for an hour rearranging data.
03:55:18 <b_jonas> and I specifically bought three different types of 4TB drives, from the three different manufacturers. and yes, I admit I bought two of the cheapest of the three types, but still.
03:56:43 <b_jonas> now it turns out that of the four drives that I have bought, Seagate Barracuda ST4000DM004 is definitely shingled, the two Toshiba HDWD240UZSVA P300 are definitely shingled, and Western Digital WD40EZAZ is either not shingled or WD "forgot" to admit because the sysadmins couldn't prove that it's shingled yet
03:58:51 <b_jonas> even not buying two of the cheapest wouldn't have saved me, because the Seagate would have been my second choice for what I'd buy twice (it costs only slightly more than the WD and the main drive in my old computer is WD)
03:59:59 <b_jonas> and when I choose to buy the next hard disk, I'll still only have the choice of buying a years old model, of which sysadmins would have discovered if it was shingled, or buying a new model that may be fake shingled.
04:00:57 <b_jonas> but I hope this will only keep up for a few years, after which hardware manufacturers will go on to another trick because this no longer works.
04:16:59 -!- LKoen has quit (Remote host closed the connection).
06:13:24 -!- aaaaaa has quit (Quit: leaving).
07:43:42 <esowiki> [[05AB1E]] M https://esolangs.org/w/index.php?diff=77812&oldid=77806 * SunnyMoon * (+4) The "citation needed" mark is normally italics on Wikipedia.
07:47:23 -!- sprocklem has quit (Ping timeout: 240 seconds).
07:48:00 <esowiki> [[05AB1E]] M https://esolangs.org/w/index.php?diff=77813&oldid=77812 * SunnyMoon * (+32) Does it make sense?
08:05:38 <esowiki> [[SCREAMCODE]] M https://esolangs.org/w/index.php?diff=77814&oldid=77778 * SunnyMoon * (-8) Please, use swear words only when it is needed.
08:08:47 -!- hendursa1 has joined.
08:11:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:42:01 <esowiki> [[Blub]] https://esolangs.org/w/index.php?diff=77815&oldid=53853 * SunnyMoon * (+0) It should be capital. (Modified with ///)
08:52:44 <imode> really. removing a curse word.
08:52:54 <imode> I don't contribute but we're adults.
08:58:20 <imode> you can say fuck on the internet.
09:27:56 -!- sftp has quit (Ping timeout: 240 seconds).
09:29:00 -!- ATMunn_ has quit (Ping timeout: 240 seconds).
09:31:05 -!- ATMunn has joined.
09:31:07 -!- Sgeo_ has joined.
09:33:56 -!- Sgeo has quit (Ping timeout: 240 seconds).
09:34:29 -!- user24 has joined.
09:35:03 -!- sftp has joined.
09:45:45 <esowiki> [[Trivial brainfuck substitution]] M https://esolangs.org/w/index.php?diff=77816&oldid=77811 * SunnyMoon * (+4607) Wikitableified!
09:50:36 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
09:54:24 -!- LKoen has joined.
09:54:50 -!- LKoen has quit (Read error: Connection reset by peer).
09:55:19 -!- LKoen has joined.
10:14:26 -!- Lord_of_Life has joined.
10:29:49 -!- xelxebar has quit (Remote host closed the connection).
10:30:52 -!- xelxebar has joined.
10:31:24 -!- imode has quit (Ping timeout: 260 seconds).
10:50:54 -!- Sgeo_ has quit (Read error: Connection reset by peer).
11:13:19 -!- kspalaiologos has joined.
11:36:56 <esowiki> [[User:CMinusMinus]] https://esolangs.org/w/index.php?diff=77817&oldid=72049 * CMinusMinus * (+0)
12:25:26 -!- j-bot has quit (Remote host closed the connection).
12:25:41 -!- j-bot has joined.
12:32:20 -!- kspalaiologos has quit (Quit: leaving).
12:35:05 -!- hendursa1 has quit (Quit: hendursa1).
12:35:22 -!- hendursaga has joined.
14:05:57 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:26:51 -!- laerling has joined.
14:27:55 -!- laerling has quit (Changing host).
14:27:55 -!- laerling has joined.
14:36:56 -!- user24 has quit (Quit: Leaving).
15:11:11 -!- arseniiv has joined.
15:12:59 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77818&oldid=77648 * Aspwil * (-15) /* Positive integers addition */
15:24:01 <esowiki> [[Modulous]] M https://esolangs.org/w/index.php?diff=77819&oldid=77599 * Abyxlrz * (+9)
15:33:15 -!- LKoen has quit (Remote host closed the connection).
16:04:02 -!- LKoen has joined.
16:10:39 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77820&oldid=77818 * Aspwil * (+998)
16:21:40 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77821&oldid=77820 * Aspwil * (+524)
16:30:13 -!- arseniiv has quit (Ping timeout: 264 seconds).
16:34:29 -!- arseniiv has joined.
17:05:53 -!- sprocklem has joined.
17:31:42 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77822&oldid=77821 * Aspwil * (+1731) /* Libraries */
17:56:47 <esowiki> [[Special:Log/newusers]] create * Winkula * New user account
18:00:51 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77823&oldid=77798 * Winkula * (+201) winkula introduces himself
18:03:01 <esowiki> [[BIT]] https://esolangs.org/w/index.php?diff=77824&oldid=30442 * Winkula * (+80) added link to unofficial BIT interpreter
18:03:32 <esowiki> [[Asm2bf]] M https://esolangs.org/w/index.php?diff=77825&oldid=77272 * Palaiologos * (+127)
18:31:52 -!- Cale has quit (Remote host closed the connection).
18:33:44 -!- Cale has joined.
19:02:29 -!- Sgeo has joined.
19:02:35 -!- xelxebar has quit (Remote host closed the connection).
19:02:58 -!- xelxebar has joined.
19:11:35 -!- imode has joined.
19:47:07 -!- FreeFull has joined.
19:49:26 -!- FreeFull has quit (Read error: Connection reset by peer).
20:11:53 -!- FreeFull has joined.
21:21:37 <esowiki> [[Special:Log/newusers]] create * CogitoErgoCode * New user account
21:41:39 -!- sprocklem has quit (Ping timeout: 260 seconds).
22:26:42 -!- xelxebar has quit (Remote host closed the connection).
22:27:03 -!- xelxebar has joined.
22:30:40 -!- FreeFull has quit.
22:33:27 -!- Arcorann_ has joined.
22:53:20 -!- 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.”).
2020-10-05
00:03:54 * pikhq contemplates doing things that are esoteric-related again
00:16:01 -!- arseniiv has quit (Ping timeout: 246 seconds).
02:32:18 <esowiki> [[Special:Log/newusers]] create * Scratcher * New user account
02:40:52 -!- fungot has quit (Ping timeout: 260 seconds).
02:45:23 -!- fungot has joined.
04:02:26 -!- xelxebar has quit (Remote host closed the connection).
04:02:55 -!- xelxebar has joined.
04:12:19 -!- sprocklem has joined.
04:35:55 <pikhq> been so long though. what even to do...
04:37:19 <imode> join me in shaving the steps off of this RAM ruleset.
05:42:17 <zzo38> Are there standard TeX fonts for unslanted lowercase Greek alphabets?
05:42:45 <zzo38> (It would probably be easy enough to make such fonts, but I want to know if there are standard ones.)
05:55:16 <Arcorann_> There should be as part of whatever packages people use to type Greek
05:59:09 <zzo38> Maybe, but I meant for mathematical typesetting, not for writing Greek words.
07:14:10 -!- sprocklem has quit (Quit: ...).
07:30:08 -!- Sgeo has quit (Read error: Connection reset by peer).
08:08:39 -!- hendursa1 has joined.
08:11:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:22:14 -!- imode has quit (Ping timeout: 256 seconds).
08:27:43 -!- hendursa1 has quit (Ping timeout: 240 seconds).
08:29:52 -!- hendursa1 has joined.
09:17:09 <esowiki> [[User:SunnyMoon]] https://esolangs.org/w/index.php?diff=77826&oldid=77591 * SunnyMoon * (+41) 33!
09:25:17 <esowiki> [[User:SunnyMoon]] M https://esolangs.org/w/index.php?diff=77827&oldid=77826 * SunnyMoon * (+63) I am also playing around with TPT!
09:49:08 -!- Lord_of_Life_ has joined.
09:51:27 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
09:51:27 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
11:28:06 <esowiki> [[Babel]] N https://esolangs.org/w/index.php?oldid=77828 * Sinthorion * (+2598) Created page with "'''Babel''' is an esolang currently developed by [[User:Sinthorion|Sinthorion]], in which the source code may only contain the lowercase letters, whitespace, commas and period..."
12:14:59 -!- arseniiv has joined.
12:25:49 <esowiki> [[User:SoicBR]] N https://esolangs.org/w/index.php?oldid=77829 * SoicBR * (+109) Created page with "User:SoicBR is a hobbyst programmer and game developer. He created the A.R.T.I.C.L.E. programming language."
12:36:59 -!- hendursa1 has quit (Quit: hendursa1).
12:37:16 -!- hendursaga has joined.
13:20:02 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77830&oldid=77823 * OsmineYT * (+168)
13:34:37 <esowiki> [[A.R.T.I.C.L.E. Lang]] N https://esolangs.org/w/index.php?oldid=77831 * SoicBR * (+9191) Created page with "A.R.T.I.C.L.E. is an esoteric programming language created in 5/10/2020 by [[User:SoicBR]] A.R.T.I.C.L.E. stands for: Apple Random Tower Island Cat Lol Elephant In A.R.T..."
13:44:45 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77832&oldid=77831 * SoicBR * (-68) /* Phrases */
13:45:00 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77833&oldid=77832 * SoicBR * (-46) /* Phrases */
13:50:05 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77834&oldid=77833 * SoicBR * (+91) /* Phrases */
13:51:18 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77835&oldid=77834 * SoicBR * (+0)
13:59:25 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77836&oldid=77835 * SoicBR * (+91)
14:02:06 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=77837&oldid=77637 * SoicBR * (+1496) /* Implementations */
14:05:25 <esowiki> [[Truth-machine]] M https://esolangs.org/w/index.php?diff=77838&oldid=77837 * SoicBR * (+0) /* Implementations */
14:09:51 -!- Sgeo has joined.
14:10:03 <esowiki> [[Hello world program in esoteric languages]] https://esolangs.org/w/index.php?diff=77839&oldid=77789 * SoicBR * (+1824)
14:29:59 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:31:14 <esowiki> [[User:SoicBR]] M https://esolangs.org/w/index.php?diff=77840&oldid=77829 * SoicBR * (+28)
15:03:52 <esowiki> [[A.R.T.I.C.L.E. Lang]] M https://esolangs.org/w/index.php?diff=77841&oldid=77836 * SoicBR * (-4) /* The accumulator(A) */
15:03:53 -!- FreeFull has joined.
15:22:06 -!- uplime has changed nick to Frankenstein.
16:11:34 -!- LKoen has joined.
17:00:13 -!- MDude has joined.
17:21:40 <shachaf> `olist 1216
17:21:42 <HackEso> olist https://www.giantitp.com/comics/oots1216.html: shachaf oerjan Sgeo FireFly boily nortti b_jonas
17:32:04 <b_jonas> `thanks HackEso
17:32:06 <HackEso> Thanks, HackEso. ThackEso.
17:39:10 <int-e> Thacky.
17:56:07 -!- unrooted has joined.
18:14:48 <esowiki> [[2DFuck]] M https://esolangs.org/w/index.php?diff=77842&oldid=77757 * SunnyMoon * (+4) linkify
18:15:45 <esowiki> [[!@$%^&*()+]] M https://esolangs.org/w/index.php?diff=77843&oldid=77767 * SunnyMoon * (+2) linkify
18:18:33 <int-e> . o O ( hmm, bash problem: Wait for a child process that the shell didn't spawn itself. Currently that's the last thing I want to do so I can do exec perl -e "waitpid($PID,0)"... )
18:29:20 -!- imode has joined.
18:54:27 <fizzie> If the shell didn't spawn it, how is it a child of the shell?
18:57:44 <fizzie> Hmm, guess it could have been spawned by the process that exec'd the shell.
18:59:36 <shachaf> Perhaps the shell ptraced it.
19:00:40 <shachaf> Man, ptrace has a bug where it makes epoll_wait (but not poll etc.) fail with EINTR.
19:01:05 -!- trn has quit (Ping timeout: 240 seconds).
19:01:57 <shachaf> The other day I ran into a program where that was actually a problem (it wasn't restarting on EINTR).
19:02:08 -!- hendursaga has quit (Remote host closed the connection).
19:03:06 -!- hendursaga has joined.
19:23:47 <int-e> fizzie: It's spawned by the process that execs the shell.
19:24:51 <int-e> Using clone() with too many flags, so doing *that* in the shell is hardly an option.
19:30:22 <shachaf> Why does the thing exec a shell?
19:30:30 <int-e> because I'm lazy
19:31:25 <int-e> It's more convenient to write a dozen of shell commands than to figure out their C equivalent.
19:32:06 * int-e is playing with namespaces
19:34:52 <int-e> Anyway, I why do I have to explain why on #esoteric :P
19:35:33 <shachaf> Why do I have to explain why you have to explain why on #esoteric?
19:35:41 <int-e> (I know I'm guilty of asking why too.)
19:37:40 <shachaf> One thing about ptrace is, as far as I can tell, you have to be willing to get unknown pids from wait()
19:38:01 <shachaf> Since a process might fork and then you might get an event from the child before you get a fork event from the parent.
19:38:27 <shachaf> Man, fork, what an esoteric bit of nonsense that's in every Unix system.
19:39:38 <int-e> isn't it a really clever hack though
19:42:13 <b_jonas> shachaf: no, not really. firstly, you only start to automatically ptrace child processes if you set the PTRACE_O_TRACEFORK option, which I think isn't default; second you can listen to PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE messages to find out about those children, without having to decode every system call
19:42:46 <shachaf> b_jonas: Yes, it's true, I meant only if you set TRACE{FORK,CLONE,VFORK}
19:43:11 <shachaf> But you might get the wait results before the PTRACE_EVENT telling you about the new pid.
19:43:59 <shachaf> I suppose you could avoid waitpid(-1) and only give it specific pids that you know about, but that doesn't seem great.
19:44:09 <b_jonas> but waiting for arbitrary pids with waitpid or wait4 is usually the default anyway, unless perhaps you use some "fun" combination of threading and signals to find out about the pids.
19:44:45 <b_jonas> like, if you have just one thread, you might as well call waitpid or wait4 with pid=-1, since you have to handle every wait notification sooner or later anyway
19:44:53 <b_jonas> at worst you store the data for later
19:46:14 <b_jonas> waiting for a specific pid is a shortcut only for very simple programs, and doing a ptrace more or less excludes that
19:46:21 <shachaf> I agree.
19:46:39 <shachaf> But it means you have to handle unknown pids, as far as I can tell.
19:47:14 <shachaf> These are my notes about using ptrace: https://shachaf.net/tmp/ptrace-notes.txt
19:47:39 <b_jonas> ok
19:48:15 <b_jonas> I don't expect to use ptrace directly, it's usually best to leave that to debuggers or strace
19:48:36 <shachaf> I wrote a program which is like a mini-strace.
19:49:02 <b_jonas> ok
20:07:44 <rain1> I wonder if i should switch to qwerty
20:09:25 <myname> from what
20:10:33 <rain1> dvorak
20:10:41 <b_jonas> rain1: depends on what kind of text you usually type
20:10:58 <rain1> the problem is the key caps are different from what they do
20:11:08 <rain1> and programs on my computre are sometimes not acting right because of it
20:11:26 <b_jonas> you could even switch between them for those programs
20:12:33 <b_jonas> I tried dvorak for a few weeks, but decided I don't want it
20:12:43 <b_jonas> might still experiment with some nonstandard layouts some time in the future
20:13:00 <rain1> i do have caps lock for switching
20:14:16 <b_jonas> the keycaps shouldn't matter. just don't look at the keycaps, and perhaps put a layout poster on the wall for a few weeks while you get used to it so you can reference it quickly
20:14:28 <b_jonas> I used a dead-tree poster to learn dvorak
20:16:08 <rain1> ive been using dvorak for many years but i think the keycaps do matter
20:18:14 -!- trn has joined.
20:19:25 <zzo38> Can you use system call emulation to avoid the bug with epoll_wait? (Better would be to fix the bug in the kernel, if it can, though, I suppose)
20:20:23 -!- mich181189_ has joined.
20:21:36 <myname> keycaps don't really matter
20:21:48 <zzo38> I think many programs are designed to be used with qwerty, although in many cases you can customize the key bindings anyways
20:24:18 -!- sprocklem has joined.
20:25:52 -!- mich181189 has quit (Ping timeout: 244 seconds).
20:25:55 -!- mich181189_ has changed nick to mich181189.
20:33:54 <b_jonas> rain1: keycaps matter for the rare keys, like printscreen, I always get confused where that one is; and for learning
20:34:13 <b_jonas> keycaps also matter if you have one of these stupid keyboards that just rearranges the normal layout for no reason
20:34:20 <b_jonas> but I just don't want to buy those
20:34:57 <b_jonas> zzo38: yes, the classic example for that is wordstar, it's definitely designed for qwerty
20:42:22 <zzo38> Yes, and some other DOS programs are designed to use keys similar to Wordstar too
21:02:14 -!- unrooted has quit (Ping timeout: 260 seconds).
21:41:21 -!- Arcorann_ has joined.
21:41:55 -!- Arcorann_ has quit (Remote host closed the connection).
21:42:21 -!- Arcorann_ has joined.
21:51:51 <int-e> . o O ( Turbo Pascal IDE )
22:19:55 -!- ^[_ has quit (Ping timeout: 272 seconds).
22:21:55 -!- ^[_ has joined.
22:24:20 -!- Sgeo_ has joined.
22:27:33 -!- Sgeo has quit (Ping timeout: 258 seconds).
22:34:12 <shachaf> I apt installed Free Pascal the other day.
22:34:27 <shachaf> It has the classic Turbo Pascal look. It's great.
22:34:32 <shachaf> Maybe Pascal is just a good language?
22:45:05 -!- 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.”).
22:55:51 <arseniiv> shachaf: does it try to have features like in Scala, C# etc.? I tend to associate Pascal and Delphi with something which is not comfortable to code in because of a squareish type system, lack of closures etc.. I heard Delphi has risen from the earth but I hope Free Pascal would be even better. If it has cool fuctional features surely I’m going to read about it more in the future!
22:56:12 <shachaf> I don't know.
22:56:18 <shachaf> I don't want most of the features in Scala.
22:57:50 <arseniiv> <b_jonas> I used a dead-tree poster to learn dvorak => have you felt it a useful system?
22:58:30 <arseniiv> I type with two index fingers and even can do so blind when the keyboard don’t changes its location too much
22:59:05 <arseniiv> <b_jonas> I tried dvorak for a few weeks, but decided I don't want it => ah, sorry, didn’t read that in time
23:00:28 <arseniiv> shachaf: I don’t know Scala’s features to the full extent so maybe it was a bad example language, yep
23:00:44 <shachaf> Should I use it instead of C, for example?
23:01:10 <arseniiv> don’t changes => oof grammar why don’t you love me
23:01:37 <arseniiv> shachaf: Scala definitely no, or are you about Free pascal?
23:01:48 <shachaf> Free Pascal.
23:02:58 <arseniiv> then I’ll second you on that. If it allows that I would have a big benefit from learning it, to write small self-contained cross-platform utility programs at least
23:03:57 <arseniiv> as I don’t want to touch C even when it’s definitely simpler than C++ and maybe even has less strange quirks
23:04:37 <esowiki> [[A.R.T.I.C.L.E. Lang]] M https://esolangs.org/w/index.php?diff=77844&oldid=77841 * SoicBR * (-2) /* The Stack */
23:04:44 <arseniiv> but if today’s Pascal not strong enough then I’ll try to live without both
23:07:12 -!- FreeFull has quit (Quit: Night).
23:09:23 -!- arseniiv has quit (Ping timeout: 260 seconds).
23:24:26 <b_jonas> arseniiv: I found that it might be useful for English, but I had to type text in Hungarian too, and it doesn't work well for that. the design of dvorak is based on two things: common letters on easy to reach positions, and vowels on one hand while common consonants on the other so you alternate your hands most of the time. you could designe something based on that for Hungarian, but it would have to
23:24:32 <b_jonas> look different from dvorak.
23:24:49 <b_jonas> I do know at least one person who uses a close variant of dvorak for Hungarian too though.
23:25:42 <b_jonas> I type with nine or ten fingers, except if I need to type when I'm eating with my left hand, in which case I type with all five fingers of my right hand.
23:26:01 <b_jonas> or, rarely, all five fingers of my right hand plus my left pinky
23:30:49 <b_jonas> M:tG stuff: so apparently there are three 3/2 creatures for 1G without drawbacks. The first one was Terrain Elemental from Kaladesh, a vanilla; then Kraul Harpooner from Guilds of Ravnica; and now Tajuru Paragon from Zendikar Rising, which is an Elf Warrior. This is the last nail on Elvish Warrior's coffin.
2020-10-06
00:26:02 -!- tromp has quit (Read error: Connection reset by peer).
00:26:39 -!- tromp has joined.
01:51:28 <pikhq> poor, poor elvish warrior
02:52:11 -!- adu has joined.
03:24:19 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
03:27:25 -!- MDude has joined.
04:03:25 -!- sprocklem has quit (Ping timeout: 240 seconds).
04:04:16 -!- adu has quit (Quit: adu).
06:05:01 -!- ocharles has quit (*.net *.split).
06:05:02 -!- Soni has quit (*.net *.split).
06:05:02 -!- spruit11 has quit (*.net *.split).
06:05:02 -!- izabera has quit (*.net *.split).
06:05:02 -!- paul2520 has quit (*.net *.split).
06:05:12 -!- Soni has joined.
06:05:15 -!- ocharles has joined.
06:10:12 -!- spruit11 has joined.
06:10:12 -!- izabera has joined.
06:10:12 -!- paul2520 has joined.
06:40:04 <esowiki> [[SCREAMCODE]] M https://esolangs.org/w/index.php?diff=77845&oldid=77814 * Rdebath * (+411) Add TBI link
06:43:19 <esowiki> [[SCREAMCODE]] M https://esolangs.org/w/index.php?diff=77846&oldid=77845 * Rdebath * (+14) Links at top of page
07:55:54 -!- Sgeo_ has quit (Read error: Connection reset by peer).
08:08:52 -!- hendursa1 has joined.
08:11:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:23:23 -!- imode has quit (Ping timeout: 240 seconds).
08:24:00 -!- cpressey has joined.
08:26:08 <esowiki> [[Pxem]] https://esolangs.org/w/index.php?diff=77847&oldid=75428 * YamTokTpaFa * (+36)
09:45:25 -!- b_jonas has quit (Ping timeout: 240 seconds).
09:51:55 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
09:52:02 -!- Lord_of_Life_ has joined.
09:53:16 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
09:58:39 <cpressey> int-e: I was playing around with your solitaire game again. I still can't wrap my head around all the parts.
09:58:59 <cpressey> I remember asking if prompt requires that what you give it is a GADT, in order for it to be correct by construction.
09:59:15 <cpressey> I think the answer is "no", because you can always make a GADT that just behaves like a plain ADT anyway.
10:01:27 <cpressey> I had to hunt to find out what "|" in a type class definition means, apparently it introduces a "functional dependency", which seems straightforward, at least on the surface, but maybe it's far more powerful than its most common use cases suggest
10:06:37 <shachaf> What is this thing?
10:07:40 <cpressey> shachaf: https://hackage.haskell.org/package/MonadPrompt-1.0.0.5/docs/Control-Monad-Prompt.html
10:08:13 <shachaf> I know that one.
10:08:32 <shachaf> Hmm, is the question about the Prompt part or the type class part?
10:09:03 <shachaf> FunctionalDependencies are famously tricky in some cases, but this particular use is used by all the monad type classes, like MonadState.
10:09:48 <cpressey> "You can construct a monad very simply with prompt, by putting all of its effects as terms in a GADT, like the following example:" -- my question is basically, does it have to be a GADT?
10:10:54 <shachaf> It can be anything.
10:11:27 <shachaf> Prompt f is a monad for any type constructor f.
10:11:55 <cpressey> Yeah, I vaguely remember going over this now.
10:12:15 <shachaf> In Haskell, "GADT" means a particular syntax, but everything written with the GADT can also be written without, using a couple of extensions (existential quantifiers and type equality).
10:12:32 <cpressey> So it's just that GADTs are really useful for this sort of application, is why they're mentioned specifically?
10:12:34 <shachaf> (And in fact GHC represents GADTs as if you'd written them as regular data types with those features.)
10:15:35 <shachaf> I don't know what this solitaire context is, but I usually think of this Prompt thing as being Free (Coyoneda f).
10:16:06 <shachaf> Oh, they CPS-encode it too, so there are three mostly orthogonal layers to untangle here.
10:33:14 -!- Soni has quit (*.net *.split).
10:33:24 <shachaf> Anyway, you have data Free f a = Leaf a | Branch (f (Free f a)), which is the free monad on a functor f, and also a kind of tree with f-shaped branches.
10:33:57 <shachaf> And you have Coyoneda f a = exists x. (x, x -> f a), which is the free (or cofree? Free, I think) functor on a type constructor.
10:34:39 -!- Soni has joined.
10:34:48 <shachaf> And if you combine them you get data Prompt f a = Leaf a | forall x. Branch x (x -> f (Prompt f a))
10:35:22 <shachaf> And if you Church-or-whatever-encode that you get the type in that file.
10:52:45 -!- wib_jonas has joined.
11:02:31 -!- LKoen has joined.
11:17:53 -!- cpressey has quit (Quit: WeeChat 1.9.1).
11:32:19 <int-e> There's a lot of propaganda against functional dependencies ever since type families entered the arena.
11:33:22 <int-e> It's also worth noting that MonadPrompt is so old that type families didn't exist.
11:33:41 <int-e> (I think.)
11:34:27 <shachaf> I think the propaganda has been there since before type families.
11:34:47 <shachaf> Anyway people tried type families for mtl and no one used it, right?
11:35:46 <shachaf> I think because MonadState s m => ...s... is better than MonadState m => ...(StateType m)..., or something.
11:37:00 -!- arseniiv has joined.
11:37:18 <arseniiv> fungot how’s the weather?
11:37:18 <fungot> arseniiv: john, it appears we have reached an impasse make a man feel totally justified in sporting an unnecessarily elaborate assortment of game setup. he's usually got a lot
11:37:18 <int-e> Yeah I think in the particular case that is a single associated type family, fundeps are more convenient.
11:37:40 <arseniiv> ^style ukparl
11:37:40 <fungot> Selected style: ukparl (UK Parliament debates from brexit referendum to late 2018)
11:38:34 <arseniiv> hi! type families are cool in all their kinds
11:42:01 <int-e> What did I say? Propaganda.
11:49:18 <arseniiv> I’ll need to read the logs it seems :D
11:50:59 <arseniiv> but how could one live a plentiful life without type families
11:51:55 <arseniiv> when I try to write something typing-nontrivial in usual languages I constantly stumble on their absense
11:53:23 <int-e> You'll never appreciate the elegance and frugality of a fundep life, I suppose.
11:53:32 <wib_jonas> but how often do you actually write something typing-nontrivial?
11:53:50 * int-e is writing shellscripts right now.
11:53:54 <int-e> next question!
11:54:04 <wib_jonas> I like that all of fundeps and type families and data families are available, but I don't actually use them all that often
11:54:08 <int-e> oh, wait, negations
11:54:39 <int-e> But I still kind of agree with the sentiment.
11:54:49 <int-e> It's odd :)
11:55:34 <wib_jonas> admittedly I use Eigen to do numeric computations with vectors and matrixes, and it involves what would require rather complicated types if it was written in a typed language
11:55:56 <int-e> wib_jonas: But I imagine an Enterprise Haskell developer will *have* to deal with advanced type system features like type families, constraints a lot simply because many libraries adopt them.
11:57:05 <int-e> (I don't think "Enterprise Haskell" is an established term, but I believe we have long reached the point where it has become applicable.)
11:57:24 <int-e> Or how about "Myopic Haskell" for lens-centric code.
11:57:27 <wib_jonas> Eigen involves a lot of rather weird magic by the way, and you actually have to be careful with it because it's easy to misuse accidentally
11:58:07 <int-e> I've played with Eigen once and it wasn't easy to coerce it into doing what I wanted.
12:00:02 <int-e> (Though my problem wasn't correctness, it was to avoid allocations (through template instantiations) and get the compiler to elide some arithmetic that had no effect. I forgot the details, as usual.)
12:03:12 <wib_jonas> the most tricky part is that if you build it multiple times with different instruction set extensions targeted by the compiler options (most commonly one for AVX and one for SSE2), the different copies can be binary incompatible with each other, unless you define the internal representation explicitly with preprocessor macros.
12:03:29 <arseniiv> <int-e> You'll never appreciate the elegance and frugality of a fundep life, I suppose. => fundeps are okay I guess. I wrote with them a bit
12:03:59 <wib_jonas> This is partly documented in http://eigen.tuxfamily.org/dox/TopicPreprocessorDirectives.html but not all details are documented well.
12:04:40 <wib_jonas> Plus you can sometimes get errors if you use certain older Eigen versions with certain compilers.
12:04:44 <arseniiv> <wib_jonas> but how often do you actually write something typing-nontrivial? => yes. I mean, I usually find a way to interesting typing questions to perfectly bland code, or maybe not perfectly bland
12:05:43 <int-e> (Am I the only one who has been intimidated by `lens` for years and never touched it as a result?)
12:08:39 <arseniiv> int-e: no, there are fables about its great looming height, and personally I used lens once when tried to make a simple Scheme-like interpreter and I was glad for a bunch of operators there, but I never knew all of lens and now I forgot even those bits
12:09:27 <arseniiv> though I want basic lens functionality in mainstream languages, again. They start adopting immutable data but don’t include “immutable setters” and ways to compose all that
12:11:14 <arseniiv> so I think basic `lens` usage is not hard to achieve, but maybe newer lens libraries give even easier life? I haven’t used them; is there a comparison somewhere, from a user’s practical standpoint?
12:19:02 <wib_jonas> isn't "basic lens functionality" stuff like map and reduce?
12:19:31 <wib_jonas> many mainstream languages already have stuff like that
12:45:03 -!- 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:55:33 -!- cpressey has joined.
13:06:13 -!- hendursa1 has quit (Quit: hendursa1).
13:06:30 -!- hendursaga has joined.
13:09:41 <wib_jonas> oops
13:10:33 <wib_jonas> I made an incorrect change to my program, and suddenly I was getting weird errors from later down the line
13:11:17 <wib_jonas> nondeterministic ones
13:31:29 <esowiki> [[User talk:PythonshellDebugwindow]] https://esolangs.org/w/index.php?diff=77848&oldid=77771 * OsmineYT * (+196) /* Discord account */ new section
13:36:49 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=77849&oldid=77799 * JWinslow23 * (+13) Added Poetic
13:48:48 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
13:51:55 -!- Sgeo has joined.
13:53:08 -!- Lord_of_Life has joined.
14:09:27 <cpressey> My latest compiler project (in Haskell) has stalled because it is clear that it will need to generate better error messages; and in order to do that it will need to keep track of some context, i.e. the current function; and in order to do that it will need to do something more sophisticated than just use the Either monad everywhere.
14:09:50 <cpressey> I could use a monad transformer. I don't want to do that.
14:10:55 <Taneb> What do you want to do
14:11:13 <cpressey> I could maybe use applicative functors; compose a writer applicative with a may-fail applicative. I'd kind of like to do that, but it would mean re-writing all the monadic code I've written so far.
14:12:23 <cpressey> Or I could "roll my own monad" with MonadPrompt (or Operational or Free), which is why I was talking about it this morning.
14:13:14 <cpressey> Leaning towards the latter.
14:15:01 <Taneb> Follow your heart!
14:20:07 -!- arseniiv has quit (Ping timeout: 240 seconds).
14:20:40 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:42:15 -!- arseniiv has joined.
14:59:49 <int-e> eww
15:00:35 <int-e> (Usually, when your heart is in front of you, things have gone seriously wrong.)
15:05:14 <int-e> Mwhahaha. "There is no NAT with IPv6."
15:14:11 -!- cpressey has quit (Quit: WeeChat 1.9.1).
15:15:24 <int-e> (source: a random person on the internet who felt confident enough to answer a question on serverfault (stackexchange))
15:17:01 -!- arseniiv has quit (Ping timeout: 264 seconds).
15:17:20 <fizzie> Source: an optimist.
15:17:57 <myname> well, technically, you don't _need_ NAT with ipv6
15:18:06 -!- cpressey has joined.
15:34:23 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
15:37:42 <esowiki> [[Computerdeutsch]] https://esolangs.org/w/index.php?diff=77850&oldid=76633 * Orangeyy * (+0)
15:40:02 <fizzie> I looked into NAT with IPv6 briefly, when I had an ISP that just assigned a single /64 for non-business subscribers as their "native IPv6 support". Instead, I think I ended up with something even weirder, like proxy neighbor discovery to claim the addresses. But it was pretty awkward to need separate IPv4 network segments (since there was just the one public IPv4 address) while IPv6 was flat.
15:40:17 <esowiki> [[Computerdeutsch]] M https://esolangs.org/w/index.php?diff=77851&oldid=77850 * Orangeyy * (+4)
15:41:44 <esowiki> [[EWagon]] M https://esolangs.org/w/index.php?diff=77852&oldid=76629 * Orangeyy * (-10)
15:42:24 <fizzie> Fortunately the next two ISPs did assign a /48 (I think) and a /56, respectively.
15:43:15 <wib_jonas> why isn't a /64 enough?
15:43:44 <wib_jonas> that's big enough to subdivide, it's larger than the whole ipv4 space, isn't it?
15:43:52 <fizzie> You can't subdivide a /64.
15:43:57 <fizzie> Or you're not supposed to, anyway.
15:44:13 <fizzie> And the standard autoconfiguration won't work for segments smaller than /64.
15:44:34 <wib_jonas> ah
15:44:48 <wib_jonas> so that's why you nated multiple segments into that?
15:45:55 <fizzie> Further, they didn't really "assign a /64" in the sense that they'd route all traffic for a /64 to you, they just expected to learn about all hosts in a /64 via neighbor discovery.
15:46:48 <wib_jonas> ah
15:47:28 <fizzie> So I looked into NAT because that way it'd at least have been the exact same setup for IPv4 and IPv6 (the router connected to the ISP gets a public address, the LAN uses private addresses, and NAT takes care of allowing other machines to access the public Internet).
15:47:28 <wib_jonas> I never configured ipv6, I don't know how this works
15:48:03 <wib_jonas> well, unless you count "leave everything as defaults and hope the computer and the router figures out something when they talk to each other" or "disable ipv6 on an interface" as configuring ipv6
15:49:47 -!- arseniiv has joined.
15:52:30 <wib_jonas> fizzie: I see
15:52:47 <wib_jonas> and did that work?
15:53:26 <fizzie> If memory serves, it did. But this was 6 years and three ISPs ago.
15:53:49 <fizzie> The current setup I have uses DHCPv6 prefix delegation, which I understand has become relatively common for "consumer" applications. The router is given a prefix (typically a /56), and can then allocate a /64 (or more) for any network(s) it wants to have, and let the final address assignment happen either via stateless (neighbor discovery + router advertisement) or stateful (DHCPv6) autoconfiguration.
15:56:48 <fizzie> Uh, actually... now that I've said that, I went to check, and after the most recent reboot, the router actually *hasn't* gotten an IPv6 address at all. Hmm.
15:57:45 <fizzie> Well, up until now it's been working fine, and I'm sure it'd still do if I wasn't masochistic enough to run a bleeding-edge OpenWRT just because the kind of software you get otherwise is depressing.
16:00:15 -!- cpressey has quit (Quit: WeeChat 1.9.1).
16:02:32 <wib_jonas> so that means you don't have ipv6 connection to the internet?
16:04:14 <fizzie> Yes. I didn't even notice.
16:06:17 <fizzie> Ooh, that probably also explains why the HTTP black-box monitoring I've set up for esolangs.org has been reporting the site as down. (Didn't prioritize looking into that because it seemed to be working fine.)
16:15:51 <wib_jonas> hehe
16:18:32 <esowiki> [[Special:Log/newusers]] create * WhyNot? * New user account
16:19:41 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77853&oldid=77830 * WhyNot? * (+31)
16:21:26 <esowiki> [[User:WhyNot?]] N https://esolangs.org/w/index.php?oldid=77854 * WhyNot? * (+22) Created page with " print('Hello World!')"
16:23:58 <int-e> https://paste.debian.net/1166119/ <-- see anything odd? :-)
16:25:02 <wib_jonas> int-e: there are suspiciously too few processes. other than that, no.
16:25:17 <wib_jonas> but I usually use ps -H intead of pstree
16:25:23 <int-e> wib_jonas: look at the name of PID 1
16:25:44 <wib_jonas> meh, that just means someone started the machine in single user
16:26:05 <int-e> Oh I guess that would do it.
16:26:21 <int-e> It would also explain the lack of services :)
16:26:41 <wib_jonas> yeah
16:27:19 <int-e> Anyway, this is still me playing with containers. The bash will be there, but the ultimate goal is to do some initialization and then hand things off to a proper init.
16:27:32 <wib_jonas> ok
16:28:22 <int-e> But also, with sshd running this is already pretty usable.
16:28:50 <int-e> So I'm somewhat elated for once. Bbl.
16:33:07 -!- FreeFull has joined.
16:34:24 <fizzie> `` pstree -p | paste
16:34:26 <HackEso> https://hack.esolangs.org/tmp/paste/paste.21095
16:35:36 <fizzie> Hm, well, "init" is a pretty boring name for PID 1.
16:35:53 <wib_jonas> ooh, is that perl running the rnooodl script?
16:35:59 <wib_jonas> I hate that script but I'm too lazy to fix it
16:36:58 <fizzie> Yeah, guess so. And the cat(49) is the cat that makes the output not a terminal.
16:38:19 <fizzie> There aren't *that* many processes in the container one level up either, though a bit more than in int-e's example: http://ix.io/2zUQ
16:40:07 -!- LKoen has joined.
16:45:10 -!- wib_jonas has quit (Quit: Connection closed).
17:24:38 -!- user3456 has joined.
17:29:57 -!- Sgeo_ has joined.
17:32:12 -!- Sgeo has quit (Ping timeout: 260 seconds).
17:47:29 <int-e> oh, socat can fork children? hmm.
17:48:21 -!- user3456 has set topic.
17:48:35 -!- user3456 has set topic: Welcome to the multinational league for esoteric programming proliferation, protection, and protestation! | https://esolangs.org | logs: https://esolangs.org/logs/ http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D https://github.com/kspalaiologos/esologs/.
17:48:55 <user3456> oops
17:49:00 <int-e> (that may be easier than what I'm currently doing for lambdabot)
17:51:16 <int-e> No worries... as long as the gist of it and the links to the logs and wiki are preserved and you don't spam the topic, noone will complain.
17:54:51 <esowiki> [[User:Orangeyy]] M https://esolangs.org/w/index.php?diff=77855&oldid=76628 * Orangeyy * (-26)
17:57:21 <user3456> Does anyone know what happened to the zem.fi hill for BF Joust?
18:00:38 -!- b_jonas has joined.
18:01:09 -!- Sgeo_ has quit (Read error: Connection reset by peer).
18:06:53 -!- Sgeo has joined.
18:30:07 <esowiki> [[Computerdeutsch]] https://esolangs.org/w/index.php?diff=77856&oldid=77851 * Orangeyy * (+212)
19:25:00 <esowiki> [[Filth]] M https://esolangs.org/w/index.php?diff=77857&oldid=77554 * Bananaapple * (-4) optimized examples
19:47:14 -!- arseniiv has quit (Ping timeout: 260 seconds).
19:49:36 -!- TheLie has joined.
19:51:53 -!- sprocklem has joined.
19:53:31 <esowiki> [[User talk:PythonshellDebugwindow]] M https://esolangs.org/w/index.php?diff=77858&oldid=77848 * PythonshellDebugwindow * (+135) /* Discord account */
19:54:55 -!- TheLie has quit (Remote host closed the connection).
20:51:05 <esowiki> [[User talk:PythonshellDebugwindow]] https://esolangs.org/w/index.php?diff=77859&oldid=77858 * OsmineYT * (+82)
20:51:20 <esowiki> [[User talk:PythonshellDebugwindow]] https://esolangs.org/w/index.php?diff=77860&oldid=77859 * OsmineYT * (+113)
21:52:45 -!- Frankenstein has changed nick to Frankenlime.
21:54:29 -!- Arcorann_ has joined.
21:55:00 -!- Arcorann_ has quit (Remote host closed the connection).
21:55:24 -!- Arcorann_ has joined.
22:16:39 <esowiki> [[User talk:SoicBR]] N https://esolangs.org/w/index.php?oldid=77861 * SoicBR * (+2) Created page with "a."
22:20:52 <esowiki> [[User talk:SoicBR]] https://esolangs.org/w/index.php?diff=77862&oldid=77861 * OsmineYT * (+54) /* A new topic */ new section
22:21:11 <esowiki> [[User talk:SoicBR]] https://esolangs.org/w/index.php?diff=77863&oldid=77862 * OsmineYT * (+113)
22:22:29 -!- FreeFull has quit.
22:30:16 -!- 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.”).
22:43:38 <fizzie> int-e: The canonical multibot runner script is: while true; do socat TCP4:irc.freenode.net:6667 EXEC:'./multibot '"$NAME"' '"$CHANNEL"' '"$NAME"'.log'; done
22:45:56 <int-e> fizzie: upone reflection it's not applicable. My use of socat is for enabling SSL for lambdabot.
22:46:03 <fizzie> (Also, could not figure out the IPv6 connectivity issues. If I restart the DHCPv6 client, it starts sending solicitations on the interface, but gets no response. Monitoring suggests problems started at 3:40am in the morning, which doesn't coincide with anything I did. Complained to ISP; will see if they come up with anything other than "have you tried restarting your router?".)
22:46:16 <int-e> But lambdabot wants to connect to some port somewhere, so socat is just a proxy.
22:47:14 <int-e> I've had mysterious neighbour discovery problems with lambdabot's host
22:48:27 <int-e> I ended up just adding a permanent neighbour because I never figured out whether the environment was misbehaving, or the local linux kernel.
22:48:53 <int-e> Looking at that, I also have a fixed default route.
22:49:24 <fizzie> I'd do a static config but I think they actually require the DHCPv6 prefix delegation in order to actually start the traffic flowing.
22:49:49 <int-e> well, this one (Ramnode) doesn't.
22:50:03 <int-e> But it's a VPS.
22:50:13 <int-e> So it has a fixed IP and all that.
22:50:20 <fizzie> Yeah, that's kind of different than someone's home.
22:50:36 <fizzie> Though I do in fact have a fixed IP, paying £5/month extra for it.
22:50:54 <int-e> It's probably a completely different problem :) But what you said brought up some memories.
22:50:58 <fizzie> I just think I need to dynamically request my static IP. ;)
22:51:21 <int-e> If it's dialup, the neighbours might not be fixed?
22:51:33 <int-e> But for DSL they might be.
22:51:36 <int-e> Tricky :)
22:52:05 <fizzie> Mhm. Well, it's an Ethernet hole in the wall as far as I'm concerned, I've no idea what happens to it after that.
22:52:30 <fizzie> There's some managed switch shouting it's proprietary management protocols over the wire every now and then.
22:53:08 <fizzie> FWIW, it could be something ND-related, because if I look at any IPv6 traffic, I do see neighbor discovery requests for my router's link-local address, every time repeated three times. My router sends a reply to each, but it doesn't seem to matter.
22:53:42 <fizzie> Normally I'd blame my nftables setup, but I haven't touched it in a while.
23:31:56 <int-e> MEH. foiled by default configuration.
23:32:50 <int-e> (Debian's Apache ships with Alias /icons/ "/usr/share/apache2/icons/" enabled.)
2020-10-07
00:41:37 <esowiki> [[User talk:SoicBR]] https://esolangs.org/w/index.php?diff=77864&oldid=77863 * SoicBR * (+75) /* A new topic */
00:47:55 <esowiki> [[User talk:SoicBR]] M https://esolangs.org/w/index.php?diff=77865&oldid=77864 * SoicBR * (+28) /* A new topic */
00:56:23 -!- adu has joined.
01:36:11 -!- adu has quit (Quit: adu).
01:47:36 -!- adu has joined.
01:52:18 <int-e> . o O ( pstree -up; netstat -nap )
01:54:49 <fizzie> Someone told me netstat's obsolete and it's all about ss now.
01:57:08 <int-e> Someone told me that old habits die hard.
01:58:06 <int-e> woah those lines get long
01:58:54 <int-e> but you can do ss -nap if you want to.
02:00:32 <fizzie> That's a lotta chrome's and 443's.
02:01:45 <int-e> The graph on http://calpaterson.com/mozilla.html is great. And sad.
02:09:18 -!- ski has joined.
02:43:37 -!- imode has joined.
02:45:56 <fizzie> Your link sidetracked me to go read about that Wikimedia stuff.
03:07:08 -!- adu has quit (Quit: adu).
04:18:06 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
06:14:18 -!- hendursaga has quit (Write error: Connection reset by peer).
06:14:18 -!- xelxebar has quit (Read error: Connection reset by peer).
06:14:38 -!- xelxebar has joined.
06:15:30 -!- hendursaga has joined.
07:57:35 -!- arseniiv has joined.
08:00:22 -!- imode has quit (Ping timeout: 272 seconds).
08:08:32 -!- hendursa1 has joined.
08:10:10 -!- cpressey has joined.
08:10:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:11:32 -!- Sgeo has quit (Read error: Connection reset by peer).
08:19:26 <arseniiv> <wib_jonas> isn't "basic lens functionality" stuff like map and reduce? => sorry, didn’t see that. I meant composable lenses first and foremost, and non-destructive setters as their part, and a good syntax to go with that
08:21:11 <arseniiv> b_jonas: (BTW does the prefixed version of the name ping you when you use the usual one?)
08:46:06 -!- LKoen has joined.
09:52:04 <b_jonas> arseniiv: yes, wib_jonas pings me if I am b_jonsa
09:52:08 <b_jonas> if I am b_jonas
09:56:19 <b_jonas> fizzie: and does ipv4 dhcp get you an ip address that works?
09:57:14 <b_jonas> fizzie: yes, I learned about ss too when I was trying to get a certain information from the kernel from debugging and netstat couldn't do it and I asked on irc. apparently ss is to netstat like ip is to ifconfig
09:57:55 <b_jonas> user3456: ask fizzie
10:13:44 <fizzie> Yep, IPv4 DHCP works.
10:15:14 <esowiki> [[User:RocketRace]] M https://esolangs.org/w/index.php?diff=77866&oldid=77719 * RocketRace * (+143) YYZ
10:15:27 -!- sprocklem has quit (Ping timeout: 240 seconds).
10:40:11 <b_jonas> fizzie: and are you actually paying for ipv6 connectivity in the service, or was that just an experimental free test service that they now changed to offering for extra charge (I know it makes no sense, but some ISPs do charge money for it)
10:44:53 <fizzie> No, I'm not paying for it specifically. The support page says "we're currently in the process of rolling out IPv6 to all our customers free of charge" (unchanged for at least a couple years); the rollout in this location happened sometime in 2018, but I guess it might still be considered experimental.
10:45:15 <b_jonas> I see
10:51:12 <fizzie> user3456: What happened was, it was all done in Ruby, and the linear algebra lib I was using to do the math (for scores) just died. I started doing a rewrite (in some other language) to re-launch it on esolangs.org instead, but never got around to finishing it. Hasn't been much demand for BF Joust, honestly; even in the past, it's been *very* seasonal.
10:52:06 <b_jonas> linear algebra?
10:52:14 <b_jonas> why does it need linear algebra
10:52:22 <b_jonas> I do understand ruby programs breaking regardless though
10:53:06 <b_jonas> they did a lot of incompatible changes between minor versions so you would have to keep updating old scripts from 1.4 to 1.6, 1.6 to 1.8, 1.8 to 1.9, 1.9 to 2.1, etc
10:55:20 -!- cpressey has quit (Quit: WeeChat 1.9.1).
10:57:49 <fizzie> It doesn't *really* need it, but some of the scoring algorithms (especially the "Markov scoring") are marginally easier to express like that (details at http://zem.fi/bfjoust/internals/ still).
11:02:19 <b_jonas> ah
11:02:40 -!- xelxebar has quit (Remote host closed the connection).
11:02:59 -!- xelxebar has joined.
11:03:53 <fizzie> (The rewrite was going to be integrated to the `esowiki` bot for convenience, but I got sort of sidetracked into writing a RPC scheme because I didn't want any instability in the BF Joust parts potentially messing up the more important task of channel logging.)
11:37:06 -!- 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.”).
11:55:22 <Taneb> I think I've got an integer sequence that's not in the OEIS but I'm not yet 100% sure it's well-defined
11:56:19 <Taneb> If we take the even Fibonacci numbers, this can be done as 0 => 0, 1 => 2, n + 2 => 4 * (n + 1) + n
11:56:45 <Taneb> Fibonacci numbers that are a multiple of 3, 0 => 0, 1 => 3, n + 2 => 7 * (n + 1) - n
11:57:09 <Taneb> Multiples of 4, 0 => 0, 1 => 8, n + 2 => 18 * (n + 1) - n
11:57:30 <Taneb> Sequence is the coefficient of (n + 1) there
11:57:42 <Taneb> I think it goes 1, 4, 7, 18, 11, 322, 47
11:59:35 <Arcorann_> Why is it n+2?
11:59:53 <Taneb> Because it's in terms of the two preceeding elements
12:01:01 <Arcorann_> Might want to fix your notation then because my brain mentally simplifies the first line to n + 2 => 5 * n + 4
12:01:17 <Taneb> Yeah, my notation there is awful
12:02:25 <Taneb> I think it continues 18, 422, 1364
12:02:56 <Arcorann_> Probably should verify your relations actually work as well
12:05:24 -!- cpressey has joined.
12:33:58 -!- Discordian[m] has quit (Quit: killed).
12:34:07 -!- tswett[m] has quit (Quit: killed).
12:34:13 -!- wmww11 has quit (Quit: killed).
12:43:08 -!- tswett[m] has joined.
12:46:24 <esowiki> [[It's 3D!]] N https://esolangs.org/w/index.php?oldid=77867 * WhyNot? * (+88) Created page with "== It's 3D! == This is a coding language based of [Befunge]. It is created by [WhyNot?]"
12:48:19 <esowiki> [[It's 3D!]] https://esolangs.org/w/index.php?diff=77868&oldid=77867 * WhyNot? * (-11)
12:48:47 <esowiki> [[It's 3D!]] https://esolangs.org/w/index.php?diff=77869&oldid=77868 * WhyNot? * (+5)
13:01:01 <esowiki> [[It's 3D!]] https://esolangs.org/w/index.php?diff=77870&oldid=77869 * WhyNot? * (+368)
13:04:00 -!- arseniiv has quit (*.net *.split).
13:04:00 -!- ski has quit (*.net *.split).
13:04:00 -!- b_jonas has quit (*.net *.split).
13:04:01 -!- spruit11 has quit (*.net *.split).
13:04:01 -!- izabera has quit (*.net *.split).
13:04:01 -!- paul2520 has quit (*.net *.split).
13:04:10 -!- ski has joined.
13:04:27 -!- arseniiv has joined.
13:05:50 <esowiki> [[It's 3D!]] https://esolangs.org/w/index.php?diff=77871&oldid=77870 * WhyNot? * (+150)
13:09:23 -!- b_jonas has joined.
13:09:23 -!- spruit11 has joined.
13:09:23 -!- izabera has joined.
13:09:23 -!- paul2520 has joined.
13:11:20 -!- wmww has joined.
13:11:27 -!- iscordian[m] has joined.
13:20:54 -!- brrrrrrrrrrrr has joined.
13:21:11 <brrrrrrrrrrrr> wat is dis
13:22:24 <Taneb> `welcome brrrrrrrrrrrr
13:22:27 <HackEso> brrrrrrrrrrrr: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <https://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
13:23:21 -!- orangey has joined.
13:23:37 <brrrrrrrrrrrr> ah
13:23:47 -!- brrrrrrrrrrrr has changed nick to lignus.
13:26:29 -!- iscordian[m] has changed nick to Discordian[m].
13:38:57 -!- Arcorann_ has quit (Read error: Connection reset by peer).
13:40:58 <arseniiv> hm we need a xenharmonic esolang, aren’t we?
13:41:13 <arseniiv> unfortunately I’m still not too deep in
13:44:55 <arseniiv> you should use comma puns and depending what commas are punned, different actions may be performed. Loops may be represented as cyclical chord progressions?..
13:45:21 <arseniiv> and they should be valid from some standpoint
14:15:13 -!- lignus has quit (Remote host closed the connection).
14:27:41 -!- Sgeo has joined.
14:58:31 <int-e> How do you pun with a comma? How do you pun, with a comma?
15:00:26 -!- cpressey has quit (Quit: WeeChat 1.9.1).
15:06:03 -!- hendursa1 has quit (Quit: hendursa1).
15:06:20 -!- hendursaga has joined.
15:25:42 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=77872&oldid=77849 * WhyNot? * (+15)
15:25:43 -!- imode has joined.
16:17:02 -!- FreeFull has joined.
16:40:58 -!- orangey has quit (Remote host closed the connection).
16:41:15 -!- orangey has joined.
17:18:58 <arseniiv> int-e: almost exactly like that, yeah: the comma is there but it’s not there modulo temperament. Smaller the comma better the pun works. Famous zero-width comma is punned in many works
17:25:48 -!- arseniiv has quit (Ping timeout: 246 seconds).
17:48:44 -!- LKoen has joined.
19:03:23 -!- MDude has joined.
19:17:52 -!- LKoen has quit (Remote host closed the connection).
19:53:33 -!- sprocklem has joined.
20:05:36 -!- orangey has quit (Remote host closed the connection).
20:30:14 -!- Sgeo_ has joined.
20:31:31 -!- orbitaldecay has quit (Ping timeout: 240 seconds).
20:31:45 -!- iovoid has quit (Quit: iovoid has quit!).
20:31:55 -!- orbitaldecay has joined.
20:33:05 -!- Sgeo has quit (Ping timeout: 240 seconds).
20:33:35 -!- iovoid has joined.
20:44:07 <esowiki> [[Conveyer]] M https://esolangs.org/w/index.php?diff=77873&oldid=77695 * Abbin21 * (-3)
21:01:24 <esowiki> [[Special:Log/newusers]] create * Konfetti * New user account
21:52:25 -!- Arcorann_ has joined.
21:53:29 -!- Arcorann_ has quit (Remote host closed the connection).
21:53:56 -!- Arcorann_ has joined.
22:05:21 -!- V has quit (Remote host closed the connection).
22:06:31 -!- V has joined.
22:06:45 -!- kmc has quit (Ping timeout: 240 seconds).
22:07:47 -!- kmc has joined.
22:27:56 <esowiki> [[Special:Log/newusers]] create * Vpzom * New user account
22:30:05 -!- ineiros has quit (Ping timeout: 260 seconds).
22:47:21 -!- ineiros has joined.
23:10:20 -!- deltaepsilon23 has joined.
23:10:37 -!- deltaepsilon23 has changed nick to delta23.
23:11:01 -!- delta23 has quit (Client Quit).
23:11:18 -!- deltaepsilon23 has joined.
23:11:32 -!- deltaepsilon23 has changed nick to delta23.
23:11:38 -!- delta23 has left.
23:38:01 -!- sftp has quit (Ping timeout: 264 seconds).
23:45:38 -!- FreeFull has quit.
2020-10-08
00:14:38 <int-e> wtf is the rationale for renewing SSL certifcates twice a day (certbot default)
00:15:25 <Frankenlime> i gave up on certbot because it was always confusing and never worked for me
00:15:43 <Frankenlime> im not normally a fan of tools made out of shellscripts but dehydrated works so great, especially with dns auth
00:16:23 <fizzie> int-e: It doesn't renew twice a day. Or it shouldn't, anyway.
00:16:38 <fizzie> int-e: It *runs* twice a day, but only renews when there's less than 30 days remaining.
00:16:52 <int-e> Oh. Hmm.
00:17:06 <int-e> Right, that makes more sense.
00:17:37 <int-e> Frankenlime: I've used acme-tiny before.
00:17:51 <Frankenlime> acme-tiny seemed nice
00:18:14 <Frankenlime> i've used acme.sh at work too and its not terrible (although only used it for web auth)
00:18:58 <int-e> Yeah I only need web auth anyway, so far.
00:19:42 <fizzie> I'm using `certbot certonly --config ... --force-renewal` to basically just use certbot as a plain client (with DNS auth), it seems to work.
00:20:23 <int-e> But this time I decided to experience the hammer that is certbot.
00:20:50 <Frankenlime> see certonly and renew (or run?) differences always confused me
00:20:59 <Frankenlime> although to be fair i do get confused easily
00:21:48 <int-e> fizzie: thanks.
00:22:03 <fizzie> AIUI, the 'certonly' part means "just do the stuff related to acquiring certificates, don't try to touch the servers that use the certificate", which is what I want out of it.
00:22:14 <fizzie> (It won't have permissions to do any other actions anyway.)
00:22:19 <int-e> I only looked at the systemd timer and jumped to conclusions.
00:22:33 -!- sftp has joined.
00:22:34 <Frankenlime> oh well, i got it all working in ansible and haven't bothered touching it since
00:39:01 -!- sftp has quit (Ping timeout: 258 seconds).
01:13:48 -!- sftp has joined.
01:53:09 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77874&oldid=77853 * Vpzom * (+72)
01:58:37 <esowiki> [[Four]] N https://esolangs.org/w/index.php?oldid=77875 * Vpzom * (+2759) Created page with "{{infobox proglang |name=Four |paradigms=[[:Category:Functional paradigm|Functional]] |author=[[user:Vpzom|vpzom]] |majorimpl=https://git.vpzom.click/vpzom/four |files=<code>...."
02:01:11 <esowiki> [[Four]] https://esolangs.org/w/index.php?diff=77876&oldid=77875 * Vpzom * (+30)
02:17:33 -!- sprocklem has quit (Quit: brb).
02:29:14 -!- sprocklem has joined.
02:33:56 -!- adu has joined.
03:07:11 -!- adu has quit (Quit: adu).
03:30:36 -!- adu has joined.
05:00:39 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
05:04:07 -!- spruit11 has quit (Ping timeout: 240 seconds).
05:45:21 -!- spruit11 has joined.
06:16:06 -!- arseniiv has joined.
06:19:47 -!- lignus has joined.
06:24:35 -!- Sgeo_ has quit (Read error: Connection reset by peer).
06:35:30 -!- wmww has quit (Quit: killed).
06:35:42 -!- tswett[m] has quit (Quit: killed).
06:35:46 -!- Discordian[m] has quit (Quit: killed).
06:44:16 -!- tswett[m] has joined.
06:52:58 -!- imode has quit (Ping timeout: 256 seconds).
07:09:25 -!- wmww has joined.
07:09:31 -!- iscordian[m] has joined.
07:15:33 -!- adu has quit (Quit: adu).
07:18:51 -!- sprocklem has quit (Ping timeout: 260 seconds).
07:23:21 -!- iscordian[m] has changed nick to Discordian[m].
07:33:02 -!- arseniiv has quit (*.net *.split).
07:33:02 -!- b_jonas has quit (*.net *.split).
07:33:02 -!- izabera has quit (*.net *.split).
07:33:02 -!- paul2520 has quit (*.net *.split).
07:33:27 -!- arseniiv has joined.
07:38:33 -!- b_jonas has joined.
07:38:33 -!- izabera has joined.
07:38:33 -!- paul2520 has joined.
08:00:00 -!- cpressey has joined.
08:00:59 -!- lignus has quit (Remote host closed the connection).
08:08:34 -!- hendursa1 has joined.
08:10:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:11:54 <esowiki> [[User:RubenVerg]] N https://esolangs.org/w/index.php?oldid=77877 * RubenVerg * (+6) Created page with "hello!"
09:25:54 -!- ProofTechnique has quit (Ping timeout: 260 seconds).
09:28:34 -!- ProofTechnique has joined.
09:30:27 -!- t20kdc has joined.
10:07:14 -!- sftp has quit (Ping timeout: 272 seconds).
10:11:57 -!- sftp has joined.
10:19:54 <Taneb> Is there a theorem that for every positive natural, n, the Fibonacci sequence contains infinitely many integer multiples of n?
10:34:55 <cpressey> https://en.wikipedia.org/wiki/Fibonacci_number says "If the members of the Fibonacci sequence are taken mod n, the resulting sequence is periodic with period at most 6n." -- is that equivalent?
10:36:00 <cpressey> I guess it's not quite equivalent, because every 6th positive natural != every positive natural
10:36:22 <cpressey> Closest I could find on that page though
10:36:40 <int-e> Note that F_0 = 0 is divisible by n. So together with periodicity modulo n you get what you want.
10:38:14 <int-e> I have not seen that 6n claim before, interesting.
10:39:57 <cpressey> Also, simply saying "periodic" doesn't imply that F_i mod n = 0 at any time, so far as I'm aware, so, I'm not so sure
10:40:38 <int-e> Periodicity is rather obvious though; there are n^2 possible pairs of consecutive remainders in the sequence, so it's ultimately periodic. But you can also reconstruct the whole sequence from any pair (computing F_n from F_(n+1) and F_(n+2)), so it's fully periodic
10:41:10 <int-e> i=0 works.
10:44:46 <int-e> There's also the related fact that F_n | F_(nk) for all integers n, k.
10:44:54 <cpressey> Yeah OK, I see how F_0 = 0 implies it F_i mod n = 0 for some i, if it's periodic
10:46:03 <fizzie> I'm not sure I followed that periodicity argument, why does having n^2 possible pairs of consecutive remainders mean it's ultimately periodic?
10:47:25 <int-e> fizzie: because you can look at the sequence of pairs FF_n = (F_n, F_(n+1)) and note that there's a relation FF_(n+1) = f(FF_n), to which the standard argument applies.
10:47:54 <int-e> f((x,y)) = (y,x+y)
10:48:33 <int-e> (and f is invertible over any ring)
10:49:25 <int-e> But the 6n bound is interesting, because from that idea, you only get an n^2 bound.
10:54:38 <int-e> (the "standard element" is that by the pigeon-hole principle, *some* element must repeat, and from that point onward, all the elements must repeat because that single element determines all its successors.)
10:55:26 <int-e> (and, if f() is invertible, the predecessors as well, giving full periodicity rather than just ultimate periodicity.)
11:21:42 <int-e> Oh, that's a clever use of the Frobenius automorphism. (https://en.wikipedia.org/wiki/Pisano_period#Properties near the end of the section.)
11:27:10 <int-e> (and that is the main reason why we don't get near the naive n^2 bound)
11:30:54 <int-e> "Any prime p providing a counterexample would necessarily be a Wall-Sun-Sun prime, and such primes are also conjectured not to exist."
11:30:57 <int-e> "In number theory, a Wall–Sun–Sun prime or Fibonacci–Wieferich prime is a certain kind of prime number which is conjectured to exist, although none are known."
11:31:06 <int-e> Source: Wikipedia :-)
11:36:00 <cpressey> Which is not actually a contradiction, if there really are two different mathematicians making two different conjecturs on the existence of these things
11:36:07 <cpressey> But, it does seem a bit unlikely
11:52:40 <cpressey> In other news, I think I now see why MonadPrompt and Operational use GADTs.
11:53:07 <cpressey> :t (>>=)
11:53:09 <lambdabot> Monad m => m a -> (a -> m b) -> m b
11:56:00 <cpressey> The GADT gives you an existential type that can be used for b. If you don't have that, you don't have anything you can use for b.
11:57:53 <cpressey> (That I can see.)
12:01:38 <cpressey> Mmmmmmaybe you could put both a and b in the ADT, like data Program instr a b = ...; I've tried it but I haven't been successful at it, and the error messages aren't very encouraging.
12:01:43 <int-e> Yeah, if you have a constructor of type a -> Foo b in your GADT, then that corresponds to a monadic operation a -> m b.
12:05:40 <int-e> There's a weird existential data F g x = F (forall a. (g a, a -> x)) type that a GADT g into a functor F g that can be used for making a free monad.
12:06:07 <cpressey> Yeah, I'll need to check out how Free works at some point too I reckon.
12:06:13 <int-e> Which I guess is nicer in theory, but as a programmer, I find the GADT describing an interface very appealing.
12:06:16 <shachaf> Do you mean with forall outside the F?
12:06:27 -!- cpressey has quit (Quit: Lunch).
12:06:33 <int-e> shachaf: Uhm. Yes.
12:06:48 <int-e> I should've used GADT syntax :P
12:07:04 <shachaf> I think that type is pretty natural.
12:07:11 <shachaf> Uh, in the non-formal sense of the word.
12:07:35 <int-e> So, properly: data F g x = forall a. F (g a) (a -> x)
12:07:58 <shachaf> Sure. Or Coyoneda f a = exists x. (f x, x -> a)
12:08:01 <int-e> So, properly: data F g a = forall r. F (g r) (r -> a) -- hmm Cont-style naming seems better.
12:08:27 <shachaf> I tend to call the universal one r (for "return" or "result" or something) and the existential one x.
12:08:36 <shachaf> But for sure the one on the outside should be called a.
12:08:37 <int-e> But nope, I don't find it natural at all.
12:09:02 <int-e> But r is a result type here as well :P
12:09:21 <shachaf> OK, imagine you had a type for which fmap was very expensive, so you wanted to minimize fmaps.
12:09:45 <shachaf> The functor laws tell you that instead of fmap f (fmap g x), you can write fmap (f.g) x
12:09:54 <int-e> Yeah I've seen that.
12:10:03 <shachaf> OK, maybe I'm just saying obvious things here.
12:10:31 <int-e> But it's a far stretch from having seen something, and kind of understanding it, to finding it natural.
12:10:49 <shachaf> An alternative thing you can say is that this thing is the free functor on a type constructor, but I bet that wouldn't strike a chord with you.
12:11:03 <int-e> You're making it worse.
12:11:09 <shachaf> I figured.
12:11:29 <shachaf> You can also use the dual: newtype Yoneda f a = Yoneda (forall r. (a -> r) -> f r)
12:11:56 <shachaf> But I find that one less intuitive, just because CPSy things are more complicated.
12:12:07 <int-e> The way I deal with category theory is to translate it back to something more concrete.
12:12:42 <int-e> The deeper you go into category theory, the more work I have to do translating it back. At some point, I get lost. :P
12:13:00 <shachaf> Well, I'm not saying any category theory words here. Except for "free", I suppose, and "dual", and "Yoneda".
12:13:04 <shachaf> But you can just ignore those.
12:13:16 <shachaf> OK, half of what I'm saying is category theory words.
12:13:36 <int-e> So yes, say CPS instead of Yoneda transform, and I'll be a bit happier.
12:13:55 <shachaf> I'm not calling it a Yoneda transform, I just wanted a name for the type that isn't F.
12:28:28 <int-e> Yeah, I'm mixing up terms.
12:28:54 <int-e> And I'm not even unhappy about it :P
12:30:04 <shachaf> @metar koak
12:30:05 <lambdabot> KOAK 081153Z 28007KT 10SM OVC012 17/12 A2992 RMK AO2 SLP132 T01670122 10167 20161 56004
12:31:12 -!- Arcorann_ has quit (Read error: Connection reset by peer).
13:03:16 -!- cpressey has joined.
13:08:20 <cpressey> <cpressey> Mmmmmmaybe you could put both a and b in the ADT, like data Program instr a b = ...; <-- I think I actually got this to work!
13:11:15 -!- hendursa1 has quit (Quit: hendursa1).
13:11:31 -!- hendursaga has joined.
13:12:05 <cpressey> All the instructions have to "return" the same type. The type of `singleton` becomes `instr b -> Program instr b b`
13:14:01 -!- Arcorann_ has joined.
13:17:28 <cpressey> This is exciting! I'm not sure why, but it is. To me.
13:18:59 -!- adu has joined.
13:20:34 <cpressey> https://gist.github.com/cpressey/2ed6aea0c8eb4fc98a5a56e574807721
13:32:02 <int-e> But now `a` is baked into the type, so this is inflexible.
13:32:47 <int-e> You're pretty close to doing this though: https://paste.debian.net/1166344/
13:33:27 * int-e shrugs
13:35:03 <int-e> But maybe you're coming from the other direction. I have not read very far into the backlog.
13:41:18 <int-e> cpressey: If you want to take the GADTs out of operational, you will probably end up with a free monad anyway. The functor is data StackF cnt = Push cnt | Pop Int (Int -> cnt) which can be obtained from unfolding the GADT data StackG a where Push :: Int -> StackG () | Pop :: StackG Int into Coyoneda StackG a.
13:42:52 <int-e> (also using that morally, cnt ~= () -> cnt)
13:44:04 <int-e> But as a programmer, StackF isn't intuitive to me, whereas StackG reads like a signature for a DSL.
13:44:17 <int-e> I really like the GADT version much better.
13:45:35 <int-e> The problem with what you currently have is that there can only ever be a single return type, namely the `a` in Program f a b.
13:45:59 <cpressey> int-e: We have different goals.
14:04:49 -!- Sgeo has joined.
14:22:30 -!- MDude has joined.
14:37:59 <esowiki> [[User:WhyNot?]] https://esolangs.org/w/index.php?diff=77878&oldid=77854 * WhyNot? * (+84)
15:18:23 -!- adu has quit (Quit: adu).
15:21:19 -!- Arcorann_ has quit (Read error: Connection reset by peer).
15:40:10 -!- adu has joined.
15:48:36 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77879&oldid=77874 * Konfetti * (+134)
15:49:01 <esowiki> [[Talk:RubE On Conveyor Belts/Interpreter]] N https://esolangs.org/w/index.php?oldid=77880 * Eiim * (+685) Added two questions
15:49:40 <esowiki> [[RubE On Conveyor Belts]] M https://esolangs.org/w/index.php?diff=77881&oldid=64380 * Eiim * (+4) noted that interpreter is C++.
15:54:08 <esowiki> [[Talk:RubE On Conveyor Belts/Interpreter]] M https://esolangs.org/w/index.php?diff=77882&oldid=77880 * Eiim * (+267) noted program.out
15:56:30 <esowiki> [[Talk:Hell69]] N https://esolangs.org/w/index.php?oldid=77883 * Konfetti * (+411) Created page with "I think the example is incorrect. 0x41 * 0x69 = 0x1AA9, while 0x41 * 0x45 (which is decimal 69) = 0x1185. I am not sure which version is intended by the creator. The result i..."
16:00:41 -!- cpressey has quit (Quit: WeeChat 1.9.1).
16:05:58 -!- arseniiv has quit (Ping timeout: 256 seconds).
16:09:36 -!- t20kdc has quit (Remote host closed the connection).
16:09:50 -!- t20kdc has joined.
16:10:56 -!- arseniiv has joined.
16:15:33 -!- rain1 has quit (Quit: Leaving).
16:17:52 -!- rain1 has joined.
16:18:42 -!- adu has quit (Quit: adu).
16:21:29 -!- adu has joined.
16:53:15 <esowiki> [[User:Eiim]] N https://esolangs.org/w/index.php?oldid=77884 * Eiim * (+150) Created User:Eiim
17:05:15 <esowiki> [[!@$%^&*()+/Algorithms]] M https://esolangs.org/w/index.php?diff=77885&oldid=76908 * SunnyMoon * (+313) Added a well-earned snippet!
17:12:41 -!- sprocklem has joined.
17:22:35 -!- LKoen has joined.
17:32:02 -!- LKoen has quit (Remote host closed the connection).
17:53:53 -!- adu has quit (Quit: adu).
17:56:17 -!- int-e has quit (Remote host closed the connection).
18:28:05 -!- LKoen has joined.
18:35:47 -!- arseniiv has quit (Ping timeout: 240 seconds).
18:38:48 -!- int-e has joined.
18:44:43 -!- adu has joined.
18:44:53 -!- deltaepsilon23 has joined.
18:45:11 -!- deltaepsilon23 has quit (Remote host closed the connection).
18:45:45 -!- deltaepsilon23 has joined.
18:46:09 <esowiki> [[User:SunnyMoon]] M https://esolangs.org/w/index.php?diff=77886&oldid=77827 * SunnyMoon * (+350) School update.
18:46:16 -!- deltaepsilon23 has changed nick to delta23.
19:03:50 -!- arseniiv has joined.
19:57:26 -!- int-e has quit (Quit: leaving).
19:57:42 -!- int-e has joined.
20:00:36 -!- imode has joined.
20:05:25 -!- DrSoy has joined.
20:05:33 -!- DrSoy has left.
21:16:53 -!- deltaepsilon23 has joined.
21:18:09 -!- delta23 has quit (Ping timeout: 260 seconds).
21:18:19 -!- deltaepsilon23 has changed nick to delta23.
21:44:14 -!- 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.”).
22:05:11 -!- adu has quit (Quit: adu).
22:19:47 -!- delta23 has quit (Ping timeout: 240 seconds).
22:25:34 -!- deltaepsilon23 has joined.
22:35:11 -!- deltaepsilon23 has changed nick to delta23.
23:03:08 -!- adu has joined.
23:03:26 -!- adu has quit (Client Quit).
23:51:39 -!- orby has joined.
23:53:18 <orby> I'm trying to construct a specific combinator in Underload, but I'm falling short. Any wizards know how to construct s' where s':(x)(y)(z) -> x(z)(y(z))?
23:53:47 <user3456> Hey look a message! (And sorry I don't know Underload)
23:53:55 <orby> Also, ais523: I've found a 3 command simple translation of Underload.
23:53:58 <orby> Hello!
23:54:00 <user3456> .
23:54:27 <user3456> Sorry accidently pressed my keypad while opening my blinds
23:54:32 <orby> all good
23:54:49 -!- arseniiv has quit (Ping timeout: 264 seconds).
23:57:45 -!- deltaepsilon23 has joined.
23:58:09 -!- delta23 has quit (Disconnected by services).
23:58:15 -!- deltaepsilon23 has changed nick to delta23.
2020-10-09
00:02:52 <fizzie> ^ul (x)(y)(z)a~a*:^~a*~^!a~a**S
00:02:52 <fungot> x(z)(y(z))
00:03:01 <fizzie> (Not sure if I interpreted the notation correctly.)
00:03:01 <b_jonas> fizzie: oh, you were fast
00:03:49 <orby> Thanks fizzie!
00:05:20 <b_jonas> ^ul (y)(z)a~a*:^~a*
00:05:25 <b_jonas> ^ul (y)(z)a~a*:^~a*S
00:05:25 <fungot> y(z)
00:05:49 <fizzie> http://ix.io/2A9t -- with steps.
00:06:45 <orby> Actually, I think my notation is backwards. I meant for x to be on top of the stack, not on the bottom
00:06:55 <b_jonas> fizzie: ouch, not writing out the outer parenthesis
00:07:16 <orby> So I guess a better way of asking my question would be (z)(y)(x) -> ((z)y)(z)x
00:07:49 <b_jonas> orby: ok that's slightly harder
00:08:01 <fizzie> That's the problem with stacks, you never know which way around they are.
00:08:04 <orby> yes, I thought it was hard
00:08:06 <b_jonas> but you can still compile lambda calculus to underload
00:08:23 <b_jonas> fizzie: yeah, though at least in underload they're always the way you took it
00:08:29 <b_jonas> (and in Consumer Society too)
00:09:12 <orby> I discovered today that there is a single concatenative combinator that is TC with quoting, a la iota in applicative combinator calculus
00:09:26 <orby> and I'm trying to document it properly as a minimization of underload
00:10:19 <b_jonas> orby: the concatenative thing is a generalization of combinator calculus, isn't it, so that should be true because combinator calculus has a single universal combinator too
00:12:38 <orby> b_jonas: I'd have to think about that. I'm not sure how obviously true it is, but I suspected it was true and went searching. It's actually really close to the construction of iota: let k be (y)(x) -> x, s' be (z)(y)(x) -> ((z)y)(z)x, then the sole sufficient combinator takes (x) -> (k)(s')x
00:12:55 <orby> just a slightly adapted s combinator
00:13:03 <b_jonas> orby: it's not obvious at all
00:13:05 <b_jonas> neither part is obvious
00:13:15 <b_jonas> I still can't wrap my head around how underload works
00:13:30 <orby> I mostly think of it as a term rewriting system
00:13:34 <orby> I find that easier to think about
00:13:45 <b_jonas> as for the single generator for combinator calculus, I never bothered to try to understand that, it seems like a useless bit of trivia to me, hh
00:13:55 <b_jonas> but I think other people have verified it because it's not that hard with a computer these days
00:14:09 <orby> I have a minor fetish for minimization, so I spend a lot of time thinking about reducing these sorts of things
00:14:21 <fizzie> This starts from a slightly different place:
00:14:22 <fizzie> ^ul ((z)a(y)a(x)a)^**:^!~a~*a~^~!~a~**S
00:14:22 <fungot> ((z)y)(z)x
00:15:27 <orby> thanks fizzie!
00:20:14 <user3456> Is there any way I can make this fish code smaller while keeping the string readable? (The \n is a newline, the code was testing on fishlanguage.com) 10"Stick any string here!"r.\n l?!;o
00:20:51 -!- Arcorann_ has joined.
00:23:16 <b_jonas> orby: but the basic recipe is this. you want to do something with (x0)(x1)...(xn) on stack. first apply () ~a~* ... ~a~* ~a~* on it to fold it to one term ((x0)(x1)...(xn)); then L: duplicate or triplicate that with : or ::; then get a single term like (xk) from the top copy with like ^!...! ~!~!...~!~!; then possibly flip and get a single term from the middle one; then do one step of whatever you
00:23:22 <b_jonas> wanted; then fold the result back into the bottom list with a*; then keep repeating this from L until you have every term you need separated inside one long list.
00:23:37 <b_jonas> but there's of course a lot of optimizations you can do on this.
00:24:41 -!- Arcorann has joined.
00:25:59 -!- Arcorann_ has quit (Ping timeout: 260 seconds).
00:27:07 <fizzie> ^ul (z)(y)(x)a~a~*~a~*:^!~a~*a~^~!~a~**S(just for completeness)
00:27:07 <fungot> ((z)y)(z)x
00:28:42 <b_jonas> fizzie: you're still quite fast in this
00:31:02 <orby> Thanks for your help friends.
00:31:11 <b_jonas> fizzie: it's impressive that there's only one colon in that
00:31:30 <b_jonas> (and it's not inside parenthesis)
00:32:50 <fizzie> ^ul (z)(y)(x)a~a*~a*:^a~*a~!~^a~!~**S(now with a little less unnecessary swapping)
00:32:50 <fungot> ((z)y)(z)x
00:33:04 <b_jonas> (though if it's just ONE colon then it doesn't help if it's inside parens. it only helps if there are two.)
00:34:12 -!- ais523 has joined.
00:34:31 <b_jonas> ohai
00:34:48 <ais523> normally "write this combinator in Underload" is pretty straightforward if you know what you want the result to look like
00:34:57 <ais523> it can be done mechanically, if necessary
00:35:06 <ais523> sometimes you can do it in your head, that's the hard part
00:35:15 <b_jonas> ais523: you have read tom7's very apt description of git and the world around it, right?
00:35:30 <orby> ais523: Yeah, I need to spend a little more time with Underload
00:35:38 <ais523> b_jonas: no
00:35:49 <b_jonas> I think I understand enough about git to use it, and I still think it's a very good description
00:36:02 <ais523> orby: let me try this; the problem is to define C such that (z)(y)(x)C is equivalent to ((z)y)(z)x, right?
00:36:13 <b_jonas> ais523: frontpage of http://radar.spacebar.org/ right now
00:36:19 <orby> ais523: Correct
00:36:31 <b_jonas> permalink: http://radar.spacebar.org/f/a/weblog/comment/1/1185
00:36:35 <ais523> b_jonas: ouch, that's unreadably narrow, and I don't get a reaer mode option
00:37:04 <b_jonas> ais523: go complain to tom7 then
00:37:08 <orby> What you are calling C I am calling S' in line with the notation used in "The theory of concatenative combinators" by Brent Kirby
00:37:21 <ais523> wow, this site uses tables for layout
00:37:53 <ais523> and specifies widths as an exact number of pixels
00:38:18 <b_jonas> ais523: yes, it's a blog that has existed continuously since 2000, with a new post every month, and tom7 just rewrote the script that serves it in a second programming language, where both of them are programming languages that he made himself
00:39:07 <b_jonas> basically rewrote it to a newer, incompatible evolution of his own scripting language
00:40:12 <ais523> there we go
00:40:19 <b_jonas> the same scripting language that implements http://snoot.org/
00:41:52 <ais523> I think the problem with git is that it solves a problem in a very simple, elegant, and straightforward way, but unfortunately it isn't the problem that git users actually wanted it to solve
00:43:25 <b_jonas> the table was 546 wide, specified in a plain HTML attribute, no CSS, since 2000 apparently: view-source:https://web.archive.org/web/20001018141700/http://radar.spacebar.org/
00:44:31 <ais523> ^ul (z)(y)(x)(~a:(~*a)~a*^)~a*^*S
00:44:31 <fungot> (z)x
00:44:52 <ais523> what have I done wrong, I wonder? (that was my first attempt done in my head, no helper programs)
00:44:57 <ais523> oh, nothing
00:44:59 <ais523> ^ul (z)(y)(x)(~a:(~*a)~a*^)~a*^*SS
00:44:59 <fungot> (z)x((z)y)
00:45:07 <ais523> just didn't print out the stack properly
00:45:32 <ais523> actually, I think I have one level of quoting too much
00:45:56 <ais523> ^ul (z)(y)(x)(~a:(~*)~a*^)~a*^
00:46:05 <ais523> ^ul (z)(y)(x)(~a:(~*)~a*^)~a*^SSS
00:46:05 <fungot> x(z)(z)y
00:46:14 <ais523> yep, that looks right
00:46:18 <ais523> ^ul (z)(y)(x)(~a:(~*)~a*^)~a*^aSaSaS
00:46:18 <fungot> (x)((z))((z)y)
00:46:24 <ais523> orby: there you go
00:47:09 <ais523> or, hmm, (z) is still quoted too much
00:47:14 <b_jonas> ais523: yeah. in particular, what I want solved is much closer to what svn solves than what git solves. an svn repository explicitly tracks what files in earlier versions are ancestors of a file, and which changes from a branch are merged into it and which aren't, even if I merge later changes from a branch but not merge earlier ones. git stores some of this and guesses about the rest heuristically, and
00:47:20 <ais523> ^ul (z)(y)(x)(~:(a~*)~a*^)~a*^aSaSaS
00:47:20 <fungot> (x)(z)((z)y)
00:47:20 <b_jonas> there's no easy way to make it remember what I think instead of what it guesses.
00:47:29 <ais523> ^ul (z)(y)(x)(~:(a~*)~a*^)~a*^^
00:47:29 <fungot> ...bad insn!
00:47:42 <ais523> the x in orby's example wasn't in parens, so that runs it
00:47:46 <ais523> ^ul (z)(y)(SS)(~:(a~*)~a*^)~a*^^
00:47:46 <fungot> z(z)y
00:47:51 <b_jonas> and svn also does partial checkouts or partial read-only replication.
00:49:00 <ais523> it's frustrating, I have ideas about how to write a VCS but am unlikely to actually write it
00:49:09 <b_jonas> what I'd like is the best of svn but distributed. I should probably learn how the heck mercurial works. I think mercurial is probably better than git in some respects, worse in others, it won't solve all my problems, but at least I could learn something from it about version control.
00:49:38 <ais523> one thing I don't like about Mercurial is that branches are expensive
00:49:48 <b_jonas> ais523: yeah, me too. I'd like to write one that's based on svn, but makes it a distributed version control system. I might try to write something like it, but it won't be working stable enough.
00:50:18 <ais523> some of svn's features, like consecutive revision numbers, seem somewhat incompatible with typical DVCS usage patterns
00:50:27 <b_jonas> ais523: yes. svn does everything that it wants to do inexpensively, but sadly there are a few things that it really doesn't want to do, and those are expensive because you have to work them around.
00:50:43 <ais523> this reminds me about my eso-idea of a git hash bruteforcer
00:50:58 <ais523> so that the short hashes given to commits were in consecutive numerical order (possibly in decimal rather than hex)
00:51:10 <ais523> i.e. the first revision is 0000001, the second is 0000002, and so on
00:51:27 <int-e> yuck :)
00:51:27 <ais523> but it turns out that there actually isn't much you can change to make the hash match, apart from the commit message
00:51:48 <ais523> maybe you could mess with the whitespace
00:52:50 <b_jonas> ais523: yes, but that just means that referring to stuff with version numbers won't be such a good idea anymore. that's not a problem. some web forums (of at least three different engines) have the same problem: in theory they number messages within a thread with consecutive numbers, so people sometimes refer to them by number in replies, but in practice moderation can cause new messages to appear with
00:52:56 <b_jonas> older timestamps or older messages to disappear, such as when messages are moved among threads, in which case those numbers aren't stable, and the replies will be confusing.
00:53:38 <ais523> I mod on a phpBB forum and I will normally edit messages down rather than delete them, for this reason
00:53:46 <b_jonas> specifically this happens on at least one wordpress blog's comment section, most phpbb forums, and http://www.komal.hu/forum which has its own engine
00:53:50 <ais523> (if the content is inappropriate and needs to be removed)
00:53:51 <int-e> just mess with the committer name ;-)
00:53:59 -!- delta23 has quit (Ping timeout: 260 seconds).
00:54:16 <ais523> This message violates site rules and was deleted. — callforjudgement
00:54:27 <b_jonas> ais523: yes, but what do you do with messages that are unnecessarily posted to a new thread even though there's a good existing thread for them?
00:54:39 <b_jonas> you can avoid deleting, but how do you avoid adding?
00:54:44 <b_jonas> do you quote it in a new message?
00:54:58 <ais523> if a message needs to be repeated elsewhere, yes, quote
00:55:21 <ais523> the nature of this forum is pretty specialised, though, and messages being posted in the wrong place are very rare
00:55:41 <ais523> if they were, it would likely be a case of either nothing needing to be done, or a near-banworthy offence, depending on context
00:55:48 -!- deltaepsilon23 has joined.
00:55:56 -!- deltaepsilon23 has changed nick to delta23.
00:56:17 <b_jonas> "git hash bruteforcer" => well yes, using SHA-1 and saying that it's ok because you'll only commit trustable data into the vcs rather than admitting that it's hard to change the hash function is a stupid decision, and using only 7 hexits is another stupid decision, but at least the latter isn't baked into git so I don't care
00:56:33 <esowiki> [[Sea]] https://esolangs.org/w/index.php?diff=77887&oldid=75326 * Orby * (+1159) Introducing Sea: a three command simple translation of Underload
00:56:54 <ais523> b_jonas: the 7 nybble thing is actually not a requirement, it will expand to 8 (and possibly more?) in cases of collision
00:56:59 <ais523> all the nybbles are stored internally
00:57:14 <b_jonas> ais523: yes, I know
00:57:46 <b_jonas> ais523: I even have core.abbrev=16 in my global git settings
00:57:54 <b_jonas> which makes it list 16 hexits by default
00:58:02 <b_jonas> that's still not all of the hash, but better than 8
00:58:07 <b_jonas> and for some purposes I make it list all the hexits
00:58:18 <b_jonas> like when it needn't be human-readable, but stored for machines
00:58:23 <ais523> why do you say "hexit" rather than "nybble"? hmm, maybe people wouldn't refer to a base-256 digit as a "byte"
00:58:26 <b_jonas> git does that in its internal stuff too obviously, it's not that stupid
00:58:35 <b_jonas> ais523: it can be nybble too, sure
00:58:59 <b_jonas> hexit is the text format numeral, nybble is the actual number
00:59:26 <ais523> anyway, an idea I had recently: using algebraic numbers as the internal numerical type for a language
00:59:38 <b_jonas> so "A" is a hexit (except in git which uses lower case, another thing I hate, but at least it's consistent with the rest of the kernel, which also uses lowercase in a lot of debug messages and /proc and /sys text files), 0xA is a nybble
00:59:56 <b_jonas> ais523: that's actually rather hard to implement
01:00:10 <b_jonas> but there are other choices for esoteric number systems that are easier to implement
01:00:15 <ais523> this would be particularly good for declarative languages: if all you have is + - * ÷ ==, everything is fully closed except for division by 0 (which in a declarative language is not an error)
01:00:27 <ais523> it doesn't seem ridiculously hard to implement, just inefficient
01:00:47 <b_jonas> oh if you don't implement < or rootof, then it's much easier
01:00:53 <b_jonas> but then it's much harder to use for anything useful
01:01:01 <b_jonas> because you can't get one of the square roots in any way
01:01:02 <ais523> rootof effectively exists within this set of operations
01:01:11 <int-e> ais523: I guess you could mess with the commit message and disguise it... say, have every commit message end in a weather forecast and a fortune.
01:01:24 <ais523> in a declarative language, you just need to assign, say, X * X = 2 and then X is set to one of the square roots of 2
01:01:29 <b_jonas> no, you can only get all the roots of a polynomial nondeterministically, and you can't distingiush among algebraic conjugates
01:01:44 <b_jonas> ais523: you can't even distinguish between sqrt(2) and sqrt(-2)
01:01:44 <ais523> yes, you can't get at any specific root
01:01:51 <int-e> But yeah, the formats look rather rigid.
01:01:52 <b_jonas> ais523: I assume you have 1 as a built-in too, right?
01:02:00 <int-e> Which is a good thing, of course.
01:02:11 <ais523> b_jonas: you can distinguish between sqrt(2) and sqrt(-2), the former obeys X * X = 2, the latter doesn't
01:02:14 <b_jonas> or... oh heck
01:02:19 <ais523> you can't distinguish between sqrt(2) and -sqrt(2), though
01:02:22 <b_jonas> ais523: yes, sorry, that
01:02:36 <int-e> (I'm assuming that tree objects must contain entries in byte-based lexicographic order)
01:02:45 <b_jonas> maybe you want to generate 1 from some polynomial equations or something, that's possible
01:02:45 <ais523> unfortunately, you can't just store numbers as an entire set of conjugates
01:02:52 <ais523> because say you have X * X = 2 and Y * Y = 2
01:03:05 <ais523> then X + Y could nondeterministically be either 0 or sqrt(8)
01:03:07 <orby> later all
01:03:11 <ais523> which are not conjugate to each other
01:03:13 <ais523> orby: later
01:04:31 <b_jonas> ais523: yes, and that's why you want to have < and <= and rootof as primitives too, where rootof takes a polynomial and an interval, and it returns one of the real roots of the polynomial in that interval.
01:05:06 <ais523> you don't actually need rootof as a primitive in a declarative language, if you have < and arithmetic
01:05:17 <ais523> just assign to an equation
01:05:37 <b_jonas> yeah, I guess in a declarative language you don't need it
01:05:46 <b_jonas> but the interpreter has to implement it
01:06:14 <b_jonas> and it's not rootof that's hard to impelement, it's <
01:06:26 <ais523> yes
01:06:33 <ais523> actually, < isn't even very well defined
01:06:40 <b_jonas> why?
01:06:43 <ais523> complex numbers
01:06:45 <b_jonas> meh
01:06:51 <ais523> you need some sort of norm<
01:06:52 <b_jonas> I consider only real numbers
01:07:02 <ais523> then it isn't algebraically closed any more
01:07:21 <b_jonas> if you want complex numbers, then add real part as a primitive too, and < should compare by real part first then imaginary part
01:07:38 <b_jonas> it doesn't have to be algebraically closed
01:07:45 <b_jonas> you can simulate complex numbers from real numbers in user space
01:07:56 <b_jonas> I mean if you have rootof, not just powers
01:08:19 <b_jonas> complex numbers aren't really harder, they just complicate everything
01:08:27 <b_jonas> or simplify, depending on which side you're looking form
01:08:28 <ais523> what's the point of using algebraic numbers, if they don't give you an algebraically closed number system?
01:08:43 <b_jonas> complicate if you have to implement stuff, simplify if you want to use it
01:08:53 <b_jonas> yes, I guess you're right
01:08:56 <b_jonas> so complexes
01:09:03 <b_jonas> but then you probably want real part as a primitive too
01:09:13 <b_jonas> and I guess i
01:09:19 <b_jonas> so you can distinguish between +i and -i
01:09:26 <b_jonas> but < might do that anyway
01:09:30 <int-e> Over the reals you have tools for counting roots in an interval.
01:09:37 <ais523> yes
01:09:37 <int-e> How do you do that in the complex numbers?
01:09:45 <b_jonas> int-e: there's probably tools for that oo
01:09:47 <ais523> I was going to say, is there an equivalent for complex numbers?
01:09:49 <b_jonas> they're just less elegant
01:09:57 <ais523> I'm pretty sure root isolation in the complex numbers exists
01:10:03 <b_jonas> ais523: probably
01:10:16 <b_jonas> real numbers just have a nice elegant algorithm
01:10:20 <b_jonas> well, elegant in theory
01:10:25 <b_jonas> still a hell to work with
01:10:37 <ais523> Wikipedia has an article on real-root isolation but not complex-root isolation
01:10:42 <int-e> I've followed one algebraic number development where root separation was a reason for keeping algebraic numbers real.
01:11:30 <int-e> (And deal with complex numbers as pairs of real algebraic numbers.)
01:11:35 <b_jonas> ais523: that's because nobody wants to actually implement it in full generality, or even describe it properly in writing. we know it's possible, and Mathematica implements it, let's leave it at that and let the Maxima fanatics deal with it.
01:12:44 <int-e> Of course what I'm alluding to was a formalization effort... so there was also a strong incentive to keep things (relatively) simple.
01:13:31 <b_jonas> I don't even know a simple algorithm for deciding if an expression that contains field ops, real square roots, and real cube roots is negative.
01:13:46 <b_jonas> without cube roots I do know an algorithm that I can explain
01:14:38 <b_jonas> with cube roots, you would need to work with algebraic numbers nonsense like finding a generator polynomial or something. the practical solution is to ask GAP and let it work its magic.
01:15:05 <b_jonas> well the practical solution is to decide using interval arithmetic, but if it's zero, then ask GAP to prove it and let it work its magic
01:15:50 <b_jonas> oh, that reminds me
01:16:03 <b_jonas> does any of you happen to have a backup of Plouffe's inverter? it fell off the web
01:16:14 <b_jonas> I don't need it for anything urgent, it would just be nice to have a backup
01:16:36 <b_jonas> the old address was https://isc.carma.newcastle.edu.au/
01:20:21 <b_jonas> ais523: anyway, branches being expensive is one of those things that kept me away from mercurial
01:20:48 -!- orby has quit (Remote host closed the connection).
01:21:22 <b_jonas> and I can tell why svn+distributed is hard to make work, but it's not the sequential version numbers
01:22:17 <b_jonas> in the model I imagine there's still a good way to refer to a specific revision, or a file or directory in a revision.
01:24:00 <int-e> I suppose you found https://oeis.org/wiki/Plouffe's_Inverter (and the reference to ISC+, which is also down, but points to ISC, which is working but presumably far less powerful)
01:25:08 <b_jonas> the theoretical problem is more like that some operations that I'd expect an ideal distributed vcs should implement efficiently would be implemented rather inefficiently (as in they'd have to rebuild the entire repository); the practical problem is that if I try to code this, it will either never be complete, or it will have so many bugs that can lose you data that the gaps are larger than the features.
01:25:29 <b_jonas> int-e: no, I actually haven't looked there
01:25:36 <ais523> git was originally intended to be a VCS backend, rather than a VCS
01:25:45 <ais523> I'm surprised there aren't more VCSes that use it like that
01:26:51 <b_jonas> ais523: well, it works quite well as a vcs for the special case of developing the linux kernel, which indeed wants to send patches in email, has lots of distributed developers cherry-picking commits from each other, and puts only trusted text source files in the repository
01:27:08 <ais523> git is actually very bad at cherry-picks
01:27:18 <b_jonas> ais523: it doesn't work as a backend for what I want, because it doesn't implement modifyable sparse checkouts
01:27:36 <ais523> cherry-pick from A into B followed by merge from A into B is an operation that git's model simply doesn't implement
01:27:41 <b_jonas> ais523: yes, svn is better. but it works in the principled environment of linux kernel environment
01:27:49 <ais523> it often works in practice, but only due to hacks designed to merge two identical-looking changes into one
01:28:15 <b_jonas> ais523: yes, that's sort of what I said above about not storing merge metadata
01:29:27 <b_jonas> ais523: you should also consider the historical context as an excuse though: git is old, svn only started to get merge tracking in the time that I remember, git had the hacks much before that
01:29:59 <b_jonas> specifically svn adds merge tracking in svn 1.5, which was released ... when?
01:30:20 <b_jonas> a moment, this is exactly something vcs should be able to tell
01:30:43 <b_jonas> released in 2008
01:31:28 <b_jonas> back long ago, when svn was not really ready, and the other contenders weren't anywhere, git was revolutionary
01:31:37 <b_jonas> it just didn't get developed as much as svn later
01:31:38 <zzo38> There is also Fossil, where it is stored as a set of artifacts each with identifiers, but I don't know if there are any implementations of the Fossil format other than Fossil itself.
01:32:05 <b_jonas> and git was what popularized the concept of distributed version control, mercurial and darcs came after that and took the good parts
01:34:00 <ais523> Mercurial and git were developed at almost the same time, for the same reason
01:34:02 <b_jonas> I technically used svn in 2008, but not for anything nontrivial, I mostly just checked stuff out
01:34:27 <b_jonas> ais523: I admit I don't actually know the history, I'm just telling my impressoin
01:34:40 <ais523> the Linux kernel used to use a proprietary VCS
01:34:41 -!- Arcorann_ has joined.
01:34:42 <b_jonas> I don't know when git gained what features
01:34:59 <b_jonas> yeah, I heard that, Linus decided to make his own tools, just like Knuth
01:35:03 <ais523> but someone working on it reverse-engineered part of its internal protocol, so that they could script it more easily or something
01:35:08 <ais523> and the company making it got mad
01:35:25 <ais523> so there was demand for a replacement VCS in a hurry
01:35:31 <b_jonas> because he wasn't satisifed with the existing tools
01:35:43 <b_jonas> yeah
01:35:45 <ais523> not so much "wasn't satisfied" as "was suddenly banned from using"
01:35:57 <ais523> although, git is better for the Linux kernel than Perforce anyway
01:36:13 <b_jonas> ais523: yeah
01:36:22 <ais523> in fact, Perforce's manufacturers probably rather shot themselves in the foot, by inspiring the creation of a free competitor that has outcompeted them quite badly
01:36:41 <fizzie> Linux was using BitKeeper, not Perforce.
01:37:08 <b_jonas> ais523: no, they might be laughing at us that they can point to how bad git is and they're offering an alternative to common people that is more down to earth
01:37:21 <ais523> fizzie: ah, OK
01:38:19 -!- Arcorann has quit (Ping timeout: 260 seconds).
01:42:59 <ais523> huh, apparently BitKeeper ended up as open source
01:43:50 <ais523> I was wondering what happened to it after the debalce in question
01:44:15 <b_jonas> different topic. in Spelunky 2, shopkeepers usually have a skeleton key that you can get if you kill them. skeleton keys are reusable and can open any doors that silver keys can open. this makes absolutely no sense in-game, and I think it comes from nethack. in nethack it makes some sort of sense, because it wants shopkeepers to be able to open locked doors.
01:44:46 <b_jonas> and I don't think this is a D&D heritage
01:45:13 <ais523> there's a spelunky 2?
01:45:16 <b_jonas> yes
01:45:18 <b_jonas> it was released recently
01:45:33 <b_jonas> for Playstation and Windows Steam
01:46:11 <b_jonas> a nice game, very faithful to Spelunky HD, from its creator, a worthy sequel and good game
01:46:33 <fizzie> I saw someone on the Internet play Spelunky 2 just recently, and wondered about that.
01:46:47 <fizzie> Looked like it had a bit more branching in the sequence of levels or something.
01:46:50 <b_jonas> I've seen much of it on twitch. I'm thoroughly spoiled of the known stuff now.
01:47:11 <b_jonas> fizzie: yes, zone 2 and zone 4 has two alternative biomes that you choose by entering one of the two exits of the last level of the previous zone
01:47:40 <b_jonas> zone 2 is either jungle or volcano, zone 4 is either egypt-themed or water + east asia themed
01:49:40 <b_jonas> and there are also optional boss levels that you enter to via secret levels, an optional 7th zone, and SPOILER an optional "infinite" hard postgame area that is quite hard to enter because you need to get there specific artifacts from three zones (in the intended route; you can actually skip one of them but it's harder)
01:50:04 <b_jonas> well, four specific artifacts, but one you probably alwyas get anyway
01:50:14 <b_jonas> the other three only has this one use
01:50:30 <b_jonas> well, it's more complicated
01:50:55 <b_jonas> it's one artifact that lets you into the optional 7th zone, and two that together let you from there to the postgame area
01:51:05 <b_jonas> it's a pretty nice design
01:51:25 <b_jonas> and there are probably some secrets still not discovered, because the game and especially the Windows release is quite new
01:51:51 <b_jonas> even besides this zone stuff, the overall gameplay and movement seems really well thought out, except for one specific common item that many people hate
01:52:42 <b_jonas> I should probably write a summary of the worlds at some point
01:52:48 <b_jonas> mostly to me to understand it
01:52:54 <b_jonas> because it's a pretty nice design
01:53:20 <ais523> it seems surprisingly similar to Spelunky HD, more of an expansion pack than anything
01:53:28 <ais523> perhaps it's a good thing that people release those as new versions, though
01:53:29 <b_jonas> with like eleven different biomes (set of map tiles and enemies)
01:53:41 <ais523> the old-fashioned way of doing games has been mostly abandoned nowadays
01:54:00 <b_jonas> ais523: it's a new game, but very heavily appeals to the fans of Spelunky HD, so much that good Spelunky players can learn it much easier, because the movement and controls are very similar
01:54:23 <b_jonas> and many elements are taken from HD too, like many enemies and items and world themes
01:55:29 <ais523> I've played the original (not HD) but I'm not all that good at it
01:55:40 <ais523> I feel like I'd enjoy it more if it were turn-based, even though it's a platformer
01:56:04 <b_jonas> ais523: think of classic game series like Age of Empires, Warcraft, Settlers. new games, but the good parts of design taken, so easier to learn if you know the previous game.
01:56:26 <ais523> b_jonas: yes, it's a very old-fashioned way to do a game sequel
01:56:36 <b_jonas> I guess
01:56:41 <ais523> nowadays that sort of thing's normally done as DLC rather than a sequel
02:05:31 -!- t20kdc has quit (Read error: Connection reset by peer).
02:06:05 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
02:06:44 <b_jonas> ais523: dunno, to me the contrast is more like that nowadays games are short-lived and gimmicky, they want to sell a new idea that people find fun for a year or two, or for six years in case of the most successful games, but then put away and stop playing, and the manufacturer stops pretending to care about it; old games tried to make a good stable base that you can play for a much longer time, and if
02:06:50 <b_jonas> they succeed, the game becomes a classic that only needs a few tweaks.
02:07:13 <zzo38> Well, many computer games made these days are not as good as before (although there are exceptions).
02:07:40 <b_jonas> but maybe this is entirely just a false nostalgic view, obviously I don't know about games released in the last two years that have become classics and people have been playing them for decades,
02:08:01 <b_jonas> and I don't think so much about all the throwaway old games, only the ones that succeeded to become classics.
02:09:17 <b_jonas> it is quite possible that Super Mario Odyssey will become one of these classics, and it will be speedran even 15 years from now, together with SM64 and Sunshine
02:09:43 <ais523> zzo38: there were many bad games before, too, but people don't remember them as well
02:09:45 <b_jonas> (whereas Zelda: Breath of the Wild, which some people hastily declared the best game ever, will be forgotten)
02:09:52 <b_jonas> ais523: yeah.
02:10:28 <zzo38> ais523: Yes, that is true. (And it happens with other works too.)
02:13:50 <b_jonas> oh by the way, it turns out that the IBM Selectric 1 and 2 really exist, my conspiracy theory that it's war propaganda (or practical joke) spread by Americans about how advanced seemingly impossible technology they had so long ago is false
02:15:02 <b_jonas> it's weird how many old writings mention these typewriters, but there are so few first-hand observations from contactible people who used the machines back when they were new, and so few remaining examinable copies
02:17:29 <b_jonas> I still don't understand how a mechanical typewriter with a single electric motor and no electronics can move that crazy ball-shaped head; how it isn't unusable because the glyphs adjacent on the head to the one you want to stamp leave faint marks; how it has a pure mechnical full lockout mechanism so you can't press two keys at the same time; and how it doesn't even attempt to lay the glyphs on the
02:17:35 <b_jonas> ball out in such a way that the widest glyphs are close to the equator
02:18:04 <b_jonas> so even though it almost certainly exists, to me it's similar to washing machines, it exists but it's supposed to be impossible
02:20:49 <b_jonas> but the last straw against the conspiracy theory is https://www.marklin-users.net/cookee_nz/hobbies/IBM/IBMSelectricAPM-Nov1980.pdf , too detailed, I don't believe it could be faked for a conspiracy
02:21:15 <b_jonas> some of the details mentioned might be misremembered, but overall they're real typewriters
02:25:09 <zzo38> I have seen that some features of Pokemon games are not as good as the previous games. While I agree, this is not specific to Pokemon and occurs with a lot of series.
02:30:57 <esowiki> [[Brainfuck extensions]] https://esolangs.org/w/index.php?diff=77888&oldid=71170 * RocketRace * (+277) Add 5D Brainfuck With Multiverse Time Travel to the appropriate lists
02:31:07 <ais523> b_jonas: huh, do you not believe in washing machines?
02:33:59 <b_jonas> ais523: I do believe in washing machines, but they're magical, I don't see how they can have the practical effectiveness and reliability that they have as measured by practice, given that we basically know what they have (modulo some secrets that the manufacturers have about recent innovations)
02:34:32 <b_jonas> zzo38: do you mean the mainline games like Sword/Shield, or side products like Pokemon Let's Go or Pokemon Go
02:35:22 <b_jonas> ais523: I use a washing machine and commercial washing detergents, and I'm glad that they work so well (admittedly there's some luck here in that I have a model that works well), but I don't understand why they work so well
02:35:30 <zzo38> b_jonas: I mean the mainline games; the side products are not separate.
02:37:07 <ais523> I think the best Pokémon games for replay value are HGSS and B2W2, and BW are best if you are planning to only play through once
02:37:26 <ais523> by replay value I mostly mean grinding the postgame, rather than playing multiple times
02:38:28 <zzo38> (Also some games will improve some things, and make others worse.)
02:39:01 <ais523> yes, I think actually every Pokémon game does this
02:39:21 <ais523> it doesn't help that through much of the series' lifetime, Game Freak would create two Pokémon games in parallel
02:39:41 <ais523> so it was typically the case that a new feature in one game would disappear in the next, and might then reappear in the game after
02:45:37 <zzo38> Yes, that it is.
02:46:13 <zzo38> (A lot of computer games are just made too easy. That happens with everything though, and often they do not even add a difficulty selection menu. However, there are self-imposed challenges, at least.)
02:48:12 <ais523> it is much more common for computer games to be too easy than too hard
02:48:23 <zzo38> Yes, it is.
02:55:22 <int-e> do you ever get a game that starts out very easy and then transitions to nearly impossible with no discernable ramp inbetween?
02:55:28 <int-e> or is that just happening to me
02:55:55 <int-e> (don't have a concrete example right now I'm afraid)
02:56:41 <zzo38> I do not have a example either
02:58:56 <zzo38> But perhaps see https://allthetropes.org/wiki/Difficulty_Spike
03:12:47 <ais523> there are some games which don't have consistent internal mechanics, they're just a case of "guess what the devs are thinking"
03:12:59 <ais523> those can have a ramp like that for some players but not others, when they fail to guess
03:33:57 -!- delta23 has changed nick to BTRider.
03:34:02 -!- BTRider has changed nick to delta23.
03:34:07 -!- delta23 has changed nick to s3423.
03:34:13 -!- s3423 has changed nick to frrrrrr.
03:34:44 -!- frrrrrr has changed nick to deltta.
03:34:46 -!- deltta has changed nick to delta23.
04:38:14 -!- ais523 has quit (Quit: quit).
06:55:24 -!- Sgeo has quit (Read error: Connection reset by peer).
07:21:46 <esowiki> [[!@$%^&*()+/Algorithms]] https://esolangs.org/w/index.php?diff=77889&oldid=77885 * SunnyMoon * (+100) Clarification
07:22:24 <esowiki> [[!@$%^&*()+/Algorithms]] M https://esolangs.org/w/index.php?diff=77890&oldid=77889 * SunnyMoon * (+1) Whole halt
07:25:20 -!- sprocklem has quit (Ping timeout: 256 seconds).
07:33:55 <esowiki> [[!@$%^&*()+/Algorithms]] https://esolangs.org/w/index.php?diff=77891&oldid=77890 * SunnyMoon * (+16) Clarification
07:34:26 <esowiki> [[!@$%^&*()+/Algorithms]] M https://esolangs.org/w/index.php?diff=77892&oldid=77891 * SunnyMoon * (+0) Capitalization
07:41:19 <esowiki> [[!@$%^&*()+/Algorithms]] https://esolangs.org/w/index.php?diff=77893&oldid=77892 * SunnyMoon * (+136) Added input storage
07:42:00 <esowiki> [[!@$%^&*()+/Algorithms]] M https://esolangs.org/w/index.php?diff=77894&oldid=77893 * SunnyMoon * (+1) Prulal, no Plural
08:08:22 -!- hendursa1 has joined.
08:10:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:17:54 -!- cpressey has joined.
08:22:34 -!- deltaepsilon23 has joined.
08:23:09 -!- delta23 has quit (Ping timeout: 260 seconds).
08:25:26 -!- deltaepsilon23 has changed nick to delta23.
08:33:08 -!- LKoen has joined.
08:45:38 -!- user24 has joined.
09:00:54 <cpressey> I really hate it when someone's explanation of something includes phrases like "It's easy, really" or "You could have invented it yourself".
09:16:08 -!- imode has quit (Ping timeout: 272 seconds).
09:22:41 <b_jonas> cpressey: the one I hate is posts that start like "I am surprised that nobody has mentioned [...]" in a thread with an open-ended question where you could mention a huge amount of examples, when the thread is clearly not trying to be a comprehensive list, and the post is sometimes posted just a few hours after the thread starts.
09:24:28 <b_jonas> that phrase is never appropriate, and it's my pet peeve
09:28:59 <user24> I am surprised that nobody has mentioned the https://en.wikipedia.org/wiki/Availability_heuristic
09:31:38 -!- arseniiv has joined.
09:42:29 <arseniiv> it seems TIME CUBE has some roots: https://en.wikipedia.org/wiki/Cubical_atom
09:43:31 <delta23> carthorse & everyone else who wants to : read this doc if you have the time : https://freemasonry.bcy.ca/texts/taxil_confessed.html
09:43:50 <delta23> all the freemasonry conspiracy theories of today are based on an ancient troll from 200 years ago
09:44:13 <delta23> well, moreso ~125 years ago
09:44:18 <b_jonas> arseniiv: of course it has roots! Gene Ray doesn't seem to admit it, but he took the idea of the square earth straight from the Bible, as Roger M. Wilcox explains in http://www.rogermwilcox.com/square_earth.html
09:44:39 <delta23> ah, wrong channel
09:44:40 <delta23> sorry
09:45:05 <arseniiv> lol
09:45:49 <b_jonas> hehe, this came out well. arseniiv talks about the roots of Time Cube, then delta23 starts to talk about ancient freemason trolls
09:47:40 <delta23> noo :(
09:50:30 <arseniiv> this is not a coincidence
09:54:22 <arseniiv> that square-earthiness proof is more or less neat but what if the true metric is non-euclidean: then square-nonsquare dichotomy is a bit different and there are also four natural corners, null corners (or four natural side midpoints). In fact Earth then can be the “circle” with four corners
09:55:15 <arseniiv> or two glued circles. still with four corners
09:56:01 <arseniiv> we shall leave this revelation private to this channel
09:56:50 <b_jonas> By the way, have you noticed what a troll the First Council of Nicaea was about the date of Easter? It was well known that Christ was crucified on Pesach and resurrected two days after, and the Council agreed with this.
09:56:57 <b_jonas> We need an agreed upon univeral method for when to celebrate the crucifiction and the resurrection, so that corrupt local clergy can't be bribed as for what the date is, as was usual in those times. So do we celebrate it on Pesach? No, that would be too simple.
09:57:30 <b_jonas> Invent a completely different rule that's just as hard to implement in practice as the version of the Hebrew calendar used back then, that puts Easter vaguely at the same season as Pesach, and would later be forked to like three or four different modern methods for Easter date in schisms. Now we have two problems.
10:01:54 <Arcorann_> All the Council of Nicaea decided for certain is that Christians should celebrate Easter on the same day independently of the Hebrew calendar, if I remember correctly
10:02:30 <delta23> which calendar?
10:02:47 <delta23> some of the early christians believed in the book of enoch (c. Jude)
10:02:54 <Arcorann_> https://en.wikipedia.org/wiki/Easter_controversy <-- this covers most of it but there's nothing about the Gregorian calendar for some reason
10:02:58 <delta23> we need to convert to enoch cal next lol
10:03:05 <b_jonas> Not that it's ever easy to make a good calendar if it must be tied to both Earth days and (at least one of moon phases or seasons), because if you try to make a mathematically deterministic version, you'll run into problems in a few tens of thousand years just because we can't predict Earth's rotation well enough.
10:03:21 <delta23> b_jonas: enoch cal had that problem
10:03:41 <b_jonas> Arcorann_: then who started the habit of Easter always being on Sunday, when Pesach can fall on any of four days of the week?
10:04:56 <Arcorann_> The "final" Julian calendar Easter computations originated in Alexandria, and according to that WP page the Syriac Christians also celebrated on a Sunday
10:05:05 <b_jonas> basically both the hebrew calendar and the roman calendar stared as being tied to the actual astronomical stuff, then later they adopted possibly short-sighted mathematically defined methods, just so the calendars can be predicted infinitely far, and they don't care if it will be out of sync with astronomy in a few ten thousand years (or in the case of the Julian calendar, in just a thousand years)
10:05:33 <Arcorann_> Roman was never tied to astronomical stuff, pre-Julian it was always ad-hoc
10:06:09 <b_jonas> Arcorann_: the Romans did tie it to days and seasons, loosely. it wasn't well-defined enough to follow any rule, like I said about corrupt local clergy.
10:06:22 <b_jonas> Perhaps we should admit why a mathematically deterministic methods can't work for the long term, and not pretend that it's the one deterministic method that will work forever,
10:07:14 <delta23> make a virtual world which runs on a deterministic calendar
10:07:35 <Arcorann_> I've found a couple of people who tried to match leap years to the tropical year by ridiculously long leap cycles, like millions of years
10:07:36 <b_jonas> but instead make the calendar depend on astronomical observations, but no on such a short term as the traditional Hebrew calendar, but predictable for a few thousand years into the future, which would have been good enough for messengers from a central Astronomical authority to get around even in Roman times
10:08:13 <Arcorann_> Like the Iranian calendar?
10:08:14 <b_jonas> admittedly computers and atomic clocks and GPS make it easier, but it's not like the principle was impossible two hundred years ago
10:08:45 <b_jonas> Arcorann_: yes, and those attempts can't work, because we can't predict how long days will last accurately enough
10:09:25 <b_jonas> they're misguided toys designed by mathematically inclined people who don't understand the astronomical background
10:09:35 <Arcorann_> Agreed
10:09:44 <b_jonas> whereas what I say is misguided for political and societal reasons, not for astronomical reasons
10:10:09 <b_jonas> bb in a few hours
10:10:15 <Arcorann_> The people who designed the French Republican calendar wanted the year to start on the equinox, but then they found that one equinox was predicted to be 20 seconds before midnight with an error margin in the tens of minutes
10:10:55 <Arcorann_> Year 144 of the Republican calendar
10:16:48 <delta23> make a calendar w/ 10 days in a week
10:16:51 <delta23> 10 weeks per month
10:16:54 <delta23> 10 months per year
10:16:57 <delta23> etc.
10:17:53 <Arcorann_> Someone's probably done that already
10:18:37 <Arcorann_> It was Donald Knuth --> https://en.wikipedia.org/wiki/Potrzebie#System_of_measurement
10:50:49 -!- cpressey has quit (Quit: WeeChat 1.9.1).
11:02:45 -!- wmww has quit (Quit: killed).
11:02:49 -!- tswett[m] has quit (Quit: killed).
11:02:51 -!- Discordian[m] has quit (Quit: killed).
11:10:29 -!- wib_jonas has joined.
11:11:27 -!- tswett[m] has joined.
11:14:46 <wib_jonas> Arcorann_: we only had atomic clocks for fifty years. anything we know about how the length of the day changed before that are lucky accidents, where some ancient civilization left records of astronomical observations of the year, month, eclipses, Venus phases, and these are usable only in the rare case when we can clearly determine how many days
11:14:47 <wib_jonas> ago the dates mentioned were, which is often impossible because of the imprecise calendar keeping.
11:19:32 <Arcorann_> Have you read the Stephenson/Morrison/Hohenkirk paper?
11:20:57 <esowiki> [[User:ThisIsTheFoxe]] M https://esolangs.org/w/index.php?diff=77895&oldid=70128 * ThisIsTheFoxe * (+1) typo
11:22:50 <Arcorann_> *Hohenkerk
11:29:17 -!- 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.”).
11:34:02 -!- deltaepsilon23_ has joined.
11:34:26 -!- delta23 has quit (*.net *.split).
11:34:26 -!- sftp has quit (*.net *.split).
11:34:26 -!- b_jonas has quit (*.net *.split).
11:34:26 -!- izabera has quit (*.net *.split).
11:34:26 -!- paul2520 has quit (*.net *.split).
11:34:29 -!- deltaepsilon23_ has changed nick to deltaepsilon23.
11:34:40 -!- deltaepsilon23 has changed nick to delta23.
11:34:45 -!- sftp has joined.
11:35:52 -!- wmww has joined.
11:35:58 -!- iscordian[m] has joined.
11:40:14 -!- b_jonas has joined.
11:40:14 -!- izabera has joined.
11:40:14 -!- paul2520 has joined.
11:40:38 <Arcorann_> wib_jonas: https://academic.oup.com/mnras/article/417/4/2714/1095659 <-- if you want a laugh
11:42:58 <wib_jonas> Arcorann_: sorry, that's not the sort of topic I can really laugh about, even if I can see the parody. It's more like sad that we got there.
11:43:30 <Arcorann_> Oh well
11:44:03 <wib_jonas> I personally am selling my skills of solving problems the traditional way, by translating common sense rules to a computer program, rather than trying to use machine learning to divine rules from examples.
11:44:53 <wib_jonas> And I find the hype of trying to apply machine learning (and before that, GPU computations, and before that, multithreading, and before that, just in time compiling) even in cases when it makes the problems harder rather sad.
11:46:15 <wib_jonas> I try to learn enough about all those hyped methods to know when they're useful and when you should ask an expert in those topics, which is a lucky case because they're a dime a dozen now, with every college course trying to teach those fashionable topics only and getting rid of more useful research departments that try to make publications without
11:46:16 <wib_jonas> adding today's marketing keywords.
11:46:34 <Arcorann_> https://royalsocietypublishing.org/doi/10.1098/rspa.2016.0404 <-- anyway, here's the paper I mentioned earlier
11:47:39 <wib_jonas> So instead I just understand enough of both mathematics and programming, but only the basics of both, and this combination is apparently rare enough to be worth something as a job skill, despite that it's a natural pairing.
11:48:12 -!- cpressey has joined.
11:48:36 <wib_jonas> Arcorann_; yes, that's the good article, I have seen that one
11:51:27 -!- iscordian[m] has changed nick to Discordian[m].
11:56:15 <Arcorann_> I could probably ramble on for calendar-related topics about some time
12:00:26 <Arcorann_> Like calendar reform
12:02:00 <wib_jonas> Arcorann_: have you read these first? https://www.tondering.dk/claus/calendar.html http://www.quadibloc.com/science/calint.htm
12:02:21 <Arcorann_> Several times
12:02:37 <wib_jonas> ah good
12:02:50 <wib_jonas> there was a third one somewhere but I forgot
12:03:30 <Arcorann_> http://myweb.ecu.edu/mccartyr/calendar-reform.html <-- this, perhaps?
12:03:32 <wib_jonas> then of course http://www.madore.org/~david/misc/calendar.html because I can't have a discussion without pointint out that David Madore already wrote a long writeup about it
12:04:00 <wib_jonas> Arcorann_: no, I don't think I recall that one, thanks for the link
12:04:53 <wib_jonas> Hmm, wasn't there something from David Madore about the hebrew calendar too?
12:05:19 <Arcorann_> http://www.madore.org/~david/misc/calendar.html <-- this?
12:05:34 <Arcorann_> Wait, that page doesn't really cover Hebrew
12:07:44 <wib_jonas> nope, it doesn't look like he wrote anything comprehensive about it, he only mentions it in passing a few times, calling it the Jewish Calendar
12:09:47 <Arcorann_> http://hebrewcalendar.tripod.com <-- feel free to save this then
12:11:20 <wib_jonas> oh nice, thanks
12:14:06 <wib_jonas> in exchange David wrote about the underlying astronomical problems in detail in http://www.madore.org/~david/weblog/d.2012-04-15.2030.rotation-terre.html besides http://www.madore.org/~david/misc/time.html and http://www.madore.org/~david/misc/calendar.html
12:17:50 <Arcorann_> Nice
12:19:29 <Arcorann_> https://individual.utoronto.ca/kalendis/ <-- if you haven't read this definitely worth saving as well
12:20:37 <wib_jonas> thanks, doesn't ring a bell either
12:32:40 <wib_jonas> I'll try to look at all those links later, but now I have some work to do
12:33:24 <Arcorann_> You're welcome
12:35:29 -!- user24_ has joined.
12:35:31 -!- user24 has quit (Ping timeout: 272 seconds).
12:35:50 -!- user24_ has quit (Remote host closed the connection).
12:36:16 -!- user24_ has joined.
12:42:19 -!- user24_ has quit (Quit: Leaving).
12:42:37 -!- MDude has joined.
12:44:26 -!- t20kdc has joined.
12:47:12 -!- hendursa1 has quit (Quit: hendursa1).
12:47:27 -!- hendursaga has joined.
12:56:44 -!- cpressey has quit (Ping timeout: 260 seconds).
13:07:32 -!- cpressey has joined.
13:41:12 -!- wib_jonas57 has joined.
13:41:39 -!- wib_jonas has quit (Disconnected by services).
13:42:38 -!- wib_jonas57 has changed nick to wib_jonas.
13:52:00 -!- t20kdc has quit (Quit: Leaving).
13:57:22 -!- delta23 has quit (Quit: Leaving).
14:05:35 <esowiki> [[Sea]] https://esolangs.org/w/index.php?diff=77896&oldid=77887 * Orby * (+373) Clarifying and updating some simple translations
14:06:23 <esowiki> [[User:Orby]] M https://esolangs.org/w/index.php?diff=77897&oldid=76668 * Orby * (+73) /* Assorted */
14:19:02 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:39:05 -!- arseniiv has quit (Ping timeout: 258 seconds).
14:48:12 -!- orby has joined.
14:48:16 <orby> Greetings all
14:51:02 <esowiki> [[Sea]] https://esolangs.org/w/index.php?diff=77898&oldid=77896 * Orby * (+170) /* Commands */
14:51:46 -!- adu has joined.
15:02:56 <cpressey> Hi orby
15:03:40 <orby> Hello :)
15:05:51 <ski> hm, i was recently pondering slightly on the formula fo Gregorian leap years
15:07:02 <wib_jonas> ski: some of those links that we mentioned above has the formula. or do you want a software implementation? there are open source implementations I can point to.
15:07:56 <ski> well, i was just thinking about checking whether a year is a leap year
15:08:15 <ski> it's not a complicated check, but was slightly interesting, from a logical point of view
15:09:42 <wib_jonas> but then that formula has only really been experimentally tested for not much more than five hundred cases, so with all the fickle political decisions (as exemplified by the timezone database) at best it's a current plan and best prediction
15:10:49 <wib_jonas> it has a period of 400 years, and has been tested for less than 500 years, so it's hard to take it all that seriously
15:11:33 <wib_jonas> at least it's much more stable then the fucking holidays and timezones
15:11:51 <ski> GregorianLeapYear(y) ⇔ 4 ∣ y ∧ ¬ (100 ∣ y ∧ 400 ∤ y)
15:12:47 <ski> ⇔ 4 ∣ y ∧ (100 ∤ y ∨ 400 ∣ y)
15:13:21 <ski> ⇔ (4 ∣ y ∧ 100 ∤ y) ∨ 400 ∣ y
15:13:48 <ski> ⇔ ¬ (4 ∤ y ∨ 100 ∣ y) ∨ 400 ∣ y
15:15:08 -!- Sgeo has joined.
15:15:38 <ski> ⇔ (4 ∣ y → 100 ∣ y) → 400 ∣ y
15:16:45 <ski> if we express ⌜A ∧ ¬ B⌝ ("⌜A⌝, but not ⌜B⌝","⌜A⌝, except if ⌜B⌝") as ⌜A ⤚ B⌝, then we can also say
15:17:02 <ski> ⇔ 4 ∣ y ⤚ (100 ∣ y ⤚ 400 ∣ y)
15:17:09 <ski> (so, it's an exception with an exception)
15:22:24 -!- arseniiv has joined.
15:27:21 <ski> (hm, there's also something funny going on, with the entailments between the three individual divisibility conditions, here)
15:28:31 -!- wib_jonas has quit (Quit: Connection closed).
15:46:12 -!- adu has quit (Quit: adu).
15:58:56 -!- sprocklem has joined.
16:02:03 -!- cpressey has quit (Quit: WeeChat 1.9.1).
16:03:41 <esowiki> [[Sea]] https://esolangs.org/w/index.php?diff=77899&oldid=77898 * Orby * (-1033) Fixing mistakes
16:27:00 <Cale> ski: you could also uncurry that
16:27:32 <Cale> er, wait
16:48:32 -!- LKoen has joined.
16:55:10 <ski> uncurry what ?
17:05:19 -!- FreeFull has joined.
17:07:02 -!- hendursaga has quit (Remote host closed the connection).
17:07:59 -!- hendursaga has joined.
17:12:54 <b_jonas> `? mustard watch
17:12:58 <b_jonas> `? mapole
17:12:58 <HackEso> A mustard watch is just a classical watch extended with a certain amount of mustard in the mechanism.
17:12:59 <HackEso> A mapole is a thwackamacallit built from maple according to Canadian standards. The army version includes a spork, a corkscrew and a moose whistle. A regulatory mapole measures 6’ by 12 kg, ±0.5 inHg.
17:18:03 -!- evade has joined.
17:22:53 -!- evade has quit (Client Quit).
17:25:37 <user3456> `? thwackamacallit
17:25:38 <HackEso> A thwackamacallit is like a whatchamacallit, but more painful. See mapole.
17:26:01 <user3456> `? whatchamacallit
17:26:04 <HackEso> A whatchamacallit is like a thwackamacallit, but less painful.
17:41:03 -!- 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.”).
17:50:15 <esowiki> [[Sea]] https://esolangs.org/w/index.php?diff=77900&oldid=77899 * Orby * (+333)
17:56:37 -!- rain1 has quit (Remote host closed the connection).
17:58:59 -!- rain1 has joined.
18:47:57 -!- adu has joined.
18:55:21 -!- orby has quit (Remote host closed the connection).
18:58:13 -!- arseniiv has quit (Ping timeout: 258 seconds).
19:06:03 -!- imode has joined.
19:42:48 -!- adu has quit (Quit: adu).
20:23:08 <user3456> hi
20:50:04 <zzo38> Do you like solar hijri calendar?
20:53:51 -!- adu has joined.
21:09:38 -!- deltaepsilon23 has joined.
21:09:48 -!- deltaepsilon23 has changed nick to delta23.
21:23:18 -!- hendursa1 has joined.
21:24:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
21:50:29 <zzo38> ski: A simple C code is (!((y%100?:y/100)&3)) or (!((y%100?y:y/100)&3)) to calculate if it is a leap year.
21:51:53 <ski> yea (calculating it wasn't the issue)
22:01:53 <zzo38> Yes, although maybe it is related to the logic
22:28:16 -!- adu has quit (Quit: adu).
22:36:45 <ski> `<condition> ? : <alternate>' is equivalent to `<condition> ? <condition> : <alternate>' (modulo side-effects in `<condition>') ?
22:36:46 <HackEso> ​<condition>? No such file or directory
22:38:28 <zzo38> Yes, that is how it works in GNU C (some features of GNU C are also implemented in clang, I think)
23:09:33 <ski> ok. i recall seeing it somewhere, but didn't look into the exact semantics
23:09:44 <ski> i guess it's like `or' in Scheme, then
23:10:30 -!- aaaaaa has joined.
23:11:31 <fizzie> Or the Perl ||.
23:37:18 <zzo38> Yes, and || in JavaScript also acts like that
23:41:43 -!- FreeFull has quit.
23:44:09 -!- flower_corpse has joined.
23:47:09 -!- flower_corpse has left.
23:47:47 -!- flower_corpse has joined.
23:48:24 <flower_corpse> hello
23:53:34 <aaaaaa> flower_corpse: hello
23:53:58 <flower_corpse> i like your name
23:55:53 -!- flower_corpse has left ("WeeChat 2.7.1").
23:57:38 -!- adu has joined.
23:58:49 <aaaaaa> flower_corpse: I admire yours
2020-10-10
00:02:02 -!- Arcorann_ has joined.
01:34:38 -!- delta23 has quit (Quit: Leaving).
01:58:51 -!- deltaepsilon23 has joined.
02:21:57 -!- deltaepsilon23 has changed nick to delta23.
03:48:43 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:02:56 -!- aaaaaa has quit (Ping timeout: 258 seconds).
05:25:43 -!- delta23 has quit (Quit: Leaving).
05:35:18 -!- adu has quit (Quit: adu).
06:29:24 -!- spruit11 has quit (Quit: Lost terminal).
06:36:16 -!- spruit11 has joined.
07:33:01 -!- sprocklem has quit (Ping timeout: 246 seconds).
08:08:21 -!- hendursaga has joined.
08:10:43 -!- hendursa1 has quit (Ping timeout: 240 seconds).
09:15:25 <esowiki> [[Special:Log/newusers]] create * Dingolover6969 * New user account
09:19:00 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77901&oldid=77879 * Dingolover6969 * (+216) /* Introductions */
09:34:29 -!- imode has quit (Ping timeout: 260 seconds).
09:41:30 <esowiki> [[HQ9+]] https://esolangs.org/w/index.php?diff=77902&oldid=75936 * Dingolover6969 * (+151) /* See also */ add HQ9+- and HQ9F+
09:41:32 -!- Sgeo has quit (Read error: Connection reset by peer).
09:45:07 -!- MDude has joined.
09:54:50 <esowiki> [[HQ9+-]] N https://esolangs.org/w/index.php?oldid=77903 * Dingolover6969 * (+666) create page. Note that i restated the specification (except for the quote) so hopefully it is public domain now.
10:56:11 <esowiki> [[HQ9F+]] https://esolangs.org/w/index.php?diff=77904&oldid=76073 * Dingolover6969 * (+13) Harmonize name of links section with rest of wiki ("External resources")
10:59:18 <esowiki> [[FHQ9+-]] N https://esolangs.org/w/index.php?oldid=77905 * Dingolover6969 * (+399) Created page with "An extension of [[HQ9+-]] that adds the F operator to print [[FizzBuzz]] up to 100 by wyattscarpenter. - preceded by an F deferences a null [[pointer]]. == See also == * HQ..."
11:01:00 <esowiki> [[HQ9F+]] https://esolangs.org/w/index.php?diff=77906&oldid=77904 * Dingolover6969 * (+40) Add a see also section to the page.
11:04:07 <esowiki> [[HQ9+-]] https://esolangs.org/w/index.php?diff=77907&oldid=77903 * Dingolover6969 * (-12) Expand see also section
11:06:09 <esowiki> [[HQ9++]] https://esolangs.org/w/index.php?diff=77908&oldid=30189 * Dingolover6969 * (+16) Expand see also section
11:06:47 <esowiki> [[FHQ9+-]] https://esolangs.org/w/index.php?diff=77909&oldid=77905 * Dingolover6969 * (+115) Add categories
11:07:18 <esowiki> [[HQ9+-]] https://esolangs.org/w/index.php?diff=77910&oldid=77907 * Dingolover6969 * (+115) Add categories
11:07:42 <esowiki> [[HQ9+]] https://esolangs.org/w/index.php?diff=77911&oldid=77902 * Dingolover6969 * (+73) /* See also */ add FHQ9+-
11:09:06 <esowiki> [[HQ9+]] M https://esolangs.org/w/index.php?diff=77912&oldid=77911 * Dingolover6969 * (+1) /* See also */ typo in previous edit
11:31:08 -!- t20kdc has joined.
12:45:38 -!- arseniiv has joined.
12:53:28 -!- diverger has quit (Ping timeout: 258 seconds).
13:00:07 <esowiki> [[33]] N https://esolangs.org/w/index.php?oldid=77913 * SunnyMoon * (+8131) Created page with "'''33''' is the name of a simple and original [[esolang]] invented by [https://github.com/TheOnlyMrCat TheOnlyMrCat]. The language has exactly ''33'' alphabetical single-chara..."
13:05:06 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77914&oldid=77913 * SunnyMoon * (+19) I accidentally saved. :P
13:05:33 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77915&oldid=77914 * SunnyMoon * (+1) Uh oh!
13:07:13 <esowiki> [[33]] https://esolangs.org/w/index.php?diff=77916&oldid=77915 * SunnyMoon * (+17) Does this work?
13:09:32 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77917&oldid=77916 * SunnyMoon * (+7) Nothing interesting...
13:12:04 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77918&oldid=77917 * SunnyMoon * (+82) Linking works!
13:13:14 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77919&oldid=77918 * SunnyMoon * (-12) No it does not!
13:13:57 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77920&oldid=77919 * SunnyMoon * (-6) Whoops!
13:19:59 <b_jonas> I told you not to take the axiom of choice, fungot
13:19:59 <fungot> b_jonas: a country that works for the very, very fnord. by march, and that
13:21:00 <esowiki> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=77921&oldid=76716 * SunnyMoon * (+7) If I did something bad, please revert my edits!
13:23:47 <esowiki> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=77922&oldid=77921 * SunnyMoon * (+20) Hmm...
13:28:59 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77923&oldid=77920 * SunnyMoon * (+14) dictionaries?
13:31:28 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77924&oldid=77923 * SunnyMoon * (-4) Grammar fix!
13:32:09 -!- hendursaga has quit (Quit: hendursaga).
13:32:34 -!- hendursaga has joined.
13:32:56 <esowiki> [[33]] M https://esolangs.org/w/index.php?diff=77925&oldid=77924 * SunnyMoon * (-1) Man, I am bad at grammar stuff.
13:34:32 <esowiki> [[!@$%^&*()+]] M https://esolangs.org/w/index.php?diff=77926&oldid=77843 * SunnyMoon * (+2) AAAH!
13:39:02 <esowiki> [[User:SunnyMoon]] M https://esolangs.org/w/index.php?diff=77927&oldid=77886 * SunnyMoon * (+199) I thought I wrote this earlier
13:39:44 <esowiki> [[User:SunnyMoon]] M https://esolangs.org/w/index.php?diff=77928&oldid=77927 * SunnyMoon * (+13) That was unintentional.
14:10:56 <arseniiv> b_jonas: fungot gave AC to me to add to a hoard of its various equivalent formulations
14:10:56 <fungot> arseniiv: the government have cut the uk credit union legislation and decisions on the future of the country and the people of our country, to the strategy, and to do that.
14:11:12 <arseniiv> ^europarl
14:11:24 <arseniiv> ^style europarl
14:11:24 <fungot> Selected style: europarl (European Parliament speeches during approx. 1996-2006)
14:11:34 <arseniiv> fungot do you feel that still?
14:11:35 <fungot> arseniiv: mr president, there is a simple case of adding together two units. the commission has not provided any clarity, we are left with a report from the commission than is the case now. all the factors needed to become rich and yet today it is necessary to point out that there has never been properly enlightened and has even had a disorientating effect. public funding for research which is of course, is not to correct the r
14:11:58 <arseniiv> there is a simple case of adding together two units => as I said, an AC hoard
14:26:11 -!- Arcorann_ has quit (Read error: Connection reset by peer).
15:08:34 <fizzie> fungot: What was that about public funding for research?
15:08:35 <fungot> fizzie: mr president, i feel that, in case of prolonged standstill of pigs in holdings kept under movement restrictions due to an oversight on my part. i call on the member states but also in many of our citizens is a specifically chechen crime. this plan specifically refers to the med programme which had emphasized the serious irregularities committed by the airline companies, has created the right conditions to enable the com
15:09:12 <fizzie> Better watch those pigs better.
16:55:21 -!- rain1 has quit (Quit: Leaving).
17:04:00 <esowiki> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=77929&oldid=77922 * PythonshellDebugwindow * (+1) Fix a typo (add `s`)
17:39:00 -!- deltaepsilon23 has joined.
17:41:45 -!- deltaepsilon23 has changed nick to delta23.
17:54:04 -!- adu has joined.
18:37:03 -!- imode has joined.
18:37:07 <fizzie> Weird. Bought two regular onions, both looked normal (yellow-brown) on the outside, but inside the other one looks just like a red onion.
18:50:54 -!- sprocklem has joined.
18:53:50 -!- Sgeo has joined.
19:11:19 -!- rain1 has joined.
19:11:42 -!- adu has quit (Quit: adu).
19:17:10 -!- osminee has joined.
19:17:20 <osminee> hello there
19:17:43 -!- osminee has quit (Remote host closed the connection).
20:21:33 -!- delta23 has quit (Quit: Leaving).
21:21:13 -!- arseniiv has quit (Ping timeout: 264 seconds).
22:55:12 -!- t20kdc has quit (Remote host closed the connection).
23:09:17 -!- joast has quit (Ping timeout: 260 seconds).
23:13:06 <esowiki> [[Turing machine]] https://esolangs.org/w/index.php?diff=77930&oldid=72479 * OsmineYT * (+1)
23:31:40 -!- Arcorann_ has joined.
2020-10-11
00:06:01 <zzo38> Now I made up a set of macros in TeX to make a table that can span multiple pages, repeating the table heading on each page and adding a note "(Continued on next page)" at the bottom of the page if the table continues. Maybe you fid it useful too; I don't know
00:23:07 -!- sprocklem has quit (Ping timeout: 246 seconds).
01:37:46 -!- sprocklem has joined.
03:30:40 <imode> what would a "homoiconic brainfuck" look like?
03:32:57 <imode> I guess it'd just be one that's self-modifying.. but that's kinda weird.
04:18:50 -!- Lykaina has joined.
04:19:01 <Lykaina> hi
04:19:22 <Lykaina> testing a new client
04:19:49 <Lykaina> can someone respond?
04:20:00 <imode> hi.
04:20:27 <Lykaina> thanks
04:21:34 <imode> any time.
04:21:41 <imode> happy to lend some bytes.
04:21:47 <shikhin> don't take my bytes.
04:22:24 <Lykaina> is Sgeo here?
04:23:22 <imode> seems like they're in the channel, yeah.
04:24:25 <Lykaina> they were my best friend in college
04:24:54 <Lykaina> introduced me to here
04:29:23 <Sgeo> Hi Lykaina
04:30:06 <Lykaina> hi Sgeo
04:47:26 -!- ocharles has quit (Ping timeout: 240 seconds).
04:49:11 -!- ^[_ has quit (Ping timeout: 240 seconds).
04:49:29 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:49:29 -!- ocharles has joined.
04:49:37 -!- dog_star_ has joined.
04:49:44 -!- user3456_ has joined.
04:50:36 -!- ^[_ has joined.
04:54:54 -!- user3456 has quit (Ping timeout: 240 seconds).
04:54:54 -!- dog_star has quit (Ping timeout: 240 seconds).
04:54:55 -!- dog_star_ has changed nick to dog_star.
05:09:12 -!- sprocklem has quit (Quit: Lost terminal).
05:10:01 -!- sprocklem has joined.
05:29:06 -!- aaaaaa has joined.
07:21:54 -!- imode has quit (Ping timeout: 272 seconds).
07:39:19 -!- sprocklem has quit (Ping timeout: 260 seconds).
08:07:25 -!- Sgeo has quit (Read error: Connection reset by peer).
08:08:35 -!- hendursa1 has joined.
08:10:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:29:00 -!- clog has quit (Ping timeout: 256 seconds).
10:24:43 -!- clog has joined.
10:28:34 -!- FreeFull has joined.
10:57:05 -!- FreeFull has quit (Ping timeout: 240 seconds).
11:01:48 -!- FreeFull has joined.
12:26:20 -!- t20kdc has joined.
12:48:11 -!- arseniiv has joined.
13:16:40 -!- hendursa1 has quit (Quit: hendursa1).
13:16:58 -!- hendursaga has joined.
13:35:02 -!- Lykaina has quit (Quit: -a- IRC for Android 2.1.20).
14:00:12 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:20:04 -!- arseniiv has quit (Ping timeout: 260 seconds).
14:38:52 -!- Soni has quit (*.net *.split).
14:39:10 -!- Soni has joined.
14:40:56 -!- tswett[m] has quit (Ping timeout: 240 seconds).
14:50:02 -!- tswett[m] has joined.
14:51:32 <esowiki> [[2DFuck]] M https://esolangs.org/w/index.php?diff=77931&oldid=77842 * SunnyMoon * (+71) I found TheWastl's PPCG account on their answer to my question! :D
14:57:03 -!- arseniiv has joined.
14:58:29 -!- MDude has joined.
15:04:05 -!- aaaaaa has quit (Ping timeout: 240 seconds).
15:22:23 -!- user24 has joined.
15:52:35 -!- aaaaaa has joined.
16:10:30 <esowiki> [[EWagon]] M https://esolangs.org/w/index.php?diff=77932&oldid=77852 * Orangeyy * (-6)
16:26:34 -!- aaaaaa has quit (Ping timeout: 272 seconds).
16:28:37 -!- sftp has quit (Quit: leaving).
16:46:42 -!- sftp has joined.
16:47:04 <zzo38> Why aren't interwoven alignment preambles allowed?
16:49:59 <int-e> (guess the context!)
16:59:04 -!- FreeFull has quit (Read error: Connection reset by peer).
17:01:28 -!- FreeFull has joined.
17:03:26 <b_jonas> zzo38: I don't know what that means but it sounds like a TeX thing. if it's vanilla TeX or Plain TeX, then probably the TeXbook or TeX: The Program tells you why.
17:16:46 -!- FreeFull has quit (Quit: rebooting).
17:20:35 -!- user24 has quit (Remote host closed the connection).
17:33:56 -!- FreeFull has joined.
17:40:15 -!- LKoen has joined.
18:19:56 -!- imode has joined.
18:24:37 -!- sprocklem has joined.
18:30:39 -!- deltaepsilon23 has joined.
18:31:04 -!- Sgeo has joined.
18:36:22 <esowiki> [[33]] https://esolangs.org/w/index.php?diff=77933&oldid=77925 * SunnyMoon * (+526) Some example programs
18:41:12 <esowiki> [[33]] https://esolangs.org/w/index.php?diff=77934&oldid=77933 * SunnyMoon * (+288) cat + resources
18:41:18 -!- deltaepsilon23 has changed nick to delta23.
18:42:56 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=77935&oldid=77872 * SunnyMoon * (+9) 33 joins!
18:44:58 <esowiki> [[Hello world program in esoteric languages]] https://esolangs.org/w/index.php?diff=77936&oldid=77839 * SunnyMoon * (+30) 33 joins!
18:45:56 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=77937&oldid=77838 * SunnyMoon * (+22) 33 joins!
18:46:25 <esowiki> [[Hello world program in esoteric languages]] M https://esolangs.org/w/index.php?diff=77938&oldid=77936 * SunnyMoon * (+1) Oop
20:58:36 -!- 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.”).
21:04:47 -!- delta23 has quit (Quit: Leaving).
21:35:02 <shachaf> Is CDCL "just" SMT where your theory is compatibility with your clause database?
21:51:13 -!- Arcorann_ has joined.
21:52:06 -!- Arcorann_ has quit (Remote host closed the connection).
21:52:33 -!- Arcorann_ has joined.
21:52:38 <esowiki> [[User:HDWithZeroes]] https://esolangs.org/w/index.php?diff=77939&oldid=77631 * HDWithZeroes * (+270)
21:53:07 <esowiki> [[User:HDWithZeroes]] https://esolangs.org/w/index.php?diff=77940&oldid=77939 * HDWithZeroes * (+7)
21:53:08 <esowiki> [[3x]] M https://esolangs.org/w/index.php?diff=77941&oldid=77612 * Tetrapyronia * (-1) Spelling fix
22:06:36 -!- deltaepsilon23 has joined.
22:06:59 -!- deltaepsilon23 has left.
22:07:19 -!- joast has joined.
22:09:04 -!- arseniiv has quit (Ping timeout: 260 seconds).
22:16:13 <imode> string rewrite rules aren't that composable.
22:18:57 -!- tromp has quit (Remote host closed the connection).
22:19:15 -!- tromp has joined.
22:25:20 -!- deltaepsilon23 has joined.
22:25:20 <imode> and systems like underload, FALSE and other concatenative languages with quotations have the problem of needing to deal with variable-sized quotations.
22:25:37 -!- deltaepsilon23 has changed nick to delta23.
23:33:12 -!- FreeFull has quit (Quit: Night night).
23:57:12 -!- sprocklem has quit (Ping timeout: 256 seconds).
23:57:28 -!- sprocklem has joined.
2020-10-12
00:20:28 -!- t20kdc has quit (Read error: Connection reset by peer).
01:16:05 <esowiki> [[Special:Log/newusers]] create * RioluTheFurry447 * New user account
01:19:37 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=77942&oldid=77901 * RioluTheFurry447 * (+216) /* Introductions */
01:31:21 -!- aaaaaa has joined.
01:41:28 -!- aaaaaa has quit (Ping timeout: 258 seconds).
01:42:08 -!- aaaaaa has joined.
01:47:38 -!- aaaaaa has quit (Ping timeout: 256 seconds).
03:00:00 -!- Taneb has quit (Quit: I seem to have stopped.).
03:01:33 -!- Taneb has joined.
03:34:38 <imode> huh. equipage is interesting. but I wonder how far you'd get if you 1. replaced the stack with a resizable tape (and left/right operations) and 2. removed arithmetic.
03:37:23 <imode> basically just using dup, drop, swap, apply, compose, left and right.
03:41:56 <imode> pick kinda enables `if` though... hm.
03:53:56 <imode> neat, I made an if statement without 'pick'.
03:54:29 <imode> or really I guess I just made true/false.
04:11:52 -!- ski has quit (Ping timeout: 260 seconds).
04:25:56 -!- aaaaaa has joined.
04:58:58 <imode> if you make duplicating and dropping on an empty stack, you could reduce underload to to dup, drop, swap, apply and compose/concatenate.
04:59:13 <imode> s/an empty stack/an empty stack a no-op
04:59:33 <imode> you could just replace an empty paren set with dup drop.
05:02:07 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
05:55:13 <imode> woah that's weird.
06:10:06 <imode> equipage's quotations are all flat.
06:11:52 <imode> how do you form nested structures then...?
06:44:02 -!- delta23 has quit (Remote host closed the connection).
07:10:34 -!- Sgeo has quit (Read error: Connection reset by peer).
07:14:16 -!- sprocklem has quit (Ping timeout: 246 seconds).
07:49:45 -!- cpressey has joined.
07:55:15 <imode> cpressey: can equipage be used to make a `fn` that returns an `fn`? because it seems like when you compose things, you can't form nested structures.
08:06:15 <cpressey> imode: No, it can't. (unless I'm misremembering)
08:08:05 <imode> interesting.
08:09:22 -!- hendursa1 has joined.
08:09:29 <imode> so doing nested conditionals isn't possible then.
08:11:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:11:37 <cpressey> There really isn't any "nested" concept in Equipage, no.
08:12:22 <cpressey> But that's true for a lot of e.g. machine code architectures too, isn't it?
08:12:53 <imode> true. curious as to how you'd do two sequential if statements.
08:13:08 <imode> if(foo){if(bar){...}}
08:14:33 <cpressey> I think the overall idea for a conditional was that you get an index and then `pick` a function with that index from the bottom of the stack. If you wanted to do two conditionals, then, the function that you `pick` would also have to `pick` another function itself.
08:15:10 <imode> oh. that's kinda neat.
08:23:32 <cpressey> It's a bit like "trampolined style", I guess, looking back on it, but I don't remember thinking that at the time
08:37:25 -!- imode has quit (Ping timeout: 256 seconds).
10:44:55 -!- sebbu has quit (Quit: reboot).
11:46:59 -!- sebbu has joined.
11:47:33 -!- FreeFull has joined.
11:51:55 -!- sftp has quit (Ping timeout: 240 seconds).
11:59:04 -!- cpressey has quit (Quit: WeeChat 1.9.1).
12:41:52 -!- hendursa1 has quit (Quit: hendursa1).
12:42:08 -!- hendursaga has joined.
13:01:17 -!- cpressey has joined.
13:45:44 -!- sftp has joined.
13:52:03 -!- xelxebar has quit (Ping timeout: 240 seconds).
13:53:09 -!- xelxebar has joined.
13:58:13 -!- arseniiv has joined.
14:17:51 -!- Sgeo has joined.
14:32:03 -!- xelxebar has quit (Ping timeout: 240 seconds).
14:32:49 -!- xelxebar has joined.
14:44:56 -!- ski has joined.
14:56:29 -!- Arcorann_ has quit (Read error: Connection reset by peer).
15:17:55 -!- Sgeo has quit (Read error: Connection reset by peer).
15:20:07 -!- Sgeo has joined.
15:23:20 -!- MDude has joined.
15:27:41 -!- Melvar has quit (Ping timeout: 265 seconds).
15:39:23 -!- LKoen has joined.
15:39:43 -!- LKoen has quit (Read error: Connection reset by peer).
15:39:59 -!- LKoen has joined.
15:41:52 -!- Melvar has joined.
15:59:11 -!- cpressey has quit (Quit: WeeChat 1.9.1).
17:31:07 -!- Spooktober has quit (Quit: Well, would you look at the time. I've almost missed my ambiguous, non-existent appointment that I have scheduled just when I start to lose interest in my current conversation.).
17:39:06 -!- grumboo has joined.
17:44:44 -!- sprocklem has joined.
18:16:54 -!- imode has joined.
19:09:14 -!- user3456_ has changed nick to user3456.
19:16:11 -!- wmww has quit (Quit: killed).
19:16:28 -!- Discordian[m] has quit (Quit: killed).
19:16:31 -!- tswett[m] has quit (Quit: killed).
19:25:53 -!- wmww has joined.
19:42:13 -!- sprocklem has quit (Ping timeout: 246 seconds).
19:48:07 -!- tswett[m] has joined.
19:48:14 -!- iscordian[m] has joined.
20:02:02 -!- iscordian[m] has changed nick to Discordian[m].
20:47:44 -!- 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.”).
21:12:28 <imode> purely concatenative languages intrigue me. if you added the ability to nest to equipage you could do some interesting things.
21:33:21 <ski> "nest to equipage" ?
21:36:47 <imode> replacing the compose operator with something like concatenate.
21:37:05 <imode> so you can have functions that contain other functions, but have to be applied.
21:37:36 <esowiki> [[Baz]] https://esolangs.org/w/index.php?diff=77943&oldid=57879 * RioluTheFurry447 * (+89) /* Quine */
21:44:36 <ski> not sure what replacing an operator would have to do with it
21:44:53 <ski> are you thinking of something like quotations, like in Factor ?
21:45:25 <imode> yes, in which quotations can contain other quotations. you can't build nested structures in equipage.
21:45:39 <imode> well, you _can_, but you can't do it via the compose operator.
21:50:25 <ski> hm, "equipage" is a language, then ? (mayhaps, your language)
21:52:17 <imode> not my language. cpressey's.
21:54:51 <esowiki> [[Furcode]] https://esolangs.org/w/index.php?diff=77944&oldid=73442 * RioluTheFurry447 * (+70)
22:07:41 <esowiki> [[Categowy: Joke wanguages]] N https://esolangs.org/w/index.php?oldid=77945 * RioluTheFurry447 * (+44) Redirected page to [[Category:Themed joke languages]]
22:07:56 <esowiki> [[Categowy: Joke wanguages]] https://esolangs.org/w/index.php?diff=77946&oldid=77945 * RioluTheFurry447 * (-7) Changed redirect target from [[Category:Themed joke languages]] to [[Category:Joke languages]]
22:11:53 <ski> ok
22:14:40 <esowiki> [[Computerdeutsch]] M https://esolangs.org/w/index.php?diff=77947&oldid=77856 * Orangeyy * (-126)
22:23:41 <esowiki> [[SHUSH, KAREN.]] N https://esolangs.org/w/index.php?oldid=77948 * RioluTheFurry447 * (+1259) Created page with "SHUSH, KAREN. == SHUSH, KAREN. == === SHUSH, KAREN. === ==== SHUSH, KAREN. ==== ===== SHUSH, KAREN. ===== SHUSH, KAREN. SHUSH, KAREN. ===== SHUSH, KAREN. ===== SHUSH,..."
22:27:38 <esowiki> [[Csub]] https://esolangs.org/w/index.php?diff=77949&oldid=59776 * RioluTheFurry447 * (+491)
22:29:41 <esowiki> [[ThisIsNotARealLanguage]] M https://esolangs.org/w/index.php?diff=77950&oldid=75238 * RioluTheFurry447 * (+0) fixed typo
22:30:01 <esowiki> [[ThisIsNotARealLanguage]] https://esolangs.org/w/index.php?diff=77951&oldid=77950 * RioluTheFurry447 * (+14) Added content
22:36:36 <esowiki> [[User talk:RioluTheFurry447]] N https://esolangs.org/w/index.php?oldid=77952 * RioluTheFurry447 * (+39) Redirected page to [[User:RioluTheFurry447/owo]]
22:37:14 <esowiki> [[User:RioluTheFurry447/uwu]] N https://esolangs.org/w/index.php?oldid=77953 * RioluTheFurry447 * (+42) Created page with "{{Special:Contributions/RioluTheFurry447}}"
22:37:59 <esowiki> [[User:RioluTheFurry447/fursuit]] N https://esolangs.org/w/index.php?oldid=77954 * RioluTheFurry447 * (+49) Created page with "{{Special:DeletedContributions/RioluTheFurry447}}"
22:57:01 <int-e> sigh
22:58:19 <imode> the hell is going on here.
22:58:36 <imode> oh joy, wiki defacement.
23:00:12 <int-e> yeah I don't think there's a single contribution in those edits
23:01:23 <fizzie> The Baz one from earlier is kind of sort of reasonable.
23:01:50 <int-e> Right.
23:01:53 <fizzie> Then it went off the rails.
23:02:26 -!- Arcorann_ has joined.
23:02:36 <int-e> And I guess https://esolangs.org/w/index.php?title=ThisIsNotARealLanguage&curid=2759&diff=77951&oldid=75238 in isolation would not raise too many eyebrows either.
23:02:46 <int-e> All the others are just awful
23:03:04 <user3456> Yea
23:03:23 <user3456> Any wiki mods here?
23:04:05 <int-e> fizzie has the power but doesn't like wielding the tools
23:05:28 <fizzie> I could try to do a temporary (24h?) edit block + reverts + message on a talk page.
23:05:58 <user3456> Yea
23:06:02 <fizzie> (I'm having trouble understanding the point of those last three.)
23:06:12 <user3456> (There is no point)
23:06:14 <int-e> the last three tie with the introduction
23:06:51 <int-e> kind of.
23:07:07 <fizzie> Oh, I see.
23:07:41 <int-e> Hmm "tie in" I guess.
23:08:00 <int-e> english is too difficult :P
23:08:54 <user3456> Kinda want to add a wiki page for User:RioluTheFurry447 with the text "Not much is known about this user, but from what can be seen from the esowiki irc bot this person is nothing more than a furry themed spambot. "
23:09:12 <esowiki> [[Special:Log/block]] block * Fizzie * blocked [[User:RioluTheFurry447]] with an expiration time of 1 day (account creation disabled): Inserting nonsense/gibberish into pages: Temporary (24h) block for breaking things as part of making a joke of some sort.
23:09:44 <fizzie> "Inserting nonsense/gibberish into pages" is one of MediaWiki's default block justifications, though you could argue a lot of our actual content also counts as "nonsense/gibberish".
23:09:57 <imode> structured nonsense/gibberish.
23:10:00 <user3456> yes
23:10:23 <esowiki> [[Furcode]] M https://esolangs.org/w/index.php?diff=77955&oldid=77944 * Fizzie * (-70) Reverted edits by [[Special:Contributions/RioluTheFurry447|RioluTheFurry447]] ([[User talk:RioluTheFurry447|talk]]) to last revision by [[User:PythonshellDebugwindow|PythonshellDebugwindow]]
23:10:54 <int-e> Maybe https://en.wikifur.com/wiki/OwO ... I guess UwU works as a smiley as well
23:11:34 <user3456> I don't see the point of the "SHUSH, KAREN." page
23:11:40 <imode> yeah that's just spam.
23:11:44 <int-e> Oh it's even mentioned on that page.
23:11:46 <fizzie> Actually, I think there's some sort of mass-rollback thing I could've used as well. But there isn't really that much, and I think that still spams every edit as an individual one on the channel, so I think I'll do it the slow way.
23:12:02 <int-e> user3456: Karen-bashing is a modern trend.
23:12:40 <esowiki> [[Csub]] M https://esolangs.org/w/index.php?diff=77956&oldid=77949 * Fizzie * (-491) Reverted edits by [[Special:Contributions/RioluTheFurry447|RioluTheFurry447]] ([[User talk:RioluTheFurry447|talk]]) to last revision by [[User:A|A]]
23:12:41 <int-e> But the esowiki isn't the place for it.
23:14:58 <fizzie> Let's see if I can figure out the right process for the newly created pages.
23:15:32 <shachaf> @metar koak
23:15:32 <lambdabot> KOAK 122253Z 30009KT 10SM SCT200 29/11 A3002 RMK AO2 SLP167 T02890111
23:15:36 <user3456> is there even a way for normal users to delete pages?
23:16:15 <user3456> wait making it blank would have basically the same effect
23:16:21 <int-e> As far as I know, no. You can blank them and hope for one of the admins to delete them.
23:16:27 <user3456> I see
23:17:06 <esowiki> [[Special:Log/delete]] delete * Fizzie * deleted "[[SHUSH, KAREN.]]": Mass deletion of pages added by [[Special:Contributions/RioluTheFurry447|RioluTheFurry447]]
23:17:06 <esowiki> [[Special:Log/delete]] delete * Fizzie * deleted "[[Categowy: Joke wanguages]]": Mass deletion of pages added by [[Special:Contributions/RioluTheFurry447|RioluTheFurry447]]
23:17:39 <shachaf> int-e: Did you see the thing I asked about CDCL as a theory? I'm still wondering whether it makes sense.
23:17:55 <shachaf> In this formulation your "core solver" wouldn't even know about the clause database.
23:18:09 <int-e> no, I didn't
23:18:12 <Arcorann_> Usually there's a delete template that people can put on pages to be deleted
23:18:47 <shachaf> I'm wondering how different this is from a regular SMT theory.
23:19:21 <fizzie> Hmm, I'm not sure whether I should do the talk page comment on the "actual" talk page, or the thing it now redirects to, because I guess if a user wants to mildly rearrange their user page, that's fine; it's just that there's a lot of MediaWiki infrastructure that treats "User talk:Username" kind of special.
23:20:01 <int-e> Arcorann_: most of us are mediawiki amateurs
23:20:06 <user3456> If it may mess with/break the infrastructure its probably better to roll it back
23:20:22 <fizzie> (They also didn't actually create the "owo" subpage the talk page redirects to. So maybe I'll just use the real talk page for now.)
23:21:42 <int-e> tbf, the user talk page isn't created automatically either
23:21:52 <int-e> But meh.
23:22:44 <Arcorann_> https://tetris.wiki/Template:Delete <-- here's an example of a delete template, just use it as a basis for creating one here
23:23:18 <user3456> alright
23:25:07 <esowiki> [[Template:Mbox]] N https://esolangs.org/w/index.php?oldid=77957 * Pipythonmc * (+1166) Basically copy directly from https://tetris.wiki/edit/Template:Mbox
23:25:31 <esowiki> [[Template:Ambox]] N https://esolangs.org/w/index.php?oldid=77958 * Pipythonmc * (+814) Basically copy from https://tetris.wiki/edit/Template:Ambox
23:27:02 <esowiki> [[Special:Log/upload]] upload * Pipythonmc * uploaded "[[File:Ambox delete.png]]": For the Template:Delete page
23:27:31 <esowiki> [[Template:Delete]] N https://esolangs.org/w/index.php?oldid=77960 * Pipythonmc * (+476) Create template page. Icon and layout copied from https://tetris.wiki/edit/Template:Delete
23:27:46 <user3456> Delete template should be set up
23:30:46 <int-e> Uhm, https://tetris.wiki/File:Ambox_delete.png has a CC 3.0 BY license, we can't simply take it for the CC0 esowiki.
23:31:16 <Arcorann_> Well, you don't have to take it. Like I said, a basis
23:33:57 <esowiki> [[User talk:RioluTheFurry447]] https://esolangs.org/w/index.php?diff=77961&oldid=77952 * Fizzie * (+898) Note on recent edits.
23:38:36 <fizzie> Hmm. I think I can remove a revision of a file so that it's no longer visible. But maybe it'd be nice to replace it with a CC0 delete icon, I'm sure one can't be *that* hard to find.
23:39:31 <user3456> Yea, I'm trying to find one right now
23:39:56 -!- aaaaaa has quit (Quit: leaving).
23:40:06 <fizzie> In that case I'll leave it to you, and just deal with the file revision once it's done. :)
23:44:35 <fizzie> Here's one from Wikimedia Commons; maybe not *exactly* the right kind of delete, but could work and is CC0: https://commons.wikimedia.org/wiki/File:Delete_icon.png
23:45:13 <esowiki> [[Special:Log/upload]] overwrite * Pipythonmc * uploaded a new version of "[[File:Ambox delete.png]]": Upload temp file since the original is not under CC0
23:46:03 <int-e> fizzie: Hmm that's actually kind of cute in the esolang context
23:47:00 <int-e> (we often thrive on taking things slightly out of context)
23:49:33 <user3456> The Wikimedia Commons one seems pretty good
23:52:28 -!- FreeFull has quit.
23:53:46 <esowiki> [[Special:Log/upload]] overwrite * Pipythonmc * uploaded a new version of "[[File:Ambox delete.png]]": CC0 Image, will probably be permanent unless a better one is found
23:54:34 <esowiki> [[Special:Log/upload]] upload * Pipythonmc * uploaded "[[File:Missingno.png]]": Alternative Delete Icon
23:55:28 <esowiki> [[Template:AltDelete]] N https://esolangs.org/w/index.php?oldid=77965 * Pipythonmc * (+476) Alternative delete template with different icon
23:55:36 <user3456> I hope this doesn't count as spam
23:55:42 <Arcorann_> Wait, why do you need two?
23:56:48 <user3456> ¯\_(ツ)_/¯
23:58:19 <Arcorann_> I mean, I guess it doesn't matter that much as long as it still has the message and puts the page into the "delete this" category, but you could just use a parameter
23:59:53 <user3456> I don't really know how the MediaWiki system works but I guess I can read the docs
2020-10-13
00:17:04 <user3456> I tried reading the docs and couldn't get it to work :/
00:18:05 <Arcorann_> https://www.mediawiki.org/wiki/Help:Templates <-- this?
00:19:29 <Arcorann_> https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions <-- forgot, read this as well
00:19:33 <user3456> oh
00:20:36 <Arcorann_> I was thinking of the #if function, forgot that it was a parser function
00:20:41 <Arcorann_> Well, it's not that important
00:21:13 -!- arseniiv has quit (Ping timeout: 264 seconds).
00:33:25 <user3456> I give up
00:34:04 <user3456> btw fizzie you can delete the non CC0 image of the trash can
00:38:28 <zzo38> I think that if you have a good justification to believe it, "Not much is known about this user, but from what can be seen from the esowiki irc bot this person is nothing more than a furry themed spambot" may be OK; if it is wrong, they can change it by themself, I think.
00:40:38 <int-e> @metar lowi
00:40:38 <lambdabot> LOWI 130020Z AUTO 18002KT 9999 FEW007 SCT010 BKN030 05/04 Q1016
00:46:41 <zzo38> But, yes, delete the non CC0 image of a trash can. If the image is used somewhere significantly, add a public domain one if you have one, I suppose
00:48:47 <esowiki> [[Special:Log/delete]] delete * Fizzie * deleted "[[File:Ambox delete.png]]": Deleted old revision 20201012234513!Ambox_delete.png: Accidental upload of a non-CC0 image
03:53:30 <shachaf> Why does x86 have both "xchg r/m64, r64" and "xchg r64, r/m64" encodings?
03:54:17 <shachaf> Oh, wait, it doesn't.
03:54:48 <shachaf> Or rather they're both listed but they have the same encoding.
04:03:46 -!- sprocklem has joined.
04:31:29 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
05:50:41 -!- adu has joined.
06:12:12 <esowiki> [[Husk]] https://esolangs.org/w/index.php?diff=77966&oldid=69990 * Razetime * (+683)
07:38:21 -!- Sgeo has quit (Read error: Connection reset by peer).
07:46:26 <esowiki> [[HTPL]] N https://esolangs.org/w/index.php?oldid=77967 * ThisIsTheFoxe * (+2727) Proposal for a Hypertext Programming Language (HTPL)
07:48:10 <esowiki> [[HTPL]] M https://esolangs.org/w/index.php?diff=77968&oldid=77967 * ThisIsTheFoxe * (+15)
07:48:13 -!- adu has quit (Quit: adu).
07:48:24 <esowiki> [[HTPL]] https://esolangs.org/w/index.php?diff=77969&oldid=77968 * ThisIsTheFoxe * (-15) /* WIP */
07:52:03 <esowiki> [[HTPL]] M https://esolangs.org/w/index.php?diff=77970&oldid=77969 * ThisIsTheFoxe * (+135) added history
08:08:48 <esowiki> [[HTPF]] N https://esolangs.org/w/index.php?oldid=77971 * ThisIsTheFoxe * (+1708) Proposal for another Brainfuck equivalent
08:09:21 -!- hendursa1 has joined.
08:09:24 <esowiki> [[HTPL]] M https://esolangs.org/w/index.php?diff=77972&oldid=77970 * ThisIsTheFoxe * (+26)
08:11:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:28:51 <esowiki> [[User talk:Hppavilion1]] https://esolangs.org/w/index.php?diff=77973&oldid=72237 * ThisIsTheFoxe * (+389) /* HTPL, thoughts? */ new section
08:31:38 <esowiki> [[User talk:ThisIsTheFoxe]] N https://esolangs.org/w/index.php?oldid=77974 * ThisIsTheFoxe * (+216) /* Hi ^-^ */ new section
08:32:55 <esowiki> [[User talk:ThisIsTheFoxe]] M https://esolangs.org/w/index.php?diff=77975&oldid=77974 * ThisIsTheFoxe * (+33) /* Hi ^-^ added email */
08:36:24 -!- sprocklem has quit (Ping timeout: 260 seconds).
08:39:49 -!- S_Gautam has joined.
08:43:05 -!- cpressey has joined.
08:44:58 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77976&oldid=77822 * Aspwil * (+10844) /* Positive Int Multiplication */
08:45:47 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77977&oldid=77976 * Aspwil * (+25) /* Brainfuck Interpreter */
08:50:04 -!- imode has quit (Ping timeout: 246 seconds).
09:16:36 -!- dingwat has quit (Quit: Connection closed for inactivity).
09:32:56 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=77978&oldid=77977 * Aspwil * (+773) /* Brainfuck Interpreter (No Nested Loop Support) */
11:02:17 -!- xelxebar has quit (Remote host closed the connection).
11:02:50 -!- xelxebar has joined.
11:50:39 -!- cpressey has quit (Quit: wvw /o/ /o/ /o/).
12:14:40 -!- hendursa1 has quit (Quit: hendursa1).
12:14:56 -!- hendursaga has joined.
12:17:48 -!- t20kdc has joined.
12:20:01 -!- arseniiv has joined.
12:39:17 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
13:51:56 -!- Sgeo has joined.
13:55:31 <esowiki> [[Special:Log/newusers]] create * RedstoneDave * New user account
13:55:34 -!- cpressey has joined.
14:15:48 -!- MDude has joined.
14:20:01 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:40:18 <cpressey> I'm extremely confused.
14:42:27 <Taneb> You're in the right channel for that
15:08:14 <cpressey> It's not the being confused that's so unpleasant, it's the feeling stupid because of it.
15:17:34 -!- cpressey has quit (Quit: WeeChat 1.9.1).
15:18:20 <rain1> I know that feeling
15:41:41 -!- FreeFull has joined.
15:47:41 -!- LKoen has joined.
15:47:49 -!- LKoen has quit (Read error: Connection reset by peer).
15:48:10 -!- LKoen has joined.
16:10:15 -!- aaaaaa has joined.
16:23:00 -!- Sgeo has quit (Read error: Connection reset by peer).
16:24:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
16:27:55 -!- hendursaga has joined.
16:28:22 <spruit11> Be smart, stay dumb.
16:40:43 -!- Sgeo has joined.
16:46:55 -!- imode has joined.
17:16:27 -!- S_Gautam has joined.
17:27:21 -!- diverger has joined.
17:42:30 <esowiki> [[Talk:Stax]] https://esolangs.org/w/index.php?diff=77979&oldid=76780 * Cameron * (+297) /* Programs I've made with it */ Updated multiplying code, I was so dumb when I made the first one.
18:47:45 -!- clog has quit (Ping timeout: 240 seconds).
18:53:54 <arseniiv> hey do you know what precise relation is between the Fibonacci-base numbering and the golden ratio base?
18:54:57 <arseniiv> they seem to be related and at first I thought they are two different kinds of Ostrowsky numeration for the same number (φ) but the golden base doesn’t seem to be
18:55:51 <arseniiv> I’d be very glad for a treatise on mixed non-integer base numerations
18:59:37 <arseniiv> golden is not(?) a generic non-integer base due to the rule “prefer 100 to 011 and so on” and I can for example come up with a similar silver base system (for χ := √2 − 1) where the rule is “prefer 100 to 021”, and it’s also related to the “Pell base” analogous to Fibonacci base and being a kind of Ostrowsky system again, unlike(?) that silver system
19:01:29 <arseniiv> I want to make sense of the full generality, what can I do and what mixed non-integer bases are able to make unique representations of numbers by adding such linear rules, and how they connect to continued fractions (golden and silver seem to connect)
19:03:25 <arseniiv> ah, not only unique representation but also monotonicity: in silver base, 1 → 10 → 11 → 20 → 100 → 101 → 110 → 111 → 120 → 200 → 201 → 1000 → … is an ascending sequence
19:04:06 <arseniiv> if one picks 021 over 100 and so on, that sequence would not be monotone
19:04:42 <arseniiv> it should be a part of some theory but I’m yet to stumble where to read on it
19:06:17 <arseniiv> btw that the last digit in the sequence doesn’t go up to 2 is analogous to Ostrowsky systems too. There it’s allowed to take one less value than for all other digit positions
19:07:58 <arseniiv> (though that’s not the case for the golden system?.. but both Fibonacci and Pell comply)
19:08:23 <arseniiv> thank you if you know something about all this
19:13:06 <arseniiv> btw you can read about that two Ostrowsky things in Andrew Mansfield Rockett, Peter Szüsz “Continued fractions”, in II.4
19:13:46 <arseniiv> en.wiki article misfused me a lot
19:18:18 <arseniiv> I thought about all that in application to timbre design: harmonics at what ratios to the fundamental can a timbre have to have useful properties, e. g. being sufficiently like “harmonic timbre” ℕ. For example we want for our timbre to not clash with itself when multiplied by φ like harmonic one would, and we want something less boring and spacey than {1, φ, φ², …}
19:19:48 <arseniiv> then I took a golden system and it adviced me to add 1 and φ − 1 consecutively to fill the blanks
19:25:15 <arseniiv> (though now I think it would be better to use 1 and φ and consider an interval between 1 and φ irrelevant). In the same vein one may use a “snake” of adding 2(√2 − 1) and 2 − √2 to √2 to make a timbre which endures multiplication by √2 and is again “not sparse”
19:25:26 <arseniiv> )
19:25:49 <arseniiv> ow I didn’t need to close that
19:33:17 -!- sprocklem has joined.
19:34:01 <b_jonas> two things I hate about clothing and shoes and suchlike is (1) the shops where I buy them suck, and they're in shopping malls that are even worse; (2) the models get replaced too quickly, but they have unpredictable quality and lifetime, so by the time any product is proven to be long-lasting and good, it's too late to buy another copy
19:44:16 <arseniiv> b_jonas: agree
19:45:26 <b_jonas> oh crap
19:45:47 <b_jonas> and one of the jeans that I bought is wrong
19:45:59 <arseniiv> :(
19:46:12 <b_jonas> I might try to return this one since it's unused
19:46:23 <b_jonas> and this store has a return policy
19:48:10 <b_jonas> no darn it
19:48:12 <b_jonas> I just labelled it
19:48:19 <b_jonas> I probably can't return
19:48:24 <arseniiv> dislabelled?
19:48:35 <b_jonas> no, labeled
19:48:55 <b_jonas> as in, I decided I'll at least try to figure out which jeans last longer
19:49:06 <b_jonas> but for that I have to mark them when I bought them so I can identify them
19:49:16 <arseniiv> aah
19:49:42 <b_jonas> so I wrote on its sewn-in washing label in pen, because that's semi-permanent, as in survives a few washing cycles before it fades enough that I have to rewrite it
19:49:52 <b_jonas> and then I noticed that this one has no belt loops
19:50:30 <b_jonas> for more elegant trousers I do check that, because they sometimes come with belt loops for narrow belts only, and I don't wear narrow belts
19:50:47 <arseniiv> don’t worry maybe they’ll accept it back anyway?
19:51:07 <arseniiv> night
19:51:08 <b_jonas> but this is a cheap C&A jeans, and I'm tired, so I didn't think it would have that problem
19:51:12 <b_jonas> dunno, I'll figure that out later
19:51:22 <b_jonas> it
19:51:27 <b_jonas> 's too late for that nonsense today
19:55:25 -!- arseniiv has quit (Ping timeout: 246 seconds).
19:58:02 <esowiki> [[!@$%^&*()+/Algorithms]] https://esolangs.org/w/index.php?diff=77980&oldid=77894 * SunnyMoon * (+113) Parity
20:06:02 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
21:23:31 -!- deltaepsilon23 has joined.
21:23:38 -!- deltaepsilon23 has changed nick to delta23.
21:26:12 -!- fungot has quit (Ping timeout: 256 seconds).
21:30:36 -!- 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.”).
21:51:50 -!- fungot has joined.
22:08:13 -!- clog has joined.
22:49:54 -!- aaaaaa has quit (Quit: leaving).
22:55:16 -!- wesleyac has joined.
23:02:03 <fizzie> Can't make heads or tails out of this IPv6 issue. It works on the ISP's supplied router. I've snooped on all outgoing traffic from it (by putting a bridge in-between), and there isn't really much that's different, other than of course the MAC addresses.
23:05:22 <zzo38> I think some routers have MAC address cloning, in case the problem is the MAC addresses
23:08:53 -!- t20kdc has quit (Quit: Leaving).
23:09:32 <b_jonas> fizzie: and you have checked if that router has settings that reveal something?
23:09:39 <b_jonas> as in, settings that you as the end user can configure?
23:11:54 <b_jonas> also isn't some of that traffic encrypted so you can't snoop it with a passive bridg?E?
23:13:22 <esowiki> [[Turing machine]] M https://esolangs.org/w/index.php?diff=77981&oldid=77930 * PythonshellDebugwindow * (-1) Undo revision 77930 by [[Special:Contributions/OsmineYT|OsmineYT]] ([[User talk:OsmineYT|talk]]) (correct grammar)
23:19:31 <b_jonas> I apparently do get ipv6 connectivity from home, with an address that the computer autoconfigs with the ISP's local modem-router
23:24:08 <b_jonas> which, by the way, doesn't get NATed, so I guess that means you can directly connect to some of the listening services on my computer, without having to access the local wifi
23:24:49 -!- RTFM[ChOkO] has quit (Ping timeout: 260 seconds).
23:25:27 -!- RTFM[ChOkO] has joined.
23:26:08 <b_jonas> ssh in particular
23:27:51 <fizzie> Depends on what "that traffic" means, plain IPv6 neighbor discovery and DHCPv6 isn't encrypted in any way.
23:29:07 <b_jonas> fizzie: that isn't, sure, but I wonder if the router has to do authenticate that you're the specific user that pays for the internet service, of if the distant router knows that automatically from which cable the data is coming from
23:29:23 -!- Luciole has quit (Quit: Goodbye).
23:29:49 -!- FireFly has joined.
23:30:23 <fizzie> As far as I know, it should Just Work, and it always has so far. The ISP's (official) attitude towards third-party routers is that they'll provide only very limited support, but they're not going to intentionally break them.
23:30:57 <b_jonas> right. so I just keep their modem+router, even if I may put my own router behind them
23:31:40 <fizzie> I think there's probably something particularly fundamentally wrong, because I don't even get a response for the ICMPv6 neighbor discovery on the link-local addresses, even though the messages are pretty much identical.
23:32:13 <b_jonas> in this case, I don't (yet) have a router behind it, and most of the time I only have one computer behind it so far, the one desktop computer, with occasional guest devices connected through wifi, but in my parent's house there was a system of like a router or two and four switches including two wifi or somesuch
23:33:34 <fizzie> (Also managed to catch the ISP's router doing a firmware update immediately when I plugged it in, which I guess I should've expected.)
23:34:13 -!- Arcorann_ has joined.
23:34:15 <b_jonas> cables pulled to two additional rooms through the attic, plus to a neighbor, and the modem and most of the devices were in the room that my parents used them, where my father often had like six desktop computers connected for reasons of his work. I don't know how it changed these days, but of course there are much more smartphones.
23:47:37 -!- FreeFull has quit.
23:58:01 <b_jonas> I should probably get one of these dynamic dns services so that I can host silly stuff on my home desktop towards the internet. presumably one that does both ipv4 and ipv6, since the isp gives me connectivity through both.
2020-10-14
00:37:22 <zzo38> I host stuff on my home computer too, but I don't have version 6 internet.
00:50:47 <b_jonas> "version 6 internet" sounds weird, even if I know that the unixy socket interface calls the required address family AF_INET6
02:53:05 -!- arseniiv has joined.
02:53:30 <arseniiv> hi again world
02:57:22 -!- adu has joined.
03:12:13 <imode> hi arseniiv.
03:12:57 <arseniiv> imode: morning! (from my perspective at least)
03:13:44 <arseniiv> btw at any rate, do you know something about golden base type numerations?
03:16:15 <imode> I do not!
03:16:24 <imode> am interested in what that means though.
03:19:02 <arseniiv> ah, I was rambling about that a small amount the other day at https://esolangs.org/logs/2020-10-13.html#lnb
03:19:02 <arseniiv> I’m in a sense desperate, though I uncovered another bit between dreams. Maybe these *are* just plain non-integer base systems, but as one has identities such as φ² = φ + 1, or χ² = 2χ + 1, or (√2)² = 2, it makes an obvious way to constrain digit strings precisely in such a way to make the numeration ascending
03:19:12 <arseniiv> but I still think there’s more to it
03:21:30 <arseniiv> for example I can’t explain that easily that the restriction to have the last digit ≠ 1 (so, exactly zero) for base φ or ≠ 2 for base χ corresponds to the analogous restriction for base Fibonacci or base Pell
03:22:36 <arseniiv> oh wait, there’s no such restriction for base φ but there is for base χ
03:22:48 <arseniiv> that makes things more confusing
03:23:29 <arseniiv> (I defined χ := √2 + 1 for convenience)
03:24:36 <arseniiv> (the next one would be ψ: ψ² = 3ψ + 1, and maybe I should investigate it and find out that things are even more confusing)
03:31:16 -!- b_jonas has quit (Remote host closed the connection).
03:34:45 -!- sprocklem has quit (Ping timeout: 240 seconds).
03:35:02 -!- sprocklem has joined.
03:59:17 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:52:50 <esowiki> [[Special:Log/delete]] delete * Ais523 * deleted "[[Template:Delete]]": Copyright violation: content was: "{{Ambox | namespace = main | text = '''This page is a candidate for deletion.''' | style = border: 1px solid #c23446; border-...", and the only contributor was "[[Special:Contributions/Pipythonmc|Pipythonmc]]" ([[User talk:Pipythonmc|talk]])
04:54:10 <esowiki> [[Special:Log/delete]] delete * Ais523 * deleted "[[Template:Ambox]]": Copyright violation: the only contributor was "[[Special:Contributions/Pipythonmc|Pipythonmc]]" ([[User talk:Pipythonmc|talk]])
04:54:38 <esowiki> [[Special:Log/delete]] delete * Ais523 * deleted "[[Template:AltDelete]]": Copyright violation: the only contributor was "[[Special:Contributions/Pipythonmc|Pipythonmc]]" ([[User talk:Pipythonmc|talk]])
06:16:12 <imode> https://repl.it/repls/ShorttermHumbleCommunication and now to try to bootstrap church numerals in this thing.
06:45:13 -!- sprocklem has quit (Ping timeout: 260 seconds).
07:00:37 -!- adu has quit (Quit: adu).
07:02:09 -!- imode1 has joined.
07:02:52 -!- imode has quit (Ping timeout: 272 seconds).
07:06:41 -!- imode has joined.
07:06:49 -!- imode1 has quit (Ping timeout: 260 seconds).
07:09:36 -!- cpressey has joined.
07:19:57 -!- cpressey has quit (Quit: WeeChat 1.9.1).
07:23:08 -!- Sgeo has quit (Read error: Connection reset by peer).
07:32:18 <imode> church numerals seem easy. just a bunch of compositions over and over again. could have a `number` macro that preserves the two quotations you worked with for later.
07:33:31 -!- delta23 has quit (Remote host closed the connection).
07:57:18 -!- cpressey has joined.
08:07:42 -!- hendursaga has quit (Remote host closed the connection).
08:08:28 -!- hendursaga has joined.
08:12:51 -!- hendursa1 has joined.
08:16:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:25:05 -!- LKoen has joined.
08:35:06 -!- rain1 has quit (Quit: Leaving).
09:03:21 <esowiki> [[Stax]] https://esolangs.org/w/index.php?diff=77982&oldid=76776 * JonoCode9374 * (+104)
09:03:30 -!- rain1 has joined.
09:30:02 <cpressey> https://en.wikipedia.org/wiki/Richardson%27s_theorem
09:31:08 <cpressey> Laczkovich's simplified version looks particularly nice
09:31:22 <Taneb> Yesterday I was messing around in Haskell, and implemented regular expressions with "data Regex c a = Regex (Maybe a) (c -> Regex c a)"
09:31:44 <Taneb> I noticed it's possible to implement a Choice instance (from the profunctors library) for this type
09:33:00 <Taneb> I don't know what use this instance would have, however
09:33:47 <Taneb> Here is my code: https://gist.github.com/Taneb/804c57c4563645d933d215470cf3f911
09:38:03 <cpressey> The profunctor docs tell me Choice is "the generalization of Costar of Functor that is strong with respect to Either." I think I'll sit this one out.
09:41:23 <Taneb> cpressey: if I have a regular expression on alphabet c, I can turn it into one on Either c d, which accepts any Right value and otherwise matches what we started with if we ignore the Rights
09:45:26 <cpressey> Taneb: I don't think I follow you. What did we start with?
09:45:53 <Taneb> A regular expression on alphabet c
09:47:10 <cpressey> This is the "what we started with" in the phrase "otherwise matches what we started with"?
09:47:20 <Taneb> Yeah
09:47:48 <Taneb> So left' a*b accepts [Right x, Left a, Left a, Right y, Left b]
09:47:59 <Taneb> Because if we ignore the Rights, we hae aab which a*b accepts
09:50:29 <Taneb> Does this help?
09:51:52 <Taneb> cpressey: also feel free to look at/comment on the rest of the file, too
09:53:23 <cpressey> Is this much or any different from https://hackage.haskell.org/package/base-4.14.0.0/docs/Data-Either.html#v:lefts ?
09:54:32 <Taneb> ...somewhat
10:38:36 -!- cpressey has quit (Quit: WeeChat 1.9.1).
10:49:24 -!- imode has quit (Ping timeout: 256 seconds).
11:09:38 -!- FreeFull has joined.
11:37:45 -!- t20kdc has joined.
12:42:27 -!- hendursa1 has quit (Quit: hendursa1).
12:42:43 -!- hendursaga has joined.
13:53:39 -!- Sgeo has joined.
14:51:11 -!- aaaaaa has joined.
14:57:46 -!- MDude has joined.
15:26:02 -!- b_jonas has joined.
16:56:11 -!- Robdgreat has left.
16:56:24 -!- Arcorann_ has quit (Read error: Connection reset by peer).
17:02:28 -!- imode has joined.
17:29:44 <arseniiv> suppose we have a function `unconst :: (a → b) → Maybe b` which returns `Just x` precisely on functions extensionally equal to `const x`. How many miracles could we make? I suppose we could solve halting problem?
17:31:00 <arseniiv> for this kind of function to be reasonable, it need constraints like (Bounded a, Eq b) or something less strong than Bounded but which means “b is finite and recursively enumerable”
18:58:55 -!- dingwat has joined.
18:59:30 -!- 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.”).
19:02:34 -!- arseniiv has quit (Ping timeout: 260 seconds).
19:28:19 -!- sprocklem has joined.
20:33:43 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
20:42:51 -!- deltaepsilon23 has joined.
20:43:00 -!- deltaepsilon23 has changed nick to delta23.
20:58:23 -!- delta23 has quit (Quit: Leaving).
21:51:54 -!- FreeFull has quit (Read error: Connection reset by peer).
22:11:35 -!- j4cbo has quit (Ping timeout: 272 seconds).
22:12:40 -!- relrod has quit (Excess Flood).
22:12:47 -!- relrod has joined.
22:12:50 -!- relrod has quit (Changing host).
22:12:50 -!- relrod has joined.
22:13:51 -!- j4cbo has joined.
22:29:56 -!- FreeFull has joined.
22:56:19 -!- Arcorann_ has joined.
23:01:09 -!- Arcorann_ has quit (Ping timeout: 260 seconds).
23:02:18 -!- aaaaaa has quit (Quit: leaving).
23:22:53 -!- Arcorann has joined.
23:36:50 <esowiki> [[Interstack]] M https://esolangs.org/w/index.php?diff=77983&oldid=77671 * PythonshellDebugwindow * (+3) /* Cat program */ Fix cat program to match description
23:54:39 -!- FreeFull has quit.
23:55:50 -!- stux has joined.
2020-10-15
00:02:29 -!- t20kdc has quit (Remote host closed the connection).
00:13:13 -!- deltaepsilon23 has joined.
00:13:23 -!- deltaepsilon23 has changed nick to delta23.
00:59:41 -!- MDude has joined.
00:59:58 -!- stux has left ("Leaving").
01:39:40 <zzo38> I wrote a JavaScript code to read /dev/urandom and use that to make up random numbers, because the built-in one using floating random numbers when you actually want integers, isn't a very good way to do it, I think. The same is true of BASIC.
01:42:56 <shachaf> But the main reason to use JavaScript is to run in web browsers, which don't give you access to /dev/urandom.
01:44:15 <zzo38> Well, JavaScript is one programming language you can use in web pages (the other is WebAssembly), although it is not limited to web browsers. If you are using something that does give you such access (such as Node.js running on Linux), then you can.
01:50:05 <shachaf> You can't write web programs with just WebAssembly, though.
01:50:20 <shachaf> You always need JavaScript.
01:54:16 <zzo38> Well, many web pages should not need any document scripts at all
02:04:18 <Arcorann> 32-bit integers?
02:07:04 <zzo38> Yes, although you might want numbers in a certain range, and if it is not a power of two, then it might take more than one try before you get an acceptable number.
02:07:37 <int-e> If we're enumerating programming languages, GLSL and OpenCL may also work in browsers, depending on available hardware.
02:08:00 <Arcorann> https://github.com/dworthen/prng <-- searching online for javascript PRNGs turns up this
02:09:11 <Arcorann> https://github.com/bryc/code/blob/master/jshash/PRNGs.md <-- also this
02:10:15 <Arcorann> Of course, there's also whether you want cryptographic security or not
02:15:20 -!- delta23 has quit (Quit: Leaving).
02:16:20 -!- dingwat has quit (Quit: Connection closed for inactivity).
02:54:12 -!- vertrex has quit (Ping timeout: 256 seconds).
02:54:25 -!- vertrex has joined.
02:54:25 -!- vertrex has quit (Changing host).
02:54:25 -!- vertrex has joined.
05:13:14 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
05:40:26 <b_jonas> Erich Friedman confirmed that https://erich-friedman.github.io/ is maintained by him, it's not a third-party mirror. good.
06:44:50 -!- sprocklem has quit (Ping timeout: 256 seconds).
06:45:39 -!- Sgeo has quit (Read error: Connection reset by peer).
07:19:23 -!- cpressey has joined.
07:23:59 -!- arseniiv has joined.
07:24:25 <cpressey> Once upon a time there was a language called "Java" that ran in web browsers. There was also something called "Flash"
07:26:29 <imode> is this a horror story.
07:29:36 -!- deltaepsilon23 has joined.
07:30:00 -!- deltaepsilon23 has changed nick to delta23.
07:30:09 <shachaf> The idea of basing your language choice on your target platform is still ridiculous.
07:30:51 <shachaf> Portable high-level languages were invented in the 1950s or thereabouts, so the fact that this idea exists today is just ridiculous.
07:31:07 <cpressey> That's right. You should base your language choice on availability of programmers who will code in it for the lowest possible pay
07:31:49 <shachaf> Java only ever ran badly in web browsers. And neither Java nor Flash did general-purpose things. They just painted onto a special canvas.
07:33:56 <cpressey> I don't think there is such a thing as a general-purpose programming language, but Java can certainly be used in many application areas. Applets are (were) just one of those areas.
08:05:42 <zzo38> I think that different programming languages are suitable for different purposes, although being portable can also be useful. (There is also possibility to target only one VM, but for the VM itself to be portable, which is also useful in some cases. It might also be written for a different system which is then emulated, such as a computer game written for DOS but running on Linux.)
08:05:59 -!- cpressey has quit (Quit: WeeChat 1.9.1).
08:07:10 <zzo38> (Even today some people write computer games for NES/Famicom; they will then work on not only NES/Famicom but also any computer that can emulate it.)
08:08:18 -!- hendursa1 has joined.
08:10:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:21:02 -!- cpressey has joined.
08:27:38 -!- aaaaaa has joined.
08:36:01 <shachaf> cpressey: I mean, general-purpose inside a web browser.
08:36:09 <shachaf> I'm talking about the runtime environment, not the language.
08:46:26 <cpressey> Oh, I see. But if it's ridiculous to choose a language based on the platform it targets in the first place, then why does it even matter if some languages target some platforms poorly?
08:51:50 -!- wib_jonas has joined.
08:54:17 <shachaf> I don't follow.
08:54:55 <shachaf> I was saying I didn't like Java applets (the platform) and Flash (the platform) for this reason. I wasn't commenting on the languages except to the extent they target those platforms.
08:55:55 <shachaf> My platform complaints are about web pages (JavaScript etc.), Android (Java), Apple platforms (Swift/Objective C), and so on.
08:56:35 <cpressey> OK.
08:57:01 <shachaf> I also didn't mean to complain more than a couple of linesworth.
08:57:42 <cpressey> OK.
10:19:08 -!- delta23 has quit (Ping timeout: 258 seconds).
10:26:30 -!- t20kdc has joined.
11:07:12 <cpressey> Trying to figure out what Haskell wants is frustrating and makes me feel shitty.
11:07:31 <cpressey> I should probably give up and leave this sort of thing to the people who have aptitude for it.
11:11:44 <wib_jonas> add more type annotations!
11:12:28 <wib_jonas> it's the only way to counter haskell's zealous global type inference
11:19:36 <cpressey> I don't understand what type annotation it wants
11:29:09 <cpressey> This is like playing one of those text adventures where the puzzles have arbitrary solutions
11:29:42 <cpressey> Giving up. Life is too short to be doing something that makes you feel this shitty.
11:40:17 <shachaf> Oh no.
11:41:18 <cpressey> It's only ~1500 lines, I can easily rewrite it in Python.
11:42:35 <Taneb> cpressey: can you share what you've been struggling with?
11:43:35 <cpressey> Taneb: I'd rather not.
11:43:42 <Taneb> OK
11:45:18 <cpressey> If someone else simply tells me what's wrong with it and how to fix it, will I learn anything from that?
11:45:26 <cpressey> I suspect not.
11:46:08 <wib_jonas> hmm, do we have a "the error is in line 42" meme here?
11:48:44 <Taneb> I might learn something about what's impossible
11:49:34 <cpressey> Or, to put it another way, I'd rather not share it because I don't want to feel even shittier still
11:51:08 <wib_jonas> rewriting the whole thing might work
11:51:16 <cpressey> "Thanks to their television-atrophied attention spans, these casual gamers are mentally incapable of spending six hours trying to randomly guess at the absurd dream logic Roberta Williams has applied to the problem of getting the dungeon key out of the bluebird's nest." -- http://www.oldmanmurray.com/features/77.html
11:51:55 <cpressey> (that article extends over 3 pages, it makes more sense if you read them all)
11:54:14 <cpressey> s/makes more sense/is much funnier/
11:55:46 -!- cpressey has quit (Quit: Time to find a new hobby.).
12:11:43 -!- hendursa1 has quit (Quit: hendursa1).
12:12:02 -!- hendursaga has joined.
13:09:19 -!- cpressey has joined.
13:26:27 <cpressey> Oh, I have an even better idea than rewriting this project in Python. I could just not do it at all!
13:44:56 <esowiki> [[User:SunnyMoon/Expirements]] N https://esolangs.org/w/index.php?oldid=77984 * SunnyMoon * (+47) New page!
13:46:15 <esowiki> [[User:SunnyMoon]] https://esolangs.org/w/index.php?diff=77985&oldid=77928 * SunnyMoon * (+119) Expirements...
13:49:30 <esowiki> [[User:SunnyMoon/Expirements/Output in esolangs]] N https://esolangs.org/w/index.php?oldid=77986 * SunnyMoon * (+217) Output? What is that?
13:52:07 -!- Sgeo has joined.
14:23:17 <cpressey> Pissed off and feeling cheated. I want a solution to this.
14:29:05 <cpressey> The fact is that some people are not good at "thinking in types". I am one of them.
14:30:01 <cpressey> And as long as these people exists, languages whose entire culture is based on "thinking in types" can't promote themselves as being for everyone. It's disingenuous.
14:30:27 <myname> no language is for everyone
14:30:51 <cpressey> If the Haskell community was more elitist, it would be more honest of them.
14:31:13 <myname> what's your problem?
14:32:14 <cpressey> My problem is that while I like the bottom 15% of Haskell a lot, I'm not smart enough to work with the top 85% of Haskell.
14:32:22 <Taneb> I can't think in not-types :(
14:32:31 <wib_jonas> myname: doesn't say exactly because he wants to fix it himself, but it's probably still that monad transformer tower thing from a few days ago
14:32:33 <rain1> i think haskell is too complex, it's like C++
14:32:44 <rain1> the basics are really good like data List a = Nil | Cons a (List a)
14:33:12 <rain1> you don't need to use the complex parts, they're kind of ugly
14:33:22 <myname> oof, i wouldn't compare haskell to c+|
14:33:28 <rain1> GHC then
14:33:28 <myname> ++
14:33:42 <myname> huh? ghc makes no sense here
14:33:45 <cpressey> If you don't use the complex parts you're "not really programming in Haskell".
14:34:06 <cpressey> More to the point, you're alienating yourself from the community and libraries.
14:34:07 <rain1> sure but i'm saying that you don't need to use haskell, just use the good parts tm
14:34:22 <rain1> the community alienated themselves by breaking everything
14:34:24 <rain1> tbh
14:35:13 <rain1> haskell was fine you have functors and monads, then they made everything traversible and the language wasn't as nice
14:36:03 <cpressey> Taneb: Which means you're the sort of person who should use Haskell, and that I am the sort of person that should not.
14:36:24 <Taneb> Perhaps!
14:36:35 <Taneb> But I think people should do what they find enjoyable, most of all
14:37:58 <wib_jonas> rain1: do you mean applicable instead of traversible?
14:38:16 <rain1> no applicative is cool
14:38:48 -!- Arcorann has quit (Read error: Connection reset by peer).
14:42:32 <cpressey> Well, I don't enjoy feeling dumb and shitty.
14:42:57 <rain1> was there a specific thing that made you feel dumb?
14:43:26 <rain1> feel free to post your code
14:43:31 <myname> he won't
14:44:23 <cpressey> This isn't about my code.
14:45:41 <cpressey> I'm sure it's some reasonably straightforward problem with existential types, which I don't understand very well.
14:45:57 <rain1> existential are very very hard to use
14:46:03 <rain1> they never really make sense
14:46:12 <cpressey> I'm sure I could spend X amount of time studying existential types and eventually be able to understand the problem and fix it.
14:46:30 <cpressey> One problem is that X is very large, given that I do not "think in types".
14:46:36 <rain1> it would be better to avoid it if possible, there is one pattern of usage thaht is ok (the ST monad) but other than - try to avoid
14:46:55 <cpressey> Oh, but everyone uses GADTs.
14:47:21 <rain1> is there a specific GADT you want to work with
14:47:40 <cpressey> So, yes, I could luddite to Haskell98 with no LANGUAGE pragmas, which is what I have done until now
14:47:49 <rain1> that's the right thing to do imo
14:48:36 <wib_jonas> just rewrite it into a non-lazy language that doesn't require you to think in types
14:48:46 <wib_jonas> a multiparadigm language that doesn't bind your hands
14:49:34 <wib_jonas> one where you can write code by just writing what the computer has to do, instead of having to prove that compiler that it's correct
14:50:02 <cpressey> This isn't about my code.
14:50:03 -!- MDude has joined.
14:50:35 <cpressey> Besides, you don't have to prove your code is correct in Haskell -- you can happily write a monad that doesn't adhere to the monad laws
14:51:05 <rain1> that's why we have coq
14:53:41 <cpressey> Coq has a lot of appeal, but it's also a lot of work, and I would probably still be expected to "think in types" a lot of the time.
14:54:17 <cpressey> I keep saying this isn't about my code -- if anything it's about something in the Haskell community that is hard to pinpoint.
14:54:36 <rain1> in coq it's a bit more like mathematical logic
14:54:43 <rain1> so it can actually make more sense
14:54:46 <myname> writing what the computer has to do is my least favourite style of programming
14:57:22 <cpressey> Basically what I hate is when people who do think in types look down their nose at people who do not think in types.
14:57:45 <rain1> yea that sucks
14:57:51 <rain1> were people being dicks in #haskell or something?
15:00:13 <arseniiv> free hugs!
15:07:35 <cpressey> rain1: Nothing specific to the #haskell channel
15:12:07 -!- wib_jonas has quit (Quit: Connection closed).
15:31:49 -!- adu has joined.
15:43:22 -!- cpressey has quit (Quit: WeeChat 1.9.1).
16:46:40 -!- LKoen has joined.
16:48:19 -!- FreeFull has joined.
18:45:18 -!- adu has quit (Ping timeout: 256 seconds).
18:51:41 -!- adu has joined.
19:23:26 -!- sprocklem has joined.
20:44:08 -!- Sgeo_ has joined.
20:47:40 -!- Sgeo has quit (Ping timeout: 272 seconds).
20:57:17 -!- adu has quit (Quit: adu).
21:08:45 -!- spruit11 has quit (Ping timeout: 240 seconds).
21:09:45 -!- spruit11 has joined.
21:40:17 -!- 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.”).
22:10:43 -!- aaaaaa has quit (Quit: leaving).
22:57:02 -!- Arcorann has joined.
23:00:08 -!- FreeFull has quit.
23:01:39 -!- dcristofani has joined.
23:16:24 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77987&oldid=77844 * SoicBR * (+399)
23:26:19 -!- t20kdc has quit (Remote host closed the connection).
23:34:06 -!- arseniiv has quit (Quit: gone too far).
23:34:24 <esowiki> [[Muddle]] M https://esolangs.org/w/index.php?diff=77988&oldid=62048 * PythonshellDebugwindow * (+2) Fix wikilink ([Text] -> [[Text]])
2020-10-16
00:29:34 -!- dcristofani has quit (Remote host closed the connection).
01:29:10 -!- sprocklem has quit (Ping timeout: 258 seconds).
02:51:47 -!- adu has joined.
03:55:30 -!- sprocklem has joined.
04:15:49 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:31:31 -!- adu has quit (Quit: adu).
04:32:42 -!- dcristofani has joined.
04:43:28 <int-e> fungot: Which one do you prefer, the Battle of Donkey Island, or the Secret of Monkey Island?
04:43:28 <fungot> int-e: mr president, like others, expect to ensure that the quantity of employment.
04:43:39 <int-e> ^style irc
04:43:39 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
04:43:56 <int-e> fungot: say anything
04:43:56 <fungot> int-e: pikhq, go! go! gone! waah! my head is that logical?
04:44:06 <pikhq> lol
04:48:40 <int-e> Oh, also, https://www.squakenet.com/game/donkey-island/
04:49:15 <int-e> "The game pretty much takes everything that made the Monkey Island games great, such as clever and inventive puzzles and a delightfully bonkers, but equally clever, sense of humour, and removes it so that what you're left with is an incomprehensible mess."
04:49:46 <int-e> What a wholesome endorsement :)
04:50:31 <int-e> Anyway, so much for that pun.
04:51:18 <int-e> (The aforementioned battle is real; it happened in 2007 as part of one of the Iraq wars.)
05:01:02 <shachaf> Wow, that's quite a rip-off.
05:03:01 <shachaf> So I think my idea for CDCL-as-a-theory nearly works but maybe not entirely.
05:03:17 <shachaf> For example, when you learn a clause, you just need a notion of adding it to the clause database, I think?
05:07:10 -!- sprocklem has quit (Ping timeout: 246 seconds).
05:17:27 -!- sprocklem has joined.
07:04:35 -!- dcristofani has quit (Ping timeout: 258 seconds).
07:09:37 -!- dcristofani has joined.
07:12:30 -!- cpressey has joined.
07:13:16 -!- Sgeo_ has quit (Read error: Connection reset by peer).
07:48:03 -!- cpressey has quit (Quit: WeeChat 1.9.1).
08:08:34 -!- hendursa1 has joined.
08:09:43 -!- cpressey has joined.
08:10:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:35:41 -!- deltaepsilon23 has joined.
08:46:26 <cpressey> Hi
08:47:43 <cpressey> As I was trying to say a few days ago, Laczkovich's version of https://en.wikipedia.org/wiki/Richardson%27s_theorem (see "Extensions") looks pretty cute.
08:57:29 -!- deltaepsilon23 has quit (Quit: Leaving).
09:23:01 -!- imode has quit (Ping timeout: 264 seconds).
09:29:12 <shachaf> I still need to understand the whole "first-order theory of the real field is decidable" deal.
09:29:32 <Taneb> Any field whose first order theory isn't decidable must therefore be fake
09:31:22 <shachaf> hi Taneb
09:31:28 <Taneb> Hi shachaf
09:31:37 <shachaf> how's everything in Tanebland
09:31:45 <Taneb> Not so good
09:31:47 <shachaf> see any good cats lately?
09:31:48 <shachaf> oh no
09:31:53 <Taneb> I have not seen any cats lately
09:32:38 <Taneb> And furthermore it looks like I'm going to be unemployed starting mid-next month
09:32:51 <shachaf> oh no
09:33:41 <shachaf> are you in italy?
09:33:50 <Taneb> No :(
09:33:56 <shachaf> triple oh no
09:37:32 -!- sprocklem has quit (Ping timeout: 258 seconds).
09:51:14 -!- spruit11 has quit (Ping timeout: 256 seconds).
09:51:29 -!- spruit11 has joined.
10:12:49 -!- dcristofani has quit (Ping timeout: 260 seconds).
10:16:56 <esowiki> [[A.R.T.I.C.L.E. Lang]] M https://esolangs.org/w/index.php?diff=77989&oldid=77987 * SoicBR * (+5)
10:19:23 -!- aaaaaa has joined.
10:22:45 -!- dcristofani has joined.
10:26:28 <esowiki> [[A.R.T.I.C.L.E. Lang]] https://esolangs.org/w/index.php?diff=77990&oldid=77989 * SoicBR * (+64)
10:29:11 <esowiki> [[A.R.T.I.C.L.E. Lang]] M https://esolangs.org/w/index.php?diff=77991&oldid=77990 * SoicBR * (+22)
10:30:03 <esowiki> [[A.R.T.I.C.L.E. Lang]] M https://esolangs.org/w/index.php?diff=77992&oldid=77991 * SoicBR * (-37)
10:34:25 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=77993&oldid=77935 * SoicBR * (+26) /* A */
11:09:28 -!- t20kdc has joined.
11:10:16 <dcristofani> So I finally ended up writing the tic-tac-toe player in brainfuck that's been on my to-do list forever. http://www.hevanet.com/cristofd/brainfuck/tictactoe.b
11:10:44 <dcristofani> Currently 963 commands long.
11:11:48 <shachaf> Does it play optimally?
11:12:36 <dcristofani> Yeah.
11:13:05 <dcristofani> I mean. in terms of winning. It doesn't care about winning in the shortest number of moves.
11:16:39 <dcristofani> I saved processing time by having it prune branches once it's evaluated a position as a win, rather than looking farther for a shorter win.
11:20:52 <dcristofani> Also, after some feedback from the esolangs Discord, I've made it handle invalid input gracefully.
11:25:25 <shachaf> Oh, sure, I don't think shortest number of moves matters.
11:25:38 <shachaf> Especially since every game of tic-tac-toe is a draw so they all take 9 moves.
11:29:02 <dcristofani> Well, I made this one so it'll grab a win if its opponent slips up.
11:30:10 <shachaf> That reminds me that I should internalize negascot/principal variation search.
11:30:55 -!- cpressey has quit (Quit: Lunch).
11:39:04 <rain1> dcristofani, good
11:39:13 <rain1> Did you know about misere knots and crosses?
11:39:16 <rain1> actuall
11:39:21 <rain1> misere knots?
11:39:24 -!- arseniiv has joined.
11:39:26 <rain1> both players do knots
11:39:30 <rain1> the aim is to lose
11:39:48 <rain1> it can be played on larger boards than 3x3
11:41:00 <arseniiv> btw did you try anticheckers when you can and must eat your own checkers too? In a variety where you may and must eat whole chains of checkers in one move if you’re able
11:41:09 <arseniiv> s/when/where also
11:41:33 <arseniiv> I mean where additionally
11:44:57 <arseniiv> <rain1> the aim is to lose => now upon reading that knots and crosses is a game I actually well know, that seems baffling. Is it to make a draw, or how is it possible to lose then?
11:45:28 <arseniiv> wait or not
11:46:18 -!- wib_jonas has joined.
11:48:21 <wib_jonas> dcristofani: "the tic-tac-toe player in brainfuck that's been on my to-do list forever" => are you kspalaiologos under a different nickname?
11:48:44 <dcristofani> No. Daniel Cristofani.
11:49:07 <wib_jonas> rain1: is that noughts and crosses?
11:50:31 <arseniiv> are you kspalaiologos under a different nickname? => lool
11:51:35 <wib_jonas> arseniiv: I guess I can't accept how popular brainfuck is, and keep thinking only a few people write actual non-helloworld programs in it
11:51:58 <arseniiv> at first I imagined a game when one places some -|- intersecting paths and maybe curvy things like )( rotated 45°, and the aim is to make knot [diagram]s and something
11:52:39 <wib_jonas> dcristofani: does it use the 3x3 magic square encoding of tic-tac-toe at least internally for computations (not necessarily on the interface)?
11:53:43 <arseniiv> wib_jonas: yeah, that was funny is a truthy way, that’s why it was in need to appreciate explicitly :)
11:53:49 <wib_jonas> arseniiv: hmm. I bet searching for "Conway knot game" would find something relevant for that
11:54:11 <dcristofani> You weren't wrong about few people writing in brainfuck. And no, it doesn't. Not that that's a bad idea.
11:56:59 <arseniiv> btw a couple of days ago I realised I can do a Feynmann mug trick almost well enough (I keep checking if the mug is upright enough, and without practice, movements aren’t smooth enough)
11:57:40 <wib_jonas> it seems like there are more brainfuck variants than brainfuck programmers. see https://web.archive.org/web/20190814011410/http://www.bbspot.com/news/2000/4/linux_distros.html
11:57:44 <arseniiv> also I ended up scaring my relatives with it
12:05:27 <arseniiv> if someone uses Jupyter with VS Code, do know it doesn’t support audio playback. I was forced to use the ordinary browser version to hear what I was constructing
12:11:24 <rain1> hi
12:11:31 -!- cpressey has joined.
12:12:08 <rain1> I wrote a brainfuck to C translator in brainfuck
12:12:37 <dcristofani> Me too!
12:13:27 <dcristofani> (A long time ago. http://www.hevanet.com/cristofd/brainfuck/dbf2c.b)
12:14:29 <rain1> nice one!
12:14:42 <rain1> i feel like we did it the same way kinda
12:17:16 <wib_jonas> rain1, dcristofani: link them from https://esolangs.org/wiki/Brainfuck_implementations if appropriate
12:18:37 <wib_jonas> https://esolangs.org/wiki/Brainfuck#Notable_implementations claims that https://esolangs.org/wiki/Brainfuck_implementations is the complete list of brainfuck implementations, so these should be there
12:20:24 <myname> so if i make an implementation and don't publish it, i make the page lie?
12:21:30 <dcristofani> It'd be better to change it so it doesn't make that claim. I don't think any of my seven are on there.
12:21:50 <wib_jonas> myname: no, it's already a lie
12:22:05 <dcristofani> And at least some of them predate the esolangs wiki.
12:22:16 <wib_jonas> seven... yeah, at this point I shouldn't even be surprirsed
12:25:39 <esowiki> [[Brainfuck]] https://esolangs.org/w/index.php?diff=77994&oldid=77929 * DanielCristofani * (-2) /* Notable implementations */
12:53:09 -!- hendursa1 has quit (Remote host closed the connection).
12:53:58 -!- hendursa1 has joined.
13:21:33 -!- Arcorann has quit (Read error: Connection reset by peer).
13:24:19 -!- hendursa1 has quit (Quit: hendursa1).
13:24:57 -!- hendursaga has joined.
13:35:32 -!- dcristofani_ has joined.
13:35:33 -!- dcristofani has quit (Read error: Connection reset by peer).
13:35:42 -!- dcristofani_ has changed nick to dcristofani.
13:47:12 <wib_jonas> I hate these fucking agressive settings. enter the wrong password twice, bang, remote service locks you and your whole country out for a day. great for DOS to those who actually need to access the service.
13:49:27 <arseniiv> agree
13:51:22 <wib_jonas> at least it's symmetric, we have some in our company's mail server, but also at our clients where I have to log in to fix stuff remotely.
13:56:38 <myname> we have the problem that one of our customers seems to be responsible for putting our public ip address on a mailer blacklist. horrible problem to deal with
13:57:03 <esowiki> [[User:SunnyMoon/Expirements/Output in esolangs]] https://esolangs.org/w/index.php?diff=77995&oldid=77986 * SunnyMoon * (+2164) Added all languages I know (now)
13:57:26 <wib_jonas> the office network only has ipv4 and it's an 8 byte wide address range, and most of the workstation computers are turned off on the weekend. I wonder if anyone ever tries to lock out all ip addresses that aren't currently in use, scheduled for sunday night.
13:59:55 <wib_jonas> but it's possible that that lockout rule only triggers for accesses from external internet.
14:06:17 -!- Sgeo has joined.
14:38:55 -!- FreeFull has joined.
14:40:37 -!- MDude has joined.
15:14:54 -!- cpressey has quit (Quit: WeeChat 1.9.1).
15:40:33 -!- cpressey has joined.
15:41:44 <cpressey> Projects tho, amirite
15:41:50 <cpressey> u no i am
16:00:13 -!- wib_jonas has quit (Quit: Connection closed).
16:07:56 -!- dcristofani has quit (Ping timeout: 272 seconds).
16:13:00 -!- LKoen has joined.
16:42:48 -!- 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:46:32 -!- arseniiv has quit (Ping timeout: 256 seconds).
16:47:22 -!- dingwat has joined.
16:53:20 -!- arseniiv has joined.
16:54:01 <cpressey> projects and learnings
16:59:29 -!- cpressey has quit (Quit: WeeChat 1.9.1).
17:31:51 -!- t20kdc has quit (Read error: Connection reset by peer).
17:33:00 -!- t20kdc has joined.
18:14:27 -!- imode has joined.
18:46:09 -!- imode has quit (Ping timeout: 260 seconds).
20:24:03 -!- sprocklem has joined.
20:52:37 -!- adu has joined.
21:28:36 <esowiki> [[PixelCode]] M https://esolangs.org/w/index.php?diff=77996&oldid=71554 * Voltage2007 * (+251)
21:44:04 -!- t20kdc has quit (Remote host closed the connection).
21:52:16 -!- imode has joined.
22:03:59 -!- aaaaaa has quit (Quit: leaving).
22:15:45 -!- adu has quit (Quit: adu).
23:16:01 -!- arseniiv has quit (Ping timeout: 246 seconds).
23:36:59 -!- dingwat has quit (Quit: Connection closed for inactivity).
2020-10-17
00:02:46 -!- dingwat has joined.
00:03:50 -!- Arcorann has joined.
00:15:38 -!- spruit11 has quit (Ping timeout: 260 seconds).
00:17:24 -!- b_jonas has quit (Remote host closed the connection).
00:27:05 -!- FreeFull has quit.
00:31:34 -!- spruit11 has joined.
00:54:52 -!- spruit11 has quit (Ping timeout: 272 seconds).
01:27:31 -!- dcristofani has joined.
01:50:25 -!- dcristofani has quit (Ping timeout: 240 seconds).
01:55:00 -!- dcristofani has joined.
01:56:28 -!- ais523 has joined.
02:05:30 -!- spruit11 has joined.
03:03:50 -!- ais523|telnet has joined.
03:03:57 <ais523> OK, this is ridiculous
03:04:04 <ais523> I can't connect inbound to my server at all
03:04:24 <ais523> so I opened up a serial console (remotely) and telnetted /out/ of it
03:04:29 <ais523> in order to see if the networking worked
03:05:08 <ais523> I'm not sure what sort of issue would cause only outbound connections to work
03:09:52 -!- ais523|telnet has quit (Remote host closed the connection).
03:10:00 <ais523> ooh, that's a good sign
03:10:04 <ais523> was expecting a pingout
03:10:10 <ais523> but the connection did close when I forcibly rebooted it
03:10:15 <ais523> (I lost the connection to the serial console, too)
03:15:09 <ais523> OK, and back up
03:15:22 <ais523> I just needed to find a rebootier sort of reboot :-D
03:34:45 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:12:28 -!- dcristofani has quit (Ping timeout: 272 seconds).
04:34:33 -!- dcristofani has joined.
05:01:28 -!- Sgeo has quit (Read error: Connection reset by peer).
05:03:19 -!- Sgeo has joined.
06:21:26 -!- deltaepsilon23 has joined.
06:21:52 -!- deltaepsilon23 has changed nick to delta23.
07:01:00 -!- ais523|telnet has joined.
07:01:19 <ais523> ugh, it happened again, and now even properly rebooting isn't helping
07:01:32 <ais523> this connection to freenode is over IPv6
07:01:42 <ais523> maybe it's just IPv4 that's broken?
07:01:51 -!- ais523|telnet has quit (Client Quit).
07:02:29 <ais523> yep, just IPv4 it seems
07:12:55 <ais523> so the connection to Freenode worked because it used IPv6, when I forced an IPv4 connection it wouldn't
07:15:56 <shachaf> Well, I hear IPv6 is the future. Maybe you're in the future?
07:18:21 <Taneb> Nah, IPv6 is last-century technology
07:28:47 -!- LKoen has joined.
07:45:28 -!- delta23 has quit (Disconnected by services).
07:51:35 -!- dcristofani has quit (Ping timeout: 260 seconds).
08:06:25 -!- imode has quit (Ping timeout: 240 seconds).
08:11:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:16:03 -!- dcristofani has joined.
08:22:26 -!- ais523|telnet has joined.
08:22:36 <ais523> IPv4 connection, I think
08:25:24 <ais523|telnet> I'm not sure there's any easy way to tell
08:25:27 -!- ais523|telnet has quit (Client Quit).
08:33:05 -!- dcristofani has quit (Ping timeout: 240 seconds).
08:39:57 -!- dcristofani has joined.
08:47:55 -!- dcristofani has quit (Ping timeout: 246 seconds).
09:13:44 -!- sprocklem has quit (Ping timeout: 256 seconds).
10:06:47 -!- Sgeo has quit (Read error: Connection reset by peer).
10:21:31 -!- aaaaaa has joined.
10:27:20 -!- dcristofani has joined.
10:36:18 -!- b_jonas has joined.
11:06:39 -!- dcristofani has quit (Ping timeout: 260 seconds).
11:08:25 -!- t20kdc has joined.
11:33:06 -!- arseniiv has joined.
11:39:40 -!- dcristofani has joined.
11:56:24 <esowiki> [[3var]] https://esolangs.org/w/index.php?diff=77997&oldid=44843 * SunnyMoon * (+48) What are var
12:03:40 <esowiki> [[3var]] https://esolangs.org/w/index.php?diff=77998&oldid=77997 * SunnyMoon * (+23) How? (Also I accidentally saved in the prev edit)
12:08:18 <esowiki> [[3var]] https://esolangs.org/w/index.php?diff=77999&oldid=77998 * SunnyMoon * (+17) Linkify
12:43:45 <esowiki> [[3var]] M https://esolangs.org/w/index.php?diff=78000&oldid=77999 * PythonshellDebugwindow * (+2) /* Hello, World! */ Make link point to non-redirect
13:03:11 -!- hendursaga has joined.
13:33:39 -!- callforjudgement has joined.
13:33:56 -!- callforjudgement has quit (Client Quit).
13:36:44 -!- ais523 has quit (Ping timeout: 265 seconds).
14:26:34 -!- Arcorann has quit (Read error: Connection reset by peer).
15:00:05 -!- dcristofani has quit (Ping timeout: 240 seconds).
15:34:44 <esowiki> [[4]] M https://esolangs.org/w/index.php?diff=78001&oldid=70930 * SunnyMoon * (-10) They say the "User:" prefix is mandatory...
15:55:22 -!- MDude has joined.
16:28:17 -!- adu has joined.
16:35:57 -!- hendursaga has quit (Remote host closed the connection).
16:37:01 -!- hendursaga has joined.
17:04:12 <esowiki> [[4]] M https://esolangs.org/w/index.php?diff=78002&oldid=78001 * SunnyMoon * (+39) It does not have to necessarily a 10 by 10 grid.
17:13:52 -!- adu has quit (Quit: adu).
17:14:42 <esowiki> [[4]] M https://esolangs.org/w/index.php?diff=78003&oldid=78002 * SunnyMoon * (+1) I like the taste of commas
17:18:49 -!- 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.”).
17:20:21 -!- imode has joined.
17:25:36 <esowiki> [[3var]] M https://esolangs.org/w/index.php?diff=78004&oldid=78000 * SunnyMoon * (+34) Esotericness
17:27:30 <esowiki> [[4]] https://esolangs.org/w/index.php?diff=78005&oldid=78003 * SunnyMoon * (-10) Userify
17:33:42 <esowiki> [[4]] https://esolangs.org/w/index.php?diff=78006&oldid=78005 * SunnyMoon * (+0) Heading + Golfed cat program
17:34:02 <esowiki> [[4]] M https://esolangs.org/w/index.php?diff=78007&oldid=78006 * SunnyMoon * (+2) Oop
17:34:52 <esowiki> [[4]] https://esolangs.org/w/index.php?diff=78008&oldid=78007 * SunnyMoon * (-4) Brackets are not needed
17:39:11 <int-e> hmm, fun with socat: socat TCP-LISTEN:4242,reuseaddr EXEC:'"socat TCP:localhost:4243 EXEC:\"\\\"sh -c \\\\\\\"echo from $SOCAT_PEERADDR; exec socat FD:0 FD:1\\\\\\\"\\\"\",fdin=1,nofork",fdout=0,nofork'
17:49:48 <aaaaaa> int-e: what it does?
17:51:13 -!- arseniiv has quit (Ping timeout: 264 seconds).
17:57:58 -!- arseniiv has joined.
17:58:54 <int-e> It forwards a TCP connection with a twist.
18:01:15 <myname> that twist being?
18:12:46 <esowiki> [[4]] https://esolangs.org/w/index.php?diff=78009&oldid=78008 * SunnyMoon * (+147) Truth-machine
18:41:12 -!- Sgeo has joined.
19:08:48 <imode> wondering what the minimal combinator set is for a flat concatenative language, as in you can't form nested quotations of depth > 1.
19:09:05 <imode> you need compose. you'd need apply.
19:10:22 <imode> without a way to simulate a "second stack" by repeatedly quoting everything at the top of it (because you can't form a quotation that pushes quotations without a shim), you need something like `pick` or a whole-stack `rot` in order to be TC.
19:47:22 -!- sprocklem has joined.
19:57:02 -!- FreeFull has joined.
20:07:08 <b_jonas> zzo38: in M:tG, I'm trying to understand the new rules for modal double-faced cards. which rule allows playing a modal double-faced card as a land with its back side up in first place? I don't see it in 711 or 116.2a, and 711.4a plus 711.9 seems to prohibit it.
20:10:35 <zzo38> b_jonas: Yes, that does seem to be the case; maybe the rule writers made a mistake.
20:11:35 <b_jonas> zzo38: nah, there's probably some tricky rule combination hidden in there
20:11:40 <b_jonas> I just can't see it yet
20:12:24 <zzo38> Maybe; I don't see it either
20:12:58 <b_jonas> zzo38: and the release notes does seem to say that you can play as a land
20:14:11 <zzo38> Yes, clearly it is supposed to be allowed, although I don't know what rule allows it.
20:17:03 <b_jonas> I'm trying to figure out how it interacts with effects like that of Shelldock Isle
20:17:09 <esowiki> [[User:OsmineYT]] https://esolangs.org/w/index.php?diff=78010&oldid=77530 * OsmineYT * (+82)
20:17:12 -!- FAKTOR7 has joined.
20:25:51 <esowiki> [[User talk:Orby]] https://esolangs.org/w/index.php?diff=78011&oldid=51611 * OsmineYT * (+171)
20:30:34 <esowiki> [[User talk:PythonshellDebugwindow]] https://esolangs.org/w/index.php?diff=78012&oldid=77860 * OsmineYT * (+121)
20:56:51 <b_jonas> well I asked the MTG Salvation forum. the Wizards forum had a nice place to ask these kinds of rules theory questions, one that even Wizards employees frequented, but they shut that forum down.
21:05:51 <b_jonas> they point me to https://www.mtgsalvation.com/forums/magic-fundamentals/magic-rulings/819228-radha-mdfc which says that the Comprehensive Rules are indeed very buggy
21:06:52 <esowiki> [[User talk:PythonshellDebugwindow]] https://esolangs.org/w/index.php?diff=78013&oldid=78012 * SunnyMoon * (+199) By the way, I do not have discord either if you REALLY want to know...
21:10:44 -!- ais523 has joined.
21:11:32 <ais523> <imode> wondering what the minimal combinator set is for a flat concatenative language, as in you can't form nested quotations of depth > 1 ← you mean, they can't be created even at runtime, rather than simply being inexpressible in the source file?
21:12:16 <ais523> if you can create them at runtime, then you don't need many (I think 2 are enough if one of them is very complex)
21:12:28 <ais523> if you can't, then I think you might run into definitional problems
21:13:13 <ais523> for example, https://esolangs.org/wiki/7 doesn't really have a concept of nested quotations, and is entirely flat in terms of its internal storage
21:13:27 <ais523> but the definition of the 6 command is very complex and basically introduces nested quotations by "cheating"
21:13:57 <ais523> given that it scans a string for substrings with correctly matched "parentheses"
21:14:43 <b_jonas> right, there are many ways to cheat if you don't insist on combinators from ordinary combinator calculus
21:14:55 <imode> yeah, nested quotations aren't allowed at runtime or in the source file.
21:16:05 <b_jonas> like if you have one quotation and a function that compiles and evaluates the quoted program in fortran or basic, perhaps you can get away with it without having quotations inside the fortran or basic program.
21:16:10 <imode> the basis I have now is dup, drop, swap, left, right, compose, apply, and pre-quoted versions of all of those.
21:16:36 <ais523> how do left/right/compose work?
21:16:40 <imode> left and right take the bottom of the stack and put it on top, and take the top of the stack and put it on the bottom.
21:16:49 <ais523> ah, I see
21:16:59 <imode> so x y z ... n left -> n x y z ...
21:17:04 <ais523> I'm not convinced that's a combinator operation (although of course concatenative languages don't need to be based on combinators)
21:17:23 <imode> and x y z ... n right -> y z ... n x
21:17:37 <ais523> and compose is just Underload *, I take it
21:17:51 <imode> compose behaves more like list concatenation if anything.
21:18:04 <ais523> well so does Underload *
21:18:15 <ais523> although, hmm
21:19:21 <imode> you can think of compose as "take two commands, "unquote them", and enquote their concatenation, and push that concatenation."
21:19:40 <imode> so in quotation-speak, it's... [a] [b] compose -> [a b]
21:20:04 <imode> I'm borrowing semantics from equipage.
21:20:56 <imode> and as for the combinatory stuff, yeah, the problem is I think you need _some way_ to access deeper levels within the stack.
21:21:17 <ais523> I assume there's no way for anything that isn't enclosed in exactly one pair of square brackets to get onto the stack
21:21:19 <imode> so you need something that reorders the _whole stack_ to get to any arbitrary element.
21:21:21 <b_jonas> perhaps one of those small one-tape turing machines help
21:21:53 <imode> ais523: if I understand you correctly, yeah. you can't make a quotation that makes quotations, because anything in a quotation gets interpreted directly.
21:22:08 <imode> you can't form [[dup]] for example.
21:22:13 <imode> but you can form [dup].
21:22:23 <ais523> but you can't form dup either, at least not on the stack
21:22:36 <ais523> just [dup] or [dup dup] or whatever
21:22:39 <imode> correct. all things are quoted, then apply unquotes them and adds them to the program.
21:22:53 <imode> I have an interpreter if you wanna play around.
21:24:15 <imode> https://repl.it/repls/UpbeatScalyRoutes#main.py
21:24:45 <imode> the thing is, if you have a "palette" of quoted commands, you can write a quotation that _makes_ another quotation just by virtue of duplicating it, swapping it, etc.
21:25:32 <imode> i.e if you have a stack of [dup], [drop], [swap], [left], [right], [compose], [apply] and a quotation that selectively picked and grabbed these commands, you could form another quotation out of it.
21:25:40 <ais523> slightly offtopic, but "routes" is a terribly choice of word for a word-based URL, no matter how you pronounce it it's confusable with either "routs" or "roots" which are both real words
21:26:04 <imode> it couldn't be nested, but you could form sequences of quotations that "point" to eachother ala left and right.
21:26:54 <imode> the question is can you do something similar without having commands that affect the entire stack.
21:27:10 <ais523> imode: well, the hard part is just to avoid the PDAness of a single stack
21:27:18 <imode> yeah..
21:27:32 <imode> equipage gets around this via having `pick`.
21:28:00 <b_jonas> .oO(and "router" is pronounced differently if it's for woodworking than if it's for computer networks)
21:28:21 <imode> oxcart gets around this by having a tape of stacks. wagon gets around it by having whole-stack effects.
21:28:42 <imode> and languages that allow runtime nesting of quotations can use this to simulate a secondary stack at-will.
21:28:44 <ais523> the thing is, because you can build arbitrary long quotations, the model we're working in is not actually a PDA
21:29:01 <imode> yeah, I don't know _what_ class it is..
21:29:40 -!- t20kdc has quit (Remote host closed the connection).
21:29:44 <ais523> actually… Underload is TC with just ():^! (you don't need ! either but we can handle it easily without quotations)
21:29:46 <imode> you can't exactly "slurp up" portions of the stack and re-order them, because applying the quotation you used to "slurp up" that portion of the stack will be _immediately applied_.
21:29:47 <ais523> that doesn't contain a
21:30:04 <ais523> this means that there must be a finite number of combinators that works, with no full-stack effects
21:30:18 <b_jonas> ais523: yes, but it needs at least two levels of quotations, probably more
21:30:19 <ais523> because a ():^! program can only form a finite number of different stack elements during its lifetime, so you could just make them all combinators
21:30:22 <ais523> individually
21:30:37 <imode> what b_jonas said. you need the ability to double-nest quotations.
21:30:59 <b_jonas> if you allow more complicated combinators as built-ins, then you could encode a small turing-machine with exactly two levels
21:31:00 <ais523> yes, but I mean, say your program contains ((:^):), you just add ((:^):) and (:^) as combinators
21:31:06 <b_jonas> but one level is just terrible
21:31:15 <b_jonas> ais523: wait, is one level enough really? hmm
21:31:28 <b_jonas> oh yeah
21:31:31 <ais523> now there is no nesting, because your combinators are [pushdupapplytwice] and [dupapply]
21:31:57 <b_jonas> ais523 is right, a single level of nesting is enough
21:32:28 <ais523> wait, how is this not just a PDA though? it doesn't have *
21:32:53 <imode> so your combinators are [[dup apply] dup] and [dup apply]?
21:32:58 <ais523> oh, two stacks, one is program, one is stack
21:33:03 <ais523> imode: right
21:33:08 <ais523> in that example
21:33:33 <imode> hm.
21:33:47 <ais523> what I mean is, we can get a universal turing machine, translate it to the ~:!()^ subset of Underload
21:33:59 <ais523> then take every single quotation inside the program, at any nesting level, and make it a combinator of its own
21:34:30 <ais523> then we have a (very complex) combinator set that implements a TC concatenative language without quoting, full-tape effects, or cheating
21:35:07 <imode> how isn't that cheating, though? you still have two layers of nesting, you just represent them as a single command.
21:35:35 <imode> moreover how are you getting rid of garbage?
21:35:46 <ais523> actually this is basically just https://esolangs.org/wiki/The_Subtyping_Machine
21:35:50 <b_jonas> imode: you use the ! combinator to get rid of garbage
21:36:02 <ais523> in the subset without !, garbage is removed by executing it in a context where all the commands end up cancelling each other out
21:36:29 <imode> so your combinator set is apply, dup, [dup apply], [[dup apply] dup]?
21:36:42 <imode> or is it just those three.
21:37:05 <ais523> imode: well, that was just a random example
21:37:17 <b_jonas> ais523: actually if you allow any built-in combinators, then it's even simpler than the Underload construction, because you don't need to use : at all, instead just have combinators that push parenthesized list of combinators such that if you tried to expand them to underload you'd get cyclically listed and so infinite source code
21:37:46 <imode> I still consider this cheating because you're able to build larger nested structures, only they're in the form of a single command.
21:37:58 <b_jonas> you only need ~! to pick an element from a parenthisized list of combinators,
21:38:43 <b_jonas> either pick the element from a list indexed by states when the head is moving to the left, or from a list indenex by symbols when the head is moving to the right
21:39:08 <b_jonas> using ^ !!...! ~!~!...~! to keep just one element from a list
21:39:18 <ais523> I guess there are degenerate cases that work, e.g. you have an imperative stack based language that isn't concatenative, and make it concatenative by having a command that looks at the top stack element as a program and lower stack elements as the stack it operates on, then pushes itself back onto the program
21:39:21 <b_jonas> and then do nothing to execute that one combinator
21:39:59 <ais523> b_jonas: this is basically just the universal construction for minimalizing any number of combinators down to two
21:40:13 <ais523> if your combinators are 1, 2, 3, 4, 5, etc.
21:40:30 <ais523> then you minimalize them to (~)(1)(2)(3)(4)(5)(!!!!!!!) and ^
21:40:49 <imode> yeah, "select any set of combinators, re-order them, compose, done"
21:41:59 <ais523> (the number of ! is one more than the the number of preceding quotations, so if you do the monster combinator followed by ^ twice, you get a ! effect; the monster combinator + ! obviously gives you (~) and thus ~, and with the monster combinator, ~ and !, you can get any of 1, 2, 3, 4, 5)
21:42:22 <b_jonas> ais523: hmm. that's not how I was thinking of it, but maybe
21:42:42 <ais523> of course, this has a lot of intermediate combinators
21:42:57 <imode> quite a few. I think the point is simplifying from the data side, not the program side.
21:43:12 <imode> like, I can form all lists with the `quote` and `compose` operator.
21:43:16 <ais523> if you think about SK combinator calculus, there are basically five combinator families involved: K, K1, S, S1, S2 (K1, S1, S2 are parameterized by the argument that was curried into them)
21:43:39 <ais523> but you can't use `quote` in a language like this
21:43:49 <b_jonas> ais523: yeah
21:44:54 <imode> I'm back to thinking you need arbitrary stack effects.
21:45:15 <b_jonas> I should think about it this way, with a system of unparametrized stack-based combinators. That view is relevant for Consumer Society and its brother language, but I always thought of it as just the special case of implementing a turing-machine, and interfacing that with the full language on entry and exit
21:45:18 <imode> you need them unless you're willing to go with a command set that can push quotations.
21:45:33 <b_jonas> one-tape turing machine
21:46:27 <b_jonas> or really any two-stack finite control machine, it doesn't have to move symbols one to one
21:51:56 <imode> either way there needs to be some kind of nesting.
21:52:03 <imode> of levels > 1.
21:53:07 <b_jonas> imode: no, I think ais523 is right, one level of nesting, namely predetermined lists of combinators, is enough to implement a two-stack machine
21:53:42 <imode> right, but those lists of combinators need to include arbitrary stack effects, unless I'm missing something.
21:54:36 <imode> the underload two-command minimization, for example, can construct a concatenation of two quotations.
21:54:59 <imode> because you already have them on the stack, you just need to drop the ones you don't care about and concatenate the ones you do.
21:56:08 <imode> either there's an upper bound for the amount of nesting you do or you need arbitrary nesting. a third option is treating the stack like a tape.
21:56:19 <imode> I don't know what that upper bound is.
21:58:13 <ais523> the best way to think about it is that the stack + program basically are a tape already
21:59:24 <ais523> you can view a Turing machine like that; represent the left of the tape as the stack, the state of the Turing machine as a special element on top of the stack, and the tape head and elements to its right as commands
21:59:45 <imode> so assume that you only have dup, drop, swap, compose and apply, along with single-quoted versions of all of those. would that be enough?
22:00:24 <ais523> each command looks at the top two stack elements, modifies or pops them if necessary, then "executes" an appropriate number of commands to add elements to its right
22:00:30 <ais523> including the new tape headd
22:00:55 <ais523> I'm not sure whether it's possible to build something like this out of :!~*^
22:01:18 <ais523> and their single-quoted versions
22:01:41 <ais523> this may come down to the old issue of "where do you store the lookup table?" which is often an issue in proving simple languages TC
22:01:50 <ais523> there is nearly always a lookup table, or some sort of equivalent, somewhere
22:02:14 <imode> definitely that issue. in the TM construction in the article you need at least 3 levels of nesting, I think.
22:03:16 <ais523> I think you can probably store it in the top stack element, though, or maybe interspersed between adjacent stack elements
22:04:18 <ais523> or, ooh, I get what the problem is: the problem is that you have no way to construct the single-quoted versions at runtime
22:04:22 <ais523> so you have to copy them around
22:04:34 <imode> yup.
22:04:55 <ais523> if you have some way to construct the single-quoted versions in terms of the unquoted versions then you're good, and that is what the lookup table is needed for
22:05:31 <imode> so if you were to build a quotation that builds quotations, you'd need to select from an already given palette. then you'd build something that's just a quoted sequence of [dup drop swap left right ...] etc commands that builds another quotation, and then applies it.
22:05:33 <ais523> so the problem here is that there is more than one single-quoted combinator, but you can't store a single-quoted combinator inside a list
22:05:40 <imode> yup.
22:05:42 <ais523> and thus they need to be stored "loose" on the stack
22:05:47 <ais523> and ~ doesn't go deep enough to get past all of them
22:05:52 <imode> eeeexactly.
22:06:17 <ais523> dup, drop, compose, apply, rotate top 6 elements, and single-quoted versions of all those should be enough, I believe
22:06:29 <imode> ooh.
22:06:35 <imode> that's interesting.
22:06:35 <ais523> err, probably needs to be top 7
22:06:50 <ais523> maybe top 6 is enough
22:07:18 <ais523> because the only issue is juggling your single-quoted combinators on the stack, so you need enough juggling power to juggle past them and operate on the data underneath
22:07:20 <imode> you'd probably need top7 because you still need the currently active combinator.
22:07:24 <imode> yeah.
22:07:39 <imode> but what happens when you try to get at the data under that.
22:07:43 <imode> and the data under that.
22:07:57 <ais523> top 7 is enough to juggle 5 combinators and 2 pieces of data
22:08:13 <ais523> or 5 combinators, plus a duplicate of one of the combinators, plus 1 piece of data
22:09:15 <imode> I think there would be some cases where you some operations wouldn't be possible that'd be required. I don't know what a lookup table would look like apart from a sequence of quotations that point to eachother.
22:09:24 <ais523> this basically gives you all of {dup drop compose apply swap} because none of those take more than two arguments, and {push duplicate of single-quoted combinator} because you can just copy one of them and juggle it into place
22:09:27 <imode> relative to their position on the stack.
22:09:38 <ais523> (you can build a swap out of a rotate by dupping a bunch, rotating, and dropping the duplicates)
22:10:05 <ais523> the lookup table is literally just [dup][drop][compose][apply][rotate] on top of the stack, as 5 loose elements
22:10:14 -!- arseniiv has quit (Ping timeout: 256 seconds).
22:10:24 <imode> sorry, I misspoke: a TM's lookup table.
22:10:24 <ais523> you leave it there the entire program execution, except temporarily to operate on the elements beneath it
22:10:44 <ais523> oh, a TM's lookup table is the (color, state) → (color, state, movement) map
22:10:56 <imode> right, but forming that map.
22:11:01 <imode> within this language.
22:11:52 <ais523> you'd use enum values like !!!!!!!~!~!~!~!~!~! to store colors and states
22:12:58 <ais523> actually, even better, you use a construction where a color/state is just !!!…!!!!^ and the element that's executed contains the remanining ! to get rid of the elements that weren't popped or executed
22:13:35 <ais523> that way it composes easily, a color can be, say, ! or !! or !!!, a state can be some multiple of !!! followed by ^
22:13:48 <imode> how would you preserve the rest of the table? you need to make a state transition more than once.
22:13:50 <ais523> then, composing color with state gives you the appropriate accessor for the lookup table
22:14:01 <ais523> simulated nested quoting
22:14:10 <ais523> because you're juggling single-quoted combinators
22:14:20 <ais523> you can effectively produce a nested list by writing the appropriate list of juggling commands
22:14:39 <imode> iiiinteresting.
22:14:40 <ais523> like, you can't write [[dup swap][apply rotate]] directly, but you can create a command that produces the elements [dup swap][apply rotate] when executed
22:15:24 <ais523> beacuse you just need to write the list of commands that juggles your combinators appropriately to produce those two elements, and that list of commands is flat
22:15:25 <imode> so you apply the current color to the table to get a quotation that you can apply to do the state transition, which constructs the state table _again_.
22:15:32 <ais523> yes
22:15:36 <imode> while also performing the actions on the tape.
22:15:42 <imode> that is absolutely brilliant.
22:15:47 <ais523> at this point it's basically just standard Underload behaviour, except that there is no way to implement a
22:15:54 <ais523> but you don't need a to write a Turing machine
22:16:07 <imode> this was on the tip of my tongue for the past 5 days lmao.
22:17:13 -!- ais523 has quit (Read error: Connection reset by peer).
22:18:12 <imode> so the core command set is just {dup drop swap compose apply rot7} and quoted versions, leading to a total of 12 commands.
22:18:14 -!- ais523 has joined.
22:18:20 <imode> so the core command set is just {dup drop swap compose apply rot7} and quoted versions, leading to a total of 12 commands.
22:18:23 <imode> shoot, sorry.
22:19:21 <b_jonas> zzo38: right now I'm trying to figure out what happens if I have Vastvood Fortification exiled to Isochron Scepter, and I try to cast the back side as a spell without paying its mana cost. normally you can't cast lands because they don't have a mana cost so you can't pay the cost, Dryad Arbor has a mana cost but 305.9 specifically forbids it, and abilities that instruct to cast without mana cost are
22:19:27 <b_jonas> carefully phrased as "play" instead of "cast" when a land could be used, in which case 601.1a makes it so you'll play it.
22:19:34 <imode> thanks for the help ais523.
22:25:13 <b_jonas> 711.7 (a rule that doesn't even normally work until future sets are released because the back face never has mana cost) says I can choose the back face, nothing seem to prohibit it, and there's now rule 111.11 that says what happens when the back face up copy resolves.
22:25:19 <b_jonas> or the copy of the back face really
22:29:54 <b_jonas> ais523: do we happen to know what are the smallest two-stack finite control machines, as opposed to the smallest from the more restricted class of Turing machines?
22:30:09 <b_jonas> perhaps you looked at that for StackFlow
22:42:32 -!- asie has joined.
22:43:55 <b_jonas> "color" in a Turing machine as tape symbols? that would be weird
22:54:31 <zzo38> I think that you can't cast the back face, since it is a land, it would seem.
22:55:22 <asie> hello
22:58:53 <zzo38> Hello
23:07:02 -!- callforjudgement has joined.
23:07:31 -!- dcristofani has joined.
23:08:59 -!- ais523 has quit (Read error: Connection reset by peer).
23:18:45 -!- Arcorann has joined.
23:28:40 -!- callforjudgement has changed nick to ais523.
23:40:25 -!- dcristofani has quit (Ping timeout: 246 seconds).
23:59:16 <esowiki> [[MangularJS]] M https://esolangs.org/w/index.php?diff=78014&oldid=75209 * PythonshellDebugwindow * (+1) /* Hello, World! */ Fix example to work properly
23:59:34 -!- tromp has quit (Remote host closed the connection).
2020-10-18
00:02:46 <b_jonas> zzo38: yes, but where's the rule that says you can't cast a land?
00:03:02 <b_jonas> it looks like there's none, though this may get fixed in the next update
00:08:53 <zzo38> Rule 305.9 says a land that is also another type can't be cast as a spell, but that doesn't say if it is only one. That seems to be a mistake, but I suppose that for now, it would seem to be allowed even if it isn't supposed to be allowed.
00:17:31 -!- ais523 has quit (Read error: Connection reset by peer).
00:18:09 -!- ais523 has joined.
00:19:18 <ais523> if you have a card with no types, can you cast it?
00:19:27 <ais523> (assuming it's in your hand and has a mana cost)
00:20:34 <ais523> bear in mind that I'm not convinced the situation can ever arise, but the situation of casting a land on the back of an MDFC seems comparable (except that it doesn't have a mana cost, so you'd need Omniscience or the like)
00:23:17 <zzo38> I don't know.
00:25:53 <b_jonas> ais523: I don't think there's a way to have a card with no types outside the battlefield
00:26:52 <b_jonas> but the rules are weird about that, if you could get to cast such a thing, it would not enter the battlefield, because it wouldn't count as a permanent spell, it would try to resolve like a sorcery but not quite count as a sorcery in all respects
00:27:45 <b_jonas> ais523: but I don't think there's anything to stop you from casting it from your hand if it has a mana cost
00:28:02 <zzo38> The rules say a object with instant or sorcery type cannot enter the battlefield, but I don't know about other ones
00:28:57 <b_jonas> hmm wait
00:29:01 <b_jonas> I don't know what would happen
00:30:09 -!- tromp has joined.
00:30:09 <b_jonas> the relevant rule is 608.3, that's what moves the spell to the battlefield, but only if it's a "permanent spell", which is defined in 110.4b, which says "an artifact, creature, enchantment, or planeswalker spell"
00:31:48 <b_jonas> 608.2k says that an instant or sorcery spell moves to the owner's graveyard when it resolves, after it has done all the other steps for resolving
00:32:04 <b_jonas> and 608.2k also talks about resolving abilities
00:32:17 <b_jonas> combat damage on stack no longer exists
00:33:01 <b_jonas> there are of course some replacement abilities that can make a spell move to exile instead of the graveyard when resolving
00:33:42 <b_jonas> I can't find what happens with a typeless spell, so if there's no specific rule, it would remain on the stack and try to resolve again after everyone passes
00:34:02 <b_jonas> but I don't think this can happen in first place
00:35:01 -!- tromp has quit (Ping timeout: 244 seconds).
00:37:22 <zzo38> Yes, that would seem to be, although it isn't very good and I thought it might make more sense to unify the rules, to change them so that, in general: An resolving object's spell abilities are done first, and then it moves to the battlefield; if it doesn't, it moves to the graveyard; if it still doesn't, it is exiled; and if even then it still doesn't, it ceases to exist.
00:37:32 <ais523> the same thing would happen with a land spell, wouldn't it?
00:37:41 <ais523> instant draw, unless someone chooses to counterspell it
00:38:31 <zzo38> ais523: Yes, I think so, unless it is a land with another type, I suppose (although lands with other types cannot be cast anyways, due to 305.9, so it would have to change while on the stack)
00:38:39 <ais523> Netrunner fixes this problem by having playing events/operations (non-permanents), and installing hardware/programs/resources/ice/assets/upgrades/agenda (permanents), being two unrelated actions
00:39:29 <ais523> so there's never any problem about how to remove them from the play area after they resolve
00:40:01 <b_jonas> there also doesn't seem to be a rule specific for what happens with a copy of a spell if it's not a permanent spell, but the same rules as for a spell that's a card applies to them: if it's an instant or sorcery it goes to the graveyard (and later gets cleaned up), otherwise ?? but that's probably not possible
00:40:18 <b_jonas> because the type gets copied from the original spell
00:40:20 <ais523> (although, Netrunner also doesn't have counterspells in the traditional sense, to counter someone's install you destroy the thing they installed after it arrives)
00:40:43 <b_jonas> ais523: hmm. you have a point about the land spell
00:41:59 <zzo38> See a puzzle I made up some time ago, for another point of view about typeless cards outside of the battlefield (although you will not generally get a chance to cast them, nor will they get a chance to resolve, in the specific situation that I did)
00:42:36 <ais523> that said, Netrunner also doesn't have a problem with just leaving things in the play area, over multiple turns if necessary
00:43:10 <ais523> you can think of events/operations as having triggered abilities that trigger on them being played, causing them to resolve and be trashed
00:43:24 <ais523> if something goes wrong with the ability, they just kind-of sit there until something happens to them
00:43:41 <ais523> this wouldn't work in Magic, because you can counter triggered abilities there
00:43:48 <ais523> but it's a clever way to avoid having both spells and abilities on the stack
00:45:01 <ais523> and it's sometimes used to make operations that take multiple turns to resolve
00:45:30 <b_jonas> zzo38: well, I personally think the rule should be that if a spell isn't a sorcery or instant or conspiracy or emblem or plane or phenomenon or scheme or vanguard or contraption then it etb as it resolves.
00:46:41 <ais523> the really controversial option would be to have a unified list of subtypes (i.e. not needing tribal), and mark artifact and enchantment into permanent subtypes
00:46:48 <zzo38> b_jonas: The rule I suggested has the same effect that you mentioned I think anyways (although emblem isn't a type at all but a kind, and Contraption is a subtype)
00:46:56 <ais523> (land is more of a keyword ability, and creatures and planeswalkers have a lot of rules of their own)
00:46:59 <b_jonas> ais523: yes, but we want to have effects printed on cards that let you cast or play sorceries and creatures uniformly
00:47:12 <b_jonas> ais523: and keywords like suspend
00:47:19 <ais523> b_jonas: Netrunner has plentry of the former, they just say "play or install"
00:48:01 <zzo38> I think that a good way to fix it is with the unified rule I mentioned, together with fixing rule 305.9 so that it says that any object with the type "land" cannot be cast, rather than only saying if it has another type as well as land.
00:49:49 <ais523> and suspend in Netrunner would be worded as "Place 3 power counters on this event rather than trashing it as it resolves. Remove 1 counter at the start of your turn. When it has no counters, trash it and do X"
00:50:10 <ais523> (I don't think it'd be modal, Netrunner doesn't do modal effects very often, so it'd just have the suspend cost")
00:50:34 <ais523> actually that wouldn't work for suspend permanents, those would be awkward
00:50:56 <ais523> but also there wouldn't be much reason to not just have them installed normally and not do anything for a few turns, other than being counted
00:53:24 -!- FreeFull has quit.
00:54:30 <b_jonas> ais523: ok, but in M:tG it's not easy to make creatures "not do anything" for a few turns, because there used to be so many costs payed by sacrificing a creature
00:54:50 <zzo38> I suppose the other place to ask is rec.games.trading-cards.magic.rules but that newsgroup doesn't seem to be much in use.
00:55:18 <b_jonas> those work even if they're Arrested and Turned to Frog
00:56:41 <ais523> yes
00:56:44 <b_jonas> also I'm pointed to https://twitter.com/WotC_Matt/status/1310740942182178817 , where re a bug about a land getting cast as a spell, Matt Tabak says "You shouldn’t be able to play a land because the instruction is to cast. The team tells me this is known and a fix is coming soon." but "fix" refers to the Arena software, not the Comp Rules
00:57:08 <ais523> it wouldn't surprise me if the Arena programmers just read the rules and implemented them as written
00:57:38 <ais523> actually I suspect the reverse has happened in some cases, with cards that don't work within the rules being errata'ed based on the implementation on jinteki.net
00:57:42 <b_jonas> that said, Matt Tabak might look at the Comp Rules anyway, plus he already knows that there are problems with the basic rules for modal double-faced cards so he'll fix them,
00:57:53 <zzo38> They should fix the Comp Rules too, I should think. I have suggested before to actually write the rules as a literate computer program (perhaps inventing a programming language for that purpose), as that would make the rules more clearly.
00:58:28 <b_jonas> plus there will probably be more modal double-faced cards in near future sets, for which he'll look at the rules too
00:58:43 <b_jonas> so I'll just have to wait for the next update and then read what the rules say again
01:04:36 <b_jonas> lol! today's SMBC is great https://www.smbc-comics.com/comic/nudge
01:05:13 <b_jonas> that's a take on Allosaurus president plus asteroid defense mission that didn't come up in Irregular
01:08:24 <b_jonas> as for the xkcd, I was thinking about why the road traffic rules mention that the middle light of car traffic lights is amber colored. everyone else except the weird formal texts either calls it yellow, or calls it yellow but notes that it looks more like orange, but the rules and teaching material says amber. but I haven't heard anything else described as being amber colored. I have no other reference
01:08:30 <b_jonas> to amber color than those lights used as signals for road traffic.
01:12:39 -!- aaaaaa has quit (Quit: leaving).
01:29:52 -!- adu has joined.
01:42:20 -!- tromp has joined.
02:02:20 -!- adu has quit (Quit: adu).
02:15:57 -!- dcristofani has joined.
02:35:58 -!- dcristofani has quit (Ping timeout: 260 seconds).
02:51:02 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
03:11:09 -!- adu has joined.
03:15:28 -!- Sgeo has quit (Read error: Connection reset by peer).
03:19:43 -!- Sgeo has joined.
03:24:15 <int-e> Oh there's a dprintf() for printing to fds, interesting.
03:26:16 <int-e> (in POSIX, since 2008)
03:31:11 -!- dcristofani has joined.
03:38:54 <shachaf> My formatting API lets you printf into a fixed-size buffer. It would be nice if sprintf did that.
03:39:18 <shachaf> As it is you can't implement fprintf in terms of sprintf or vice versa.
03:43:50 -!- deltaepsilon23 has joined.
03:48:57 <int-e> . o O ( fork off a thread and fprintf to a pipe )
03:51:08 <int-e> (But I get what you mean.)
03:52:01 -!- deltaepsilon23 has changed nick to deltadoge23.
03:59:48 <shachaf> https://shachaf.net/tmp/fmt/fmt.h
04:00:04 <shachaf> I think C varargs makes this pretty tricky for printf, though.
04:00:11 <int-e> I also still remember that you've worked on this.
04:00:25 <shachaf> Oh no, do I just post the same things in here over and over again?
04:01:16 <shachaf> Anyway, C varargs are invalidated as soon as the function returns, which makes it harder.
04:01:46 <shachaf> I guess you could scan over the format string once to copy the varargs values? But I'm not sure you'd want to.
04:03:32 <zzo38> There is fmemopen and open_memstream, and all of the printf variants return the length of the result, in case those things are needed.
04:04:22 <zzo38> Although there is that problem with varargs that you mention.
04:04:43 <shachaf> Yes, but that still needs you to have enough memory for the result at once, I suppose.
04:05:02 <int-e> shachaf: We all have our own little pet topics, I suppose.
04:05:28 <shachaf> musl libc uses a FILE * with a write callback argument for vfprintf.
04:06:21 <shachaf> Oh, maybe glibc does something similar.
04:06:32 <shachaf> int-e: I did change the API since last time I mentioned it, I think.
04:08:28 <int-e> Oh poking in FILE * interna, hmm.
04:09:02 <int-e> ah. fopencookie
04:09:18 <int-e> what a fun name...
04:09:31 <shachaf> Oh, I didn't know that.
04:09:36 <shachaf> Well, it's a GNU extension.
04:09:56 -!- ais523 has quit (Read error: Connection reset by peer).
04:10:02 -!- callforjudgement has joined.
04:10:39 <int-e> Yes, it is. And it's still a funny name.
04:12:20 <int-e> It's too bad that this isn't standardized so you get reimplementations like https://wiki.openssl.org/index.php/BIO
04:12:35 <int-e> where nothing ever fits with anything else
04:15:05 <shachaf> It's too bad libc mixes "language" convenience things (that maybe ought to just be a regular library statically linked into your program) with "OS" things.
04:28:30 -!- dcristofani has quit (Ping timeout: 272 seconds).
04:33:53 <int-e> shachaf: I guess you wouldn't really like fopencookie anyway... because it allocates from the heap.
04:34:11 <shachaf> Do I hate all heap allocations?
04:34:39 <shachaf> When you're interacting with libc things like FILE * functions it seems too far gone to worry about things like that.
04:34:44 <int-e> Not quite, just the not strictly necessary ones.
04:34:50 <shachaf> It probably calls malloc 20 times before breakfast.
04:38:39 <int-e> but it leads to things like FILE *f = fopencookie(s, "a", cb); if (!f) { errno = ENOMEM; return -1; }
04:39:01 <shachaf> Oh, sure, that seems annoying.
04:40:18 <shachaf> Certainly it seems entirely gratuitous when an API makes you do that many times for no reason, like posix_spawn.
04:42:48 <int-e> Oh well. It seems to work... https://paste.debian.net/1167655/
04:43:17 <shachaf> Good thing malloc failures never happen.
04:43:23 <shachaf> At least on Linux.
04:43:42 <int-e> that's an entirely different pet peeve :P
04:44:24 <zzo38> I often use a macro to check for memory allocation errors
04:44:37 <shachaf> Of course, if you're OK with GNU extensions + allocation, you could use asprintf.
04:44:40 <int-e> But whatever, I need some fresh air, and then I can figure out how to wrap up this toy program.
04:45:06 <int-e> shachaf: Which would be perfectly okay for my use, but less interesting :P
04:45:07 <shachaf> The allocation is theoretically variable-sized but maybe it's fine in practice for all uses of printf.
04:45:39 <int-e> (no attacker controlled format strings or format lengths or string sizes)
04:46:33 <int-e> But now that I have already written that code... what's the point in using asprintf :)
04:48:08 <zzo38> If your program uses SQLite for whatever reason, you can use the SQL printf function if you need safe dynamic printf. (If not, you can still copy the printf implementation from SQLite into your own program, and modify it to work with your program rather than SQLite.)
04:48:38 <int-e> not happening
04:50:11 <shachaf> What is this toy program?
04:51:44 <callforjudgement> <shachaf> It's too bad libc mixes "language" convenience things (that maybe ought to just be a regular library statically linked into your program) with "OS" things. ← it's unclear what should be an "OS" thing anyway, just system calls?
04:51:59 <callforjudgement> part of the reason libcs exist is that some things are system calls on some OSes but library functions on others
04:52:10 <callforjudgement> MS-DOS has malloc as a system call, for example (not sbrk)
04:52:55 <callforjudgement> also, I think you can get a lot of efficiency out of MMU abuse nowadays
04:53:12 <zzo38> Glulx has both (although you cannot use both at the same time).
04:53:44 <callforjudgement> I wonder how fast a queue implementation is that just writes through address space continuously, freeing the back of the queue when getting close to memory exhaustion
04:53:58 <shachaf> I think it's very reasonable for programs to include their own malloc implementation rather than defer to libc.
04:54:13 <callforjudgement> with a 2⁶⁴ address space you never run out
04:54:38 <shachaf> I saw this post about that mentioned it (among other things) the other day: https://tratt.net/laurie/blog/entries/why_arent_more_users_more_happy_with_our_vms_part_1.html
04:54:42 <callforjudgement> I wrote a malloc of my own for fun a while back, it seemed to have decent performance in benchmarks (although I could only find one malloc benchmarker)
04:54:44 <shachaf> (Search for "binary trees", I think.)
04:54:54 <callforjudgement> also was async-signal-safe, which is useful for some purposes
04:55:21 <callforjudgement> (i.e. you could malloc or free from a signal handler, without causing issues as long as you don't free something that's currently in use)
04:57:46 <shachaf> Hmm, this might be a silly question, but if I have an array [..., a0, a1, a2, b0, b1, ...] and I want to swap the as and bs in-place, is there a good thing to do?
04:58:11 <callforjudgement> swap a0 and b0, then a1 and b1, etc.
04:58:19 <shachaf> I mean, two contiguous subarrays.
04:58:24 <callforjudgement> the most efficient swap algorithm on x86 is probably read, read, write, write
04:58:24 <shachaf> as and bs aren't the same length.
04:58:41 <shachaf> I guess the fact that they're subarrays of a bigger array is irrelevant here.
04:58:42 <callforjudgement> oh, you mean move the bs to before the as
04:58:50 <callforjudgement> so abcdAB becomes ABabcd
04:58:54 <shachaf> Yes, that's right.
04:59:40 <callforjudgement> the hardest case mathematically appears to be the case where one of the arrays is only one element long
04:59:58 <shachaf> I think in my actual case the second array is always either one or two elements long.
04:59:59 <callforjudgement> then you clearly have to store it in temporary storage, move all the elements of the other array one element along, and put that one element back
05:00:11 <zzo38> Glulx has both malloc and sbrk as instructions (not system calls).
05:00:19 <callforjudgement> the other cases all reduce to this one after some silly modular arithmetic
05:00:22 <shachaf> That's a constant amount of temporary storage, though, that's fine.
05:00:34 <callforjudgement> like, you take the gcd of the lengths of the two arrays
05:00:48 <callforjudgement> if it's greater than 1 you operate on every gcdth element independently
05:01:01 <shachaf> You can do everything in-place by moving one element at a time, but I'm hoping there's something better.
05:01:34 <callforjudgement> if the lengths of the two arrays are coprime, then you can move one element at a time, yes
05:01:42 <callforjudgement> but the cache locality of that has to be horrible
05:02:14 <callforjudgement> to be fair, probably the fastest algorithm is just three memcpys
05:02:28 <callforjudgement> (with appropriate caching hints set)
05:02:42 <shachaf> These are arrays of pointers in this case.
05:03:10 <callforjudgement> although caching hints on modern x86_64 aren't very good, you basically have a choice of "I will use the data again soon" and "I will not use this data again soon"
05:03:26 <shachaf> Or what do you mean by three memcpys?
05:04:15 <callforjudgement> memcpy the shorter array to temporary storage, memmove (not memcpy, sorry) the longer array into position, memcpy the shorter array back
05:04:29 <shachaf> OK, sure.
05:04:42 <shachaf> That was probably going to be my default thing.
05:05:07 <callforjudgement> there's also the special case when the arrays are nicely page-aligned, where you just reconfigure the MMU so that the logical memory maps into physical memory in a different way, but that's not going to be very applicable and probably produces hilarious results if you do it repeatedly
05:05:51 <callforjudgement> modern processors are pretty good at block copies of memory, though
05:06:12 <callforjudgement> I did some benchmarking a while back on what the fastest way to write the results of a calculation into memory were
05:06:19 <shachaf> Speaking of which: Is it actually the case that many modern CPU L1 caches are limited to 32 KB because that's the page size times the number of cache ways?
05:06:37 <shachaf> (As opposed to other factors?)
05:07:39 <callforjudgement> that's unlikely to be a limiting factor, the main limiting factor on L1 caches is connecting them to the rest of the CPU
05:07:48 <callforjudgement> in a way that allows the data to get there fast
05:08:19 <shachaf> But what else does a virtually-indexed physically-tagged cache do if not that?
05:09:37 <callforjudgement> making the cache use a different sort of addressing internally would be a pretty minor change, compared to trying to figure out how to connect more memory to the CPU at L1 speeds
05:10:20 <shachaf> I expected that it would be something more like what you're saying, but I heard this claim, and I'm not sure. In practice you do see this kind of limit.
05:11:11 <callforjudgement> it wouldn't surprise me if physical limits on the L1 cache meant that it could only be a certain size, so there was no need to create a caching algorithm that could deal with larger sizes because it wouldn't be useful anyway
05:11:22 <shachaf> It's also not clear to me that it would be a minor change. I think people do it to be able to start the L1 cache lookup earlier, before the TLB lookup, which people say is pretty important to make it fast enough.
05:14:11 <callforjudgement> the existence of the TLB disappoints me
05:14:37 <callforjudgement> or, well, I think that even if you don't prefetch data, it makes a huge amount of sense to prefetch TLB entries
05:15:00 <callforjudgement> to the extent that it could reasonably not even be a cache, just a "prepare to read/write here…read/write here" sequence
05:15:58 <callforjudgement> it would also kind-of make sense to have a manually managed L1 cache (this presumably has to get flushed to at least L2 during a context switch, but the L1 cache rarely survives a context switch anyway)
05:16:40 <callforjudgement> sort-of like zero page on the 6502, as a sort of memory bank that's particularly fast to use
05:46:34 -!- callforjudgement has quit (Quit: quit).
06:32:17 <b_jonas> int-e: libc has functions to open a FILE* that's a stringstream, or one that is attached to a file descriptor but doesn't close it on fclose. the former lets you implement sscanf from fscanf, the latter is more useful, it lets you fprintf to a file descriptor, or more importantly, mix other kinds of file abstractions (eg. C++, perl, python, rust file handles) easily with FILE*.
06:32:27 -!- adu has quit (Quit: adu).
06:32:42 <b_jonas> int-e: but as for formatting to a fixed-sized buffer, that's what snprintf is for
06:33:19 <shachaf> snprintf is for formatting to a buffer that's big enough to print everything all in one go.
06:33:48 <b_jonas> shachaf: yes, glibc also has a way to create a FILE* with custom read/write callbacks
06:33:58 <shachaf> Yes. That is what int-e used.
06:34:24 <b_jonas> has a documented API for it
06:34:32 <shachaf> But my string formatter doesn't need any of those, not even callbacks.
06:34:50 <shachaf> It's resumable so you can format into a buffer, do something with it, and then use it again.
06:44:22 <b_jonas> ais523: "with a 2⁶⁴ address space you never run out" => yes, but (a) sometimes you want to malloc to a smaller arena in order to have multiple buffers each of which you can free at once without iterating on all its blocks (b) or to be able to use 32-bit indexes within an arena; (c) the address space is 47 bits in practice, not 64 bits;
06:45:50 <b_jonas> (d) even aside from those I have the feeling that your malloc has some non-obvious drawbacks, such as using too many page table entries and so making the page table cache (called "translation something buffer" or TLB on x86) inefficient and so slowing all memory access down, even the memory access outside your malloced space, and possibly making the OS work harder to handle the metadata for your address
06:45:56 <b_jonas> space
06:46:55 <b_jonas> shachaf: right, so why isn't snprintf good for you? do you want to be able to continue formatting with the same arguments after your buffer runs out or something? if you want that, that's basically all that a FILE* does, with a few more words of metadata for how to read and seek
06:47:30 <shachaf> Well, FILE * doesn't present this interface at all, in general.
06:47:42 <shachaf> glibc does give you the interface, but it makes you use callbacks.
06:48:16 <b_jonas> shachaf: ok, so why is snprintf not good for what you want?
06:48:27 <b_jonas> or its openbsd variant, if there's one
06:48:40 <shachaf> snprintf requires you to have a buffer that's big enough for the entire output.
06:48:57 <b_jonas> nope, no openbsd variant
06:49:02 <shachaf> You can't write fprintf in terms of snprintf without something like allocation.
06:49:26 <b_jonas> shachaf: right, so what do you want to do if the buffer runs out, other than detecting that condition like snprintf does and possibly getting a prefix?
06:49:53 <shachaf> I want to be able to do something with the buffer (like write it to a file) and then continue where I left off.
06:50:00 -!- sprocklem has quit (Ping timeout: 258 seconds).
06:50:21 <b_jonas> shachaf: ok, but do you want that as a callback, or do you want to call the formatting function back, or something else?
06:50:33 <shachaf> I want to call the formatting function.
06:50:41 <shachaf> That's more flexible than a callback.
06:50:44 <b_jonas> and it has to somehow remember where it stopped?
06:50:54 -!- deltadoge23 has quit (Quit: Leaving).
06:50:57 <shachaf> Yes.
06:51:05 <shachaf> For example the library I linked above does that.
06:51:07 <b_jonas> well that's harder to implement from the formatter side, unless you want to give it a stack so it works as a user-space coroutine
06:51:34 <b_jonas> I don't think I ever wanted such an interface, but if you want that, sure
06:51:52 <shachaf> Yes, it's more work to make flexible general libraries than ones that only work for a particular use.
06:52:08 <b_jonas> because then my code has to remember all the formatting arguments too, and what memory they refer to, and all that
06:52:10 <shachaf> I think a callback alternative would probably be OK, just more annoying to use. But standard C doesn't even give you that.
06:52:27 <shachaf> It's true. Maybe C varargs just aren't up to the task.
06:52:31 <b_jonas> the callback alternative is the FILE*-based one in glibc
06:52:49 <b_jonas> you say it uses a few extra calls of malloc, which is admittedly true
06:52:53 <shachaf> Yes, in glibc you can do it.
06:53:09 <shachaf> No, I wasn't really objecting to that malloc, I think that was someone else.
06:53:23 <b_jonas> well it has to be implemented somewhere first. "it's not standardized" is not an excuse, you start with an implementation for stuff like this, not with a standard.
06:53:53 <b_jonas> and there are similar implementations of custom streams in lots of other libraries
06:55:12 <b_jonas> the C++ standard library has something like that now I think, I think boost had something similar but probably with a worse formatter,
06:55:12 <shachaf> Well, I doubt I'd want the glibc solution to be standardized.
06:55:16 <int-e> shachaf: The toy program is a proxy that provides SSL wrapping for a local service... with the twist that it also tells the local service where the request came from.
06:55:34 <b_jonas> these are based on something like C++ streams
06:55:38 <shachaf> Anyway, I was only saying why I don't want to use the glibc function, not whether it's an excuse or not.
06:56:35 <b_jonas> a moment, there was another non-libc library that may have one but I can't find it
06:56:40 <shachaf> Hmm, TLS with TCP fast open is still not really workable, right?
06:57:10 <int-e> not sure what that is
06:57:26 <shachaf> b_jonas: Anyway, difficulty of standardization is the reason I was saying I don't really want to be using a standardized library for this.
06:57:45 * int-e looks at https://en.wikipedia.org/wiki/TCP_Fast_Open
06:57:53 <shachaf> The thing they do to save a roundtrip establishing a TLS connection. Since normally you have the TCP handshake first, followed by the TLS negotiation.
06:58:26 <shachaf> Oh, now I remember, TCP fast open uses this cookie.
06:58:32 <shachaf> So it's probably not even something you want to use.
06:58:42 <int-e> Yeah, hmm, that's irrelevant for what I'm doing.
07:00:22 <b_jonas> I thought apache APR has something like this, but no
07:00:43 <b_jonas> shachaf: anyway, the hardest part of implementing something like this is that printing and scanning floating-point numbers correctly is crazy hard.
07:00:52 <shachaf> I agree.
07:00:53 <b_jonas> correctly and efficiently, even harder
07:01:10 <int-e> C code always gets so long.
07:01:30 <int-e> This trivial-ish program is 301 lines now.
07:01:39 <int-e> with hardly any comments
07:01:58 <int-e> and nothing to make it user-friendly.
07:02:00 <b_jonas> int-e: that's why I don't write C programs anymore, only C++.
07:02:11 <int-e> ...
07:02:49 <int-e> I guess you can reduce the effect that every 2nd line is for error handling.
07:04:04 <shachaf> Every second line being error handling sounds more like a library problem than a language problem.
07:04:07 <shachaf> I guess it depends on the code.
07:04:50 <int-e> shachaf: every function can potentially fail, and there's no exceptions that would maybe allow to collect several kinds of errors in a single place.
07:05:06 <int-e> (at least for this kind of IO heavy code)
07:05:07 <b_jonas> shachaf: re move one array before the other when they're adjacent, there's a function that does that, https://en.cppreference.com/w/cpp/algorithm/rotate , but usually it's easier if you have a separate buffer that you can move into
07:06:12 <b_jonas> "probably the fastest algorithm is just three memcpys" => basically yes, although one of them should be a memmove unless you're careful
07:06:46 <shachaf> But this is a C++ page. I know: I'll look in /usr/include/c++/ and see if I can figure out what it does.
07:07:50 <b_jonas> ais523: 'you basically have a choice of "I will use the data again soon" and "I will not use this data again soon"' => technically there's also "I'll never use this data again, don't bother flushing it from cache"
07:08:23 <shachaf> How many levels of indirection before finding the implementation?
07:08:59 <shachaf> Oh, only two, very good.
07:10:14 <b_jonas> ais523: "trying to figure out how to connect more memory to the CPU at L1 speeds" => I'm convinced the thing that stops that is the minimum page size, which is 4096 bytes on x86, and can't be increased unless you break compatibility with a lot of existing software, because the L1 cache has to do enough address calculation to know where to start to look before the results from the TLB arrives, so you
07:10:20 <b_jonas> can't have more than 8*4096 bytes of L1 cache (per type (data vs code) and cpu core)
07:10:39 <myname> just rust everything c/c++ :p
07:10:41 <shachaf> b_jonas: That's what I was saying.
07:11:05 <b_jonas> "prefetch TLB entries" => you could do that by prefetching one word from each page
07:11:06 <shachaf> But I'm not sure whether that's really the limiting factor. It seems pretty silly compared to the thing ais523 was saying.
07:11:26 <b_jonas> but I think even then I do want a TLB to exist, and a large one ideally
07:11:30 <b_jonas> I don't see why it disappoints you
07:11:55 <b_jonas> shachaf: yes, it's a C++ page, because it has a C++ interface
07:12:20 -!- FAKTOR7 has quit (Remote host closed the connection).
07:12:52 <b_jonas> shachaf: also be careful when using the actual function, I think it had a bug in older versions of gcc where it wasn't binary compatible between two versions of gcc if you ever called it with zero offset or some such nonsense
07:13:02 <b_jonas> I don't want to look it up now
07:13:11 <shachaf> I'm not using C++ so it doesn't matter.
07:13:47 <b_jonas> shachaf: I think that's the limiting factor *now*. obviously if you increase the minimum page size, there'll be another limiting factor very soon, but even just doubling the L1 cache size would help a lot
07:14:09 <b_jonas> well, it would help a lot for some code, obviously; some code isn't bound by that
07:14:18 <shachaf> b_jonas: Another thing that could help is page coloring, requiring physically adjacent pages to be mapped together.
07:14:30 <shachaf> "physically" adjacent
07:14:41 <b_jonas> shachaf: I don't know what that means
07:14:46 <b_jonas> page coloring?
07:14:55 <shachaf> https://en.wikipedia.org/wiki/Cache_coloring
07:15:41 <shachaf> It's sort of intermediate between the current situation and actually changing the page size.
07:15:43 <b_jonas> color all your hot memory regions red with the blood of your enemies that you sacrifice to the gods thanking them for giving your computer better performance for memory accesses
07:16:14 <b_jonas> and from the blood of sacrifical animals as well
07:16:50 <b_jonas> use their livers for haruspexy to predict near future memory access and prefetch them as well while you're there
07:16:55 <shachaf> For example, require each even page n to be mapped next to page n+1.
07:17:52 <b_jonas> hmm
07:27:21 -!- arseniiv has joined.
07:32:36 -!- hendursaga has quit (Remote host closed the connection).
07:33:41 -!- sprocklem has joined.
07:33:49 -!- hendursaga has joined.
07:36:55 <int-e> oh, cookie write functions are not allowed to return negative values
08:06:23 -!- Sgeo has quit (Read error: Connection reset by peer).
08:08:54 -!- hendursa1 has joined.
08:11:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:19:07 -!- M8Crumble has joined.
08:19:22 <M8Crumble> 52*"!dlroW olleH">:# ,# _@
09:08:59 <esowiki> [[7]] M https://esolangs.org/w/index.php?diff=78015&oldid=76480 * SunnyMoon * (+2) Make it into a paragraph so it can be more readable.
09:18:04 -!- imode has quit (Ping timeout: 260 seconds).
10:38:59 -!- M8Crumble has quit (Remote host closed the connection).
10:55:40 -!- t20kdc has joined.
11:06:46 -!- Frater_EST has joined.
11:09:16 -!- LKoen has joined.
11:35:09 -!- tromp has quit.
11:53:30 -!- tromp has joined.
12:00:17 -!- tromp has quit (Remote host closed the connection).
12:29:39 -!- tromp has joined.
12:33:42 -!- FreeFull has joined.
13:07:56 -!- hendursa1 has quit (Quit: hendursa1).
13:08:17 -!- hendursaga has joined.
13:11:16 <esowiki> [[Streetcode]] M https://esolangs.org/w/index.php?diff=78016&oldid=73180 * PythonshellDebugwindow * (-1) /* Ambiguous turns */ Fix a grammar which is the bad grammar
14:05:37 -!- Frater_EST has quit (Read error: Connection reset by peer).
14:22:59 -!- FreeFull has quit.
14:34:38 -!- Arcorann has quit (Read error: Connection reset by peer).
14:45:48 -!- MDude has joined.
14:55:10 -!- FreeFull has joined.
15:16:28 -!- LKoen has quit (Remote host closed the connection).
15:24:18 <esowiki> [[OpenStreetCode]] N https://esolangs.org/w/index.php?oldid=78017 * PythonshellDebugwindow * (+12178) Created page with "{{WIP}} '''OpenStreetCode''' is an esolang by [[User:PythonshellDebugwindow]] based on [https://josm.openstreetmap.de/ JOSM], an editor for [https://www.openstreetmap.org/ Ope..."
15:35:49 <esowiki> [[Talk:Modulous]] M https://esolangs.org/w/index.php?diff=78018&oldid=77131 * Abyxlrz * (+161)
15:36:00 <esowiki> [[Talk:Modulous]] M https://esolangs.org/w/index.php?diff=78019&oldid=78018 * Abyxlrz * (+1)
16:37:52 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78020&oldid=78017 * PythonshellDebugwindow * (+404) /* Use of elements */
16:42:56 <esowiki> [[Special:Log/newusers]] create * Aryantech123 * New user account
16:45:22 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=78021&oldid=77942 * Aryantech123 * (+88)
16:47:15 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=78022&oldid=78021 * Aryantech123 * (+30)
16:52:50 <esowiki> [[Brainflub]] https://esolangs.org/w/index.php?diff=78023&oldid=53136 * Aryantech123 * (+154)
17:01:03 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78024&oldid=78020 * PythonshellDebugwindow * (+10) /* Instruction table */ Fix table and header
17:10:46 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78025&oldid=77993 * Masldobehere * (+11) /* S */
17:16:56 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78026&oldid=78024 * PythonshellDebugwindow * (+116) /* Instruction table */
17:17:07 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78027&oldid=78026 * PythonshellDebugwindow * (-2) /* Memory */
17:45:49 -!- rain1 has quit (Quit: Leaving).
17:54:58 -!- Sgeo has joined.
18:18:38 -!- aaaaaa has joined.
18:46:26 -!- LKoen has joined.
19:03:08 -!- imode has joined.
19:07:09 -!- Frater_EST has joined.
19:08:19 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78028&oldid=78027 * PythonshellDebugwindow * (+593) /* Use of elements */
19:22:00 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78029&oldid=78028 * PythonshellDebugwindow * (+468) /* Relations */
19:22:30 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78030&oldid=78029 * PythonshellDebugwindow * (-8) No longer WIP
19:23:27 <esowiki> [[User:PythonshellDebugwindow]] M https://esolangs.org/w/index.php?diff=78031&oldid=75825 * PythonshellDebugwindow * (+91)
19:23:46 <esowiki> [[User:PythonshellDebugwindow]] M https://esolangs.org/w/index.php?diff=78032&oldid=78031 * PythonshellDebugwindow * (-2) /* Languages */ fix name
19:24:38 <esowiki> [[Language list]] M https://esolangs.org/w/index.php?diff=78033&oldid=78025 * PythonshellDebugwindow * (+21) /* O */ Add [[OpenStreetCode]]
19:27:17 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78034&oldid=78030 * PythonshellDebugwindow * (+177) /* Use of elements */
19:31:38 <esowiki> [[Owk]] M https://esolangs.org/w/index.php?diff=78035&oldid=66419 * PythonshellDebugwindow * (+10) Fix page formatting
19:46:56 <esowiki> [[Special:Log/upload]] upload * PythonshellDebugwindow * uploaded "[[File:OpenStreetScript print A.png]]": File for an [[OpenStreetScript]] example
19:47:27 <esowiki> [[File:OpenStreetScript print A.png]] M https://esolangs.org/w/index.php?diff=78037&oldid=78036 * PythonshellDebugwindow * (-2) /* Summary */
19:47:45 <esowiki> [[Special:Log/move]] move * PythonshellDebugwindow * moved [[File:OpenStreetScript print A.png]] to [[File:OpenStreetCode print A.png]]: Correct name
19:49:34 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78040&oldid=78034 * PythonshellDebugwindow * (+69) /* Print the letter A */
19:49:41 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78041&oldid=78040 * PythonshellDebugwindow * (-6) /* Examples */ image
19:49:59 <esowiki> [[Special:Log/upload]] overwrite * PythonshellDebugwindow * uploaded a new version of "[[File:OpenStreetCode print A.png]]": Shrink a bit
19:51:08 <esowiki> [[Special:Log/upload]] overwrite * PythonshellDebugwindow * uploaded a new version of "[[File:OpenStreetCode print A.png]]": Upload a smaller version (no white-space to the right and bottom)
19:56:34 -!- rain1 has joined.
20:36:30 -!- moony has quit (Quit: Bye!).
20:36:30 -!- Bowserinator has quit (Quit: Blame iczero something happened).
20:36:30 -!- iovoid has quit (Quit: iovoid has quit!).
20:36:30 -!- ATMunn has quit (Quit: lol rip).
20:49:15 -!- Bowserinator has joined.
20:52:28 -!- moony has joined.
20:52:43 -!- ATMunn has joined.
20:58:31 -!- iovoid has joined.
21:07:22 -!- ski has quit (Ping timeout: 246 seconds).
21:12:05 -!- rain1 has quit (Quit: Leaving).
21:19:03 <esowiki> [[Almost Binary]] https://esolangs.org/w/index.php?diff=78044&oldid=73149 * Wsdt * (+74)
21:19:39 <esowiki> [[Almost Binary]] https://esolangs.org/w/index.php?diff=78045&oldid=78044 * Wsdt * (-27)
21:46:20 -!- arseniiv has quit (Ping timeout: 256 seconds).
21:51:05 -!- Frater_EST has quit (Read error: Connection reset by peer).
21:59:31 -!- tromp has quit (Remote host closed the connection).
22:01:17 -!- t20kdc has quit (Remote host closed the connection).
22:14:05 -!- tromp has joined.
22:24:28 -!- deltadoge23 has joined.
22:24:38 -!- deltadoge23 has changed nick to deltaepsilon23.
22:25:18 -!- deltaepsilon23 has quit (Client Quit).
22:25:47 -!- deltaepsilon23 has joined.
22:27:08 -!- deltaepsilon23 has changed nick to delta23.
22:33:55 -!- Arcorann has joined.
22:38:28 -!- tromp has quit (Remote host closed the connection).
23:15:01 -!- tromp has joined.
23:16:35 <b_jonas> rofl... I'm reading the specifications of a desktop speaker, and there's an entry saying "Waterproof: no"
23:18:41 <int-e> Well, waterproofing is important for the times when you drink and read or watch something funny at the same time.
23:20:01 -!- tromp has quit (Ping timeout: 264 seconds).
23:28:41 <shachaf> Aren't waterproof speakers pretty common?
23:29:25 <int-e> For outdoor use?
23:29:52 <int-e> I don't know. But "desktop" doesn't suggest any need for waterproofing to me.
23:30:49 <int-e> And speakers tend not to be waterproof by themselves... they're roomy, have cardboard pieces, possibly some cloth...
23:32:41 <b_jonas> on the plus side, the specifications are detailed. finally.
23:32:44 <b_jonas> I'll buy this one.
23:33:12 -!- adu has joined.
23:48:08 <b_jonas> crap, I pressed the wrong button
23:50:02 <int-e> mmm
23:51:52 <b_jonas> closed the browser at just the critical time when I have submitted the card payment details that would finalize my order, but it hasn't told me that the order is confirmed yet
23:52:19 <b_jonas> it looks like it didn't go through, but if it did then I'll end up in a stupid wedged state where I have to cancel an order
23:54:48 <fizzie> C-d (mute/unmute microphone in Google Meet) and C-r (reload a tab in Chrome) are relatively close by, I've dropped off a few meetings that way.
23:55:19 <b_jonas> fizzie: heh
23:55:43 <b_jonas> ok, now this attempt succeeded, I have ordered the goodies
23:56:03 <b_jonas> including that speaker set
23:57:11 <b_jonas> also a mechanical keyboard that's more expensive than my previous one, the one that felt really great to type on but lasted for only two and a half years
23:58:53 <fizzie> I've got a pair of speakers, and the right channel has started to go silent; happened twice now, each time coming back after maybe half an hour. I hope that doesn't mean it's going to break. It doesn't seem like it's just flaky connectors or cables or anything; also the right speaker's the one that's got the amplifier and volume knob, while the entirely passive left one (that's connected to the right
23:58:59 <fizzie> one) works just fine.
23:59:54 <b_jonas> fizzie: hmm. and it's a problem with the signal that you're feeding into it either, or a volume or balance setting somewhere, right?
2020-10-19
00:00:10 -!- FreeFull has quit.
00:01:17 <fizzie> I don't think so. Heaphones from the DAC that's feeding the speakers have both channels working. I guess it's still technically possible it's the specific speaker output of the DAC that's the problem. Probably should double-check by swapping the L/R cables next time it happens.
00:01:18 <b_jonas> also, my game boy cart screwdriver bit hasn't arrived. I'm looking at the shipping details, it says it's a tracked package up to 2020-08-24 when it entered Hungary, so it might be lost, but the estimated delivery date is 2020-08-25/2020-10-18 so I'll wait a bit more
00:01:59 <b_jonas> but that one is at least cheap, I ordered it from China on ebay knowing the risk that it might not arrive and I can just buy a new one
00:03:28 <b_jonas> ebay, as usual, doesn't allow reviewing items unless they arrive very soon, it's optimized for the US basically
00:03:39 <b_jonas> and for times without covid
00:04:11 <b_jonas> at least the batteries has arrived
00:04:54 <b_jonas> I should also ask around if anyone has that weird screwdriver bit and I can just borrow
00:05:35 -!- 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.”).
00:26:56 -!- adu has quit (Quit: adu).
00:58:21 -!- Frater_EST has joined.
01:03:12 -!- tromp has joined.
01:08:34 -!- tromp has quit (Ping timeout: 272 seconds).
01:29:40 -!- adu has joined.
01:33:16 -!- Sgeo_ has joined.
01:36:44 -!- Sgeo has quit (Ping timeout: 260 seconds).
01:38:03 -!- Sgeo__ has joined.
01:41:20 -!- Sgeo_ has quit (Ping timeout: 260 seconds).
01:57:44 -!- tromp has joined.
02:02:28 -!- tromp has quit (Ping timeout: 256 seconds).
02:24:04 -!- Frater_EST has left.
02:51:49 -!- tromp has joined.
02:56:21 -!- tromp has quit (Ping timeout: 258 seconds).
03:34:41 -!- delta23 has quit (Quit: Leaving).
03:45:59 -!- tromp has joined.
03:50:13 -!- tromp has quit (Ping timeout: 246 seconds).
03:50:18 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:09:39 -!- aaaaaa has quit (Quit: leaving).
04:40:05 -!- tromp has joined.
04:45:10 -!- tromp has quit (Ping timeout: 272 seconds).
04:58:27 -!- xgqt has joined.
05:34:15 -!- tromp has joined.
05:38:54 -!- tromp has quit (Ping timeout: 265 seconds).
05:55:44 <esowiki> [[User:Aryantech123]] N https://esolangs.org/w/index.php?oldid=78046 * Aryantech123 * (+202) sTUFF IG hIThUB
06:06:08 -!- adu has quit (Quit: adu).
06:17:21 <esowiki> [[Cut]] https://esolangs.org/w/index.php?diff=78047&oldid=71610 * Aryantech123 * (+389)
06:23:55 <esowiki> [[User:Aryantech123]] https://esolangs.org/w/index.php?diff=78048&oldid=78046 * Aryantech123 * (+241)
06:28:17 -!- tromp has joined.
06:33:04 -!- tromp has quit (Ping timeout: 260 seconds).
06:52:25 -!- sprocklem has quit (Ping timeout: 264 seconds).
06:57:16 -!- tromp has joined.
07:17:01 -!- Sgeo__ has quit (Read error: Connection reset by peer).
07:27:31 -!- arseniiv has joined.
08:07:59 <esowiki> [[Special:Log/newusers]] create * Ribethings * New user account
08:08:24 -!- hendursa1 has joined.
08:09:39 -!- rain1 has joined.
08:10:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:11:12 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=78049&oldid=78022 * Ribethings * (+173)
08:17:42 -!- cpressey has joined.
08:21:58 -!- deltaepsilon23 has joined.
08:22:54 -!- deltaepsilon23 has changed nick to delta23.
09:36:33 <b_jonas> in M:tG it's interesting how most combat buffs on a creature have basically the same cost if it's an instant that acts until end of turn or if it's an aura without flash. but +3/+3 is the big exception: as an instant it's Giant Growth for {G}, although that is considered somewhat cheap; as an aura it costs between two and three green mana
09:38:44 <b_jonas> Oakenform and Hardened-Scale Armor costs {2}{G}, but there are now similar auras for {2}{G} with an advantage: Elephant Guide and Boar Umbra and Moldervine Cloak
09:39:16 <b_jonas> and Vow of Wildness
10:12:24 -!- imode has quit (Ping timeout: 256 seconds).
10:13:13 -!- cpressey has quit (Quit: WeeChat 1.9.1).
10:32:47 -!- Frater_EST has joined.
10:41:16 -!- delta23 has changed nick to deltameo23.
10:41:46 -!- t20kdc has joined.
11:07:08 <esowiki> [[Talk:99]] N https://esolangs.org/w/index.php?oldid=78050 * SunnyMoon * (+133) Uh, how?
11:09:47 -!- deltameo23 has changed nick to delta23.
11:12:27 <t20kdc> uuuuuh, there is some sanity plan in place to ensure OpenStreetCode programs don't accidentally get uploaded to OSM, right? ...right?
11:23:44 <esowiki> [[A-gram]] https://esolangs.org/w/index.php?diff=78051&oldid=51194 * SunnyMoon * (+97) Linkify + Ignorance
11:31:30 <esowiki> [[A-gram]] https://esolangs.org/w/index.php?diff=78052&oldid=78051 * SunnyMoon * (+2) Clarification of commands
12:21:12 -!- delta23 has quit (Quit: Leaving).
12:48:09 -!- asie has quit (Quit: WeeChat 2.7.1).
12:49:37 -!- ski has joined.
13:05:15 <b_jonas> I have to work from home again. I set up my work laptop next to the new computer, so there's now a terrible tangled mess of cables on the desk.
13:25:16 -!- Frater_EST has left.
13:29:41 -!- hendursa1 has quit (Quit: hendursa1).
13:30:09 -!- hendursaga has joined.
13:32:56 <esowiki> [[User:Abyxlrz]] M https://esolangs.org/w/index.php?diff=78053&oldid=77133 * Abyxlrz * (-134) /* Esolang(s) */
13:34:17 -!- adu has joined.
13:34:45 -!- adu has quit (Client Quit).
13:41:56 <b_jonas> `olist 1217
13:41:58 <HackEso> olist https://www.giantitp.com/comics/oots1217.html: shachaf oerjan Sgeo FireFly boily nortti b_jonas
13:50:26 -!- Sgeo has joined.
14:00:12 -!- Arcorann has quit (Read error: Connection reset by peer).
14:10:53 <b_jonas> ais523: in M:tG, I wonder if the recent card Lithoform Engine helps in the kind of M:tG constructions that you make. it can copy almost any spell or ability (other than mana abilities), and has multiple uses. Especially because it's the easiest way to copy an enchantment many times.
14:12:22 <b_jonas> It doesn't match well with your existing construction, it's more something you'd have to build an engine around.
14:19:35 -!- Lord_of_Life has joined.
14:25:53 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
14:38:24 -!- Lord_of_Life has joined.
14:40:28 -!- Lord_of_Life has quit (Client Quit).
14:41:53 -!- Lord_of_Life has joined.
14:41:54 -!- Lord_of_Life has quit (Changing host).
14:41:54 -!- Lord_of_Life has joined.
15:51:26 -!- spruit11 has quit (Ping timeout: 272 seconds).
15:57:56 -!- FreeFull has joined.
16:01:56 <esowiki> [[Special:Log/newusers]] create * Delog! * New user account
16:02:08 -!- spruit11 has joined.
16:17:30 -!- MDude has joined.
16:33:59 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78054&oldid=78049 * Delog! * (+13)
16:34:03 <esowiki> [[DIASYS]] N https://esolangs.org/w/index.php?oldid=78055 * Delog! * (+1876) DIASYS EN LA FORT.
16:35:07 <esowiki> [[DIASYS]] https://esolangs.org/w/index.php?diff=78056&oldid=78055 * Delog! * (+25)
16:35:29 <esowiki> [[DIASYS]] https://esolangs.org/w/index.php?diff=78057&oldid=78056 * Delog! * (+3)
16:35:55 <esowiki> [[DIASYS]] https://esolangs.org/w/index.php?diff=78058&oldid=78057 * Delog! * (+1)
16:36:13 <esowiki> [[DIASYS]] https://esolangs.org/w/index.php?diff=78059&oldid=78058 * Delog! * (+6)
16:37:05 <esowiki> [[DIASYS]] https://esolangs.org/w/index.php?diff=78060&oldid=78059 * Delog! * (+1)
16:41:27 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78061&oldid=78033 * Delog! * (+13)
16:56:37 -!- spruit11 has quit (Ping timeout: 264 seconds).
16:58:46 -!- t20kdc has quit (Quit: Leaving).
17:01:57 -!- spruit11 has joined.
17:30:16 <esowiki> [[Special:Log/newusers]] create * Vgpfijzwm * New user account
17:30:55 -!- LKoen has joined.
17:32:56 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78062&oldid=78054 * Vgpfijzwm * (+96) /* Introductions */
17:34:16 <esowiki> [[Brainfuck]] https://esolangs.org/w/index.php?diff=78063&oldid=77994 * Vgpfijzwm * (-39621) Blanked the page
17:35:34 <user3456> uh oh
17:36:32 <esowiki> [[Brainfuck]] https://esolangs.org/w/index.php?diff=78064&oldid=78063 * Pipythonmc * (+39621) Undo revision 78063 by [[Special:Contributions/Vgpfijzwm|Vgpfijzwm]] ([[User talk:Vgpfijzwm|talk]])
17:41:55 <user3456> fizzie can you do something about this spam account please?
17:43:56 <esowiki> [[Special:Log/block]] block * Fizzie * blocked [[User:Vgpfijzwm]] with an expiration time of indefinite (account creation disabled): Removing content from pages
17:57:20 -!- sprocklem has joined.
17:58:06 -!- aaaaaa has joined.
17:59:39 <esowiki> [[Talk:DIASYS]] N https://esolangs.org/w/index.php?oldid=78065 * Pipythonmc * (+185) Talk page entry
18:57:42 -!- Lord_of_Life_ has joined.
18:58:25 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
18:59:55 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:00:22 -!- Pumawesome has joined.
19:00:33 <esowiki> [[DIASYS]] https://esolangs.org/w/index.php?diff=78066&oldid=78060 * Delog! * (-1912) Blanked the page
19:00:35 -!- Pumawesome has quit (Remote host closed the connection).
19:01:07 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78067&oldid=78061 * Delog! * (-13)
19:19:07 -!- arseniiv has quit (Ping timeout: 246 seconds).
19:22:38 -!- imode has joined.
19:48:17 -!- arseniiv has joined.
20:06:38 <esowiki> [[Talk:99]] M https://esolangs.org/w/index.php?diff=78068&oldid=78050 * PythonshellDebugwindow * (+438) Reply to question
20:27:13 -!- arseniiv has quit (Ping timeout: 264 seconds).
21:00:21 <esowiki> [[OpenStreetCode]] M https://esolangs.org/w/index.php?diff=78069&oldid=78041 * PythonshellDebugwindow * (+45) /* Text */ Add missing categories
21:27:46 -!- Lord_of_Life has quit (Read error: Connection reset by peer).
21:29:49 -!- Lord_of_Life has joined.
21:29:49 -!- Lord_of_Life has quit (Changing host).
21:29:49 -!- Lord_of_Life has joined.
21:42:06 -!- 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.”).
22:08:09 -!- Arcorann has joined.
22:08:29 <esowiki> [[User:Ribethings]] N https://esolangs.org/w/index.php?oldid=78070 * Ribethings * (+1) Created page with "k"
22:08:42 -!- Arcorann has quit (Remote host closed the connection).
22:09:09 -!- Arcorann has joined.
22:26:15 <esowiki> [[Trueclone]] M https://esolangs.org/w/index.php?diff=78071&oldid=76617 * Ribethings * (-41)
22:36:30 -!- Sgeo has quit (Read error: Connection reset by peer).
22:40:26 -!- Sgeo has joined.
22:55:53 <esowiki> [[User:Emerald]] https://esolangs.org/w/index.php?diff=78072&oldid=77465 * Emerald * (+43) /* Languages I made: */
23:05:18 <esowiki> [[Dig 2]] N https://esolangs.org/w/index.php?oldid=78073 * Emerald * (+86) Made
23:06:09 <esowiki> [[User:Emerald]] https://esolangs.org/w/index.php?diff=78074&oldid=78072 * Emerald * (+10) /* Dig 2 (WIP) */
23:15:33 <esowiki> [[Dig 2]] https://esolangs.org/w/index.php?diff=78075&oldid=78073 * Emerald * (+1286) Dig commands
23:20:35 <esowiki> [[Maze]] https://esolangs.org/w/index.php?diff=78076&oldid=38908 * Breadbunbun * (+0) /* External resources */
23:30:56 -!- ATMunn has quit (Ping timeout: 265 seconds).
23:32:07 -!- iovoid has quit (Ping timeout: 260 seconds).
23:32:13 -!- moony has quit (Ping timeout: 260 seconds).
23:32:13 -!- Bowserinator has quit (Ping timeout: 258 seconds).
23:38:44 -!- FreeFull has quit.
23:47:42 -!- moony has joined.
23:50:04 -!- ATMunn has joined.
23:53:08 -!- Bowserinator has joined.
23:53:41 -!- iovoid has joined.
2020-10-20
02:24:17 -!- aaaaaa has quit (Quit: leaving).
03:24:11 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
04:32:13 -!- spruit11 has quit (Quit: Lost terminal).
04:32:40 -!- xelxebar has quit (Read error: Connection reset by peer).
04:32:57 -!- xelxebar has joined.
04:39:59 -!- hendursaga has quit (Remote host closed the connection).
04:41:49 -!- hendursaga has joined.
07:06:49 -!- sprocklem has quit (Ping timeout: 246 seconds).
07:10:14 -!- Sgeo has quit (Read error: Connection reset by peer).
08:11:54 -!- t20kdc has joined.
08:18:32 -!- cpressey has joined.
08:35:23 -!- user24 has joined.
09:01:03 <esowiki> [[Marthue]] https://esolangs.org/w/index.php?diff=78077&oldid=77694 * Yoel * (+26)
09:04:13 <esowiki> [[Nutes]] https://esolangs.org/w/index.php?diff=78078&oldid=73290 * Yoel * (-9)
09:15:50 -!- spruit11 has joined.
09:21:56 <esowiki> [[Maze]] https://esolangs.org/w/index.php?diff=78079&oldid=78076 * Breadbunbun * (-5) /* External resources */
09:23:28 <esowiki> [[Maze]] https://esolangs.org/w/index.php?diff=78080&oldid=78079 * Breadbunbun * (+2) /* External resources */
09:25:00 -!- tswett[m] has quit (Quit: killed).
09:25:15 -!- wmww has quit (Quit: killed).
09:25:17 -!- Discordian[m] has quit (Quit: killed).
09:27:10 -!- sebbu has quit (Ping timeout: 240 seconds).
09:27:45 -!- sebbu has joined.
09:28:27 <esowiki> [[Maze]] https://esolangs.org/w/index.php?diff=78081&oldid=78080 * Breadbunbun * (+74) /* External resources */
09:34:41 -!- iscordian[m] has joined.
09:50:37 -!- imode has quit (Ping timeout: 264 seconds).
09:51:55 <esowiki> [[Nutes]] https://esolangs.org/w/index.php?diff=78082&oldid=78078 * Yoel * (-415)
09:52:32 -!- arseniiv has joined.
09:58:20 -!- tswett[m] has joined.
09:58:20 -!- wmww has joined.
10:01:40 -!- Lord_of_Life_ has joined.
10:03:54 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
10:04:01 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
10:15:42 -!- iscordian[m] has changed nick to Discordian[m].
10:51:39 -!- MDude has joined.
11:08:54 -!- cpressey has quit (Quit: WeeChat 1.9.1).
11:37:42 -!- user24 has quit (Quit: Leaving).
12:34:38 <esowiki> [[Linear bounded brainfuck]] M https://esolangs.org/w/index.php?diff=78083&oldid=74455 * PythonshellDebugwindow * (+12) /* Truth-machine */ Fix the truth-machine so it outputs ASCII 48/49
12:50:31 -!- MDude has quit (Ping timeout: 246 seconds).
13:06:39 -!- Lord_of_Life has quit (Changing host).
13:06:39 -!- Lord_of_Life has joined.
13:20:03 -!- moony has quit (Quit: Bye!).
13:20:03 -!- ATMunn has quit (Quit: lol rip).
13:20:03 -!- Bowserinator has quit (Quit: Blame iczero something happened).
13:20:03 -!- iovoid has quit (Quit: iovoid has quit!).
13:44:31 -!- Arcorann has quit (Read error: Connection reset by peer).
13:51:59 -!- Sgeo has joined.
15:03:48 -!- ATMunn has joined.
15:09:48 -!- ATMunn has quit (Quit: lol rip).
15:14:26 -!- ATMunn has joined.
15:15:09 -!- Bowserinator has joined.
15:16:43 -!- FreeFull has joined.
15:21:27 -!- iovoid has joined.
15:21:55 -!- moony has joined.
15:41:47 -!- rain1 has quit (Quit: Leaving).
15:51:14 -!- rain1 has joined.
16:29:59 -!- evade has joined.
16:39:11 -!- LKoen has joined.
16:46:24 <esowiki> [[Talk:NoRAL]] N https://esolangs.org/w/index.php?oldid=78084 * DMC * (+53) Created page with "Wow! Somebody added a Javascript interpreter! Thanks!"
16:49:55 <esowiki> [[Bitter]] M https://esolangs.org/w/index.php?diff=78085&oldid=76634 * DMC * (-36) /* Orthodox Bitter */
17:12:38 <esowiki> [[Talk:NoRAL]] M https://esolangs.org/w/index.php?diff=78086&oldid=78084 * DMC * (+212)
17:14:00 -!- tromp has quit (Remote host closed the connection).
17:16:33 <esowiki> [[User:DMC]] M https://esolangs.org/w/index.php?diff=78087&oldid=67606 * DMC * (-24)
17:38:41 -!- user24 has joined.
17:47:17 -!- aaaaaa has joined.
17:52:10 -!- tromp has joined.
18:17:18 <esowiki> [[PixelCode]] M https://esolangs.org/w/index.php?diff=78088&oldid=77996 * Voltage2007 * (+180)
18:24:58 -!- tromp has quit (Remote host closed the connection).
18:25:11 -!- tromp has joined.
18:52:52 -!- ATMunn has quit (Quit: lol rip).
18:52:52 -!- moony has quit (Quit: Bye!).
18:52:52 -!- iovoid has quit (Quit: iovoid has quit!).
18:52:52 -!- Bowserinator has quit (Quit: Blame iczero something happened).
18:54:10 -!- user24 has quit (Quit: Leaving).
18:59:14 -!- ATMunn has joined.
18:59:49 -!- Bowserinator has joined.
19:05:45 -!- iovoid has joined.
19:06:13 -!- moony has joined.
20:26:05 -!- sprocklem has joined.
20:36:04 -!- t20kdc has quit (Quit: Far beyond this world I've known, far beyond this time...).
21:32:47 -!- evade has quit (Ping timeout: 260 seconds).
21:35:30 -!- aaaaaa has quit (Quit: leaving).
22:01:49 -!- tromp has quit (Remote host closed the connection).
22:12:07 -!- FreeFull has quit.
22:13:51 -!- Arcorann has joined.
22:17:00 -!- 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.”).
22:41:17 -!- tromp has joined.
22:46:19 -!- tromp has quit (Ping timeout: 265 seconds).
23:00:15 <esowiki> [[Nutes]] https://esolangs.org/w/index.php?diff=78089&oldid=78082 * Yoel * (+3)
23:28:47 -!- arseniiv has quit (Quit: gone too far).
23:35:46 -!- tromp has joined.
23:40:36 -!- tromp has quit (Ping timeout: 256 seconds).
2020-10-21
00:03:52 -!- sftp has quit (Ping timeout: 244 seconds).
00:12:49 -!- sftp has joined.
00:29:52 -!- tromp has joined.
00:34:25 -!- tromp has quit (Ping timeout: 264 seconds).
01:14:37 -!- sprocklem has quit (Ping timeout: 246 seconds).
01:23:59 -!- tromp has joined.
01:26:10 -!- ais523 has joined.
01:26:39 <ais523> I wonder why there isn't a cryptographic hash designed to be collision-resistant, but intentionally not preimage-resistant
01:27:10 <ais523> the idea would be that posting such a hash would be a way of saying, effectively, "I want you to have access to the data that this hash is pointing to"
01:28:01 <ais523> I guess this is technically just a compression function, in the gzip/bzip2 sense, but it would also allow for, say, having the file stored somewhere on the Internet, together with a download URL and a cryptographic hash for verifying you had the right file
01:28:34 -!- tromp has quit (Ping timeout: 260 seconds).
01:29:40 <zzo38> Yes, magnet: URI does some of those things, but if you would have such a hash function available, you could use it in the magnet: URI maybe
01:32:26 <zzo38> Although I probably do not fully understand, anyways
01:35:55 <zzo38> It does seem like it would do what you said.
01:56:17 <shachaf> ais523: What's the benefit of not having it be preimage-resistant in that scenario?
02:18:08 -!- tromp has joined.
02:22:25 -!- tromp has quit (Ping timeout: 240 seconds).
02:24:00 -!- imode has joined.
03:12:07 -!- tromp has joined.
03:14:08 -!- moony has quit (Remote host closed the connection).
03:15:31 -!- iovoid has quit (Ping timeout: 272 seconds).
03:16:50 -!- tromp has quit (Ping timeout: 256 seconds).
03:19:11 -!- iovoid has joined.
03:21:37 -!- moony has joined.
03:36:23 <ais523> <shachaf> ais523: What's the benefit of not having it be preimage-resistant in that scenario? ← giving the hash to someone would be evidence that you wanted them to have the data, so there are no security implications of reversing the hash
03:36:42 <ais523> e.g., if you have a file on your system that matches the hash, you could safely give it to anyone who gave you the hash
03:38:14 <shachaf> I don't follow. Can't you just decide on that rule, if you want to use the hash that way?
03:38:40 <shachaf> If you have a 256-bit hash and a 256MB file, the fact that people can find a preimage (or even enumerate all preimages) doesn't help them get the file at all.
03:39:37 <ais523> someone having possession of, say, an SHA-256 hash of a file doesn't imply anything about whether they're supposed to have the file or not
03:40:09 <ais523> if the hash is designed not to be preimage-resistant, then possession of the hash does imply that you're meant to have access to the file
03:40:49 <ais523> because the person who made the hash has the file, and could have given it to them; and if they weren't meant to be giving access to the file at the same time, they would use a hash that was preimage-resistant
03:43:21 <ais523> the intended idea behind this, by the way, was for a hypothetical OS with much tighter permissions control than, say, Linux or Windows
03:43:27 <ais523> where programs only had access to what they needed
03:43:47 <ais523> the idea was that the programs could store some sort of hash for files that they didn't "own", allowing them to read them
03:44:23 <ais523> but that you would need to be able to prove that possession of the hash implied it was safe to give the possessor the file itself
03:45:32 <zzo38> O, OK. Now I understand (I think).
03:47:03 <int-e> So, hrm... you want capabilities that can be persistent?
03:47:09 <ais523> preimage-resistant hashes are often used to prove that you have a file without intending to give the file to the person you give the hash to, so in order to prevent it being used for that purpose, it has to be non-preimage-resistant
03:47:13 <ais523> int-e: yes, that's a good way to think about it
03:47:20 <ais523> like a capability for access to information
03:48:47 <shachaf> So you wouldn't actually use the non-preimage-resistance for anything?
03:49:48 <shachaf> It seems like you can just use SHA-256 for this, and only give people hashes of files if you want them to have access.
03:50:02 <shachaf> I guess you can use SHA-256 with a different starting state or something.
03:50:35 <zzo38> It seem to me that at least preimage resistance is not necessary for this case, but that a different hash is wanted to tell the difference of its use; I suppose SHA-256 with a different starting state might work, maybe
03:50:50 <int-e> Yeah, content-addressable memory is the other keyword that came to my mind.
03:51:22 <shachaf> I feel like I want there to be as few cryptographic primitves as possible and have them be simple and flexible.
03:51:51 <int-e> (where "memory" is generic, could be a file system, could even be a distributed file sharing thing))
03:52:32 <zzo38> (Is SHA-256 different-starting-state-resistance?)
03:52:50 <shachaf> When is NIST-or-whoever going to standardize an unkeyed permutation?
03:53:04 <shachaf> That seems like the best symmetric primitive to me.
03:54:36 <ais523> you could construct something like this quite simply, e.g. concatenate a file's SHA-256, SHA-1, MD5, and the first 16 bytes of the file
03:54:58 <ais523> that clearly leaks information about the underlying file, and is clearly at least as collision-resistant as SHA-256 is
03:55:14 <ais523> (the SHA-1 and MD5 make it easier to find random copies of the file that might be floating around online)
03:55:48 -!- sprocklem has joined.
04:06:29 -!- tromp has joined.
04:08:10 <zzo38> Yes, there is that. Does a magnet URI allow you to specify all of that stuff in one URI?
04:10:54 -!- tromp has quit (Ping timeout: 256 seconds).
04:11:03 <ais523> actually the magnet URI is the sort of thing I was looking for
04:13:03 <zzo38> I know that you can specify a single hash in a magnet URI, but I don't know if you can specify multiple hashes for the same file.
04:15:11 <ais523> it's not clear to me whether the format allows the same key to be given multiple times to give it multiple values
04:15:37 <ais523> also, there seems to be some sort of standardisation mismatch, you can specify an SHA-1 hash in a magnet URI with xt=urn:sha1:hash
04:15:47 <ais523> but sha1 is not an officially registered URN namespace
04:16:24 <zzo38> Yes, as far as I can tell no hash codes are officially registered URN namespaces
04:19:42 <ais523> I'm semi-seriously considering sending off a request to IANA to add some
04:20:57 <ais523> or two, sha1 seems to be most widely used for this, but we would ideally want a hash function that isn't broken as an option
04:21:03 <ais523> (or at least, isn't known to be broken)
04:30:42 <ais523> perhaps urn:sha1: wouldn't be accepted because of the potential for two different file to have the same URN
04:31:36 <ais523> it would need to be defined very carefully, e.g. saying that the URN referred to the only file in existence that had that hash at the time the URN was first created, and that creating such a URN is not valid if two different files with the same hash exist
04:36:46 <zzo38> I think that it could still work; the URN refers to the hash itself, not to the file.
04:39:29 <ais523> hmm, that's an interesting concept
04:39:36 <ais523> the URN would clearly be more useful if it referred to the file
04:41:25 <ais523> huh, something I learned today: the attacks on SHA-1 are still improving, Wikipedia says that with the latest techniques, a chosen-prefix collision on SHA-1 would cost about US$45000 of computer time
04:43:44 <shachaf> How much is that attacks getting better vs. GPUs or something getting better?
04:47:34 <ais523> most of it is attacks getting better
05:00:25 -!- tromp has joined.
05:04:34 -!- tromp has quit (Ping timeout: 246 seconds).
05:45:14 -!- ais523 has quit (Quit: quit).
05:54:33 -!- tromp has joined.
05:59:23 -!- tromp has quit (Ping timeout: 265 seconds).
06:48:45 -!- tromp has joined.
06:53:23 -!- tromp has quit (Ping timeout: 260 seconds).
06:56:27 -!- tromp has joined.
07:01:41 -!- int-e has quit (Remote host closed the connection).
07:02:37 -!- int-e has joined.
07:04:46 -!- lambdabot has quit (Remote host closed the connection).
07:07:35 -!- lambdabot has joined.
07:07:59 -!- imode has quit (Ping timeout: 260 seconds).
07:10:58 -!- Sgeo has quit (Read error: Connection reset by peer).
07:28:16 <int-e> @bot
07:28:16 <lambdabot> :)
07:28:36 <int-e> fungot: hi
07:28:36 <fungot> int-e: they are trying to solve here? going to throw away
08:06:40 -!- user24 has joined.
08:07:57 <user24> Is anyone aware of a left-total esolang other than Zot? (All possible input strings are syntactically valid)
08:09:05 -!- hendursa1 has joined.
08:10:54 <user24> *programs
08:11:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:37:34 <int-e> How about Malbolge
08:39:34 <esowiki> [[Special:Log/newusers]] create * Tuan2090 * New user account
08:47:51 <myname> well, if you count comments, most of them are?
08:48:05 <myname> like, bf ignores non-command chars in most implementations
08:56:28 <user24> true
08:57:03 <myname> you could argue wether or not a bf program with unbalanced brackets is syntacticaly valid
08:57:10 <user24> yeah
08:57:11 <myname> i say, they are
08:58:06 <user24> i'm thinking about all possible binary mappings. Iterate from 0 to limit, input the (n-ary) form of this number into the program and plot the relation between the inputs and the outputs somehow
08:59:00 <user24> *input into the program => use this as the program
08:59:52 <user24> somewhat unrelated: http://wry.me/hacking/Turing-Drawings
09:15:43 -!- sprocklem has quit (Ping timeout: 260 seconds).
09:16:04 -!- izabera has quit (K-Lined).
09:19:03 -!- izabera has joined.
09:23:43 -!- hendursa1 has quit (Ping timeout: 240 seconds).
09:25:17 -!- hendursa1 has joined.
09:33:45 -!- t20kdc has joined.
09:34:38 <rain1> /j #minecraft
09:47:09 <int-e> /joy
10:01:10 -!- Lord_of_Life_ has joined.
10:04:06 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
10:04:10 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
10:24:54 -!- ATMunn has quit (Quit: lol rip).
10:27:10 -!- user24 has quit (Quit: Leaving).
10:27:51 -!- ATMunn has joined.
10:38:51 -!- Lord_of_Life has quit (Read error: Connection reset by peer).
10:39:18 -!- Lord_of_Life has joined.
10:39:18 -!- Lord_of_Life has quit (Changing host).
10:39:18 -!- Lord_of_Life has joined.
11:04:17 -!- orbitaldecay has quit (Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in).
11:16:07 -!- tromp has quit (Remote host closed the connection).
11:20:12 <esowiki> [[Brainflub]] https://esolangs.org/w/index.php?diff=78090&oldid=78023 * Aryantech123 * (+190)
11:30:09 -!- iovoid has quit (Quit: iovoid has quit!).
11:32:51 -!- iovoid has joined.
11:52:11 -!- tromp has joined.
12:10:14 <esowiki> [[Conglument]] M https://esolangs.org/w/index.php?diff=78091&oldid=77224 * Hakerh400 * (+0)
12:29:56 <esowiki> [[Deklare]] M https://esolangs.org/w/index.php?diff=78092&oldid=75763 * PythonshellDebugwindow * (+3) /* The arithmetic system */ Correct documentation (equality -> assignment)
12:44:30 <fizzie> From elsewhere, but the animation's nice: https://twitter.com/AlanZucconi/status/1315967202797981696
12:48:31 -!- ski has quit (Ping timeout: 260 seconds).
12:50:28 -!- ski has joined.
13:01:42 -!- hendursa1 has quit (Quit: hendursa1).
13:01:59 -!- hendursaga has joined.
13:14:05 <esowiki> [[User:ThisIsTheFoxe]] https://esolangs.org/w/index.php?diff=78093&oldid=77895 * ThisIsTheFoxe * (+1512) added HTPL/HTPF section
13:55:28 -!- Sgeo has joined.
14:03:10 -!- Arcorann has quit (Read error: Connection reset by peer).
14:22:02 <b_jonas> ais523: I've been imagining something similar. suppose aliens start selling a magical box cheaply and in large numbers. this magical box has an ethernet connection, and you can do two things with it. either you upload a file, to which it gives you an unpredictable digest (which may be pure random, or a cryptographically good trap function with a key that we can't extract from the box and a seed that's
14:22:08 <b_jonas> new every time, there's no way to tell), or give the box a digest, and if anyone has got that digest from any box anywhere, it gives you the corresponding file.
14:23:34 <b_jonas> this would be the ultimate compression scheme, so suddenly most computers (including photo cameras and such) wouldn't need high capacity storage devices, or high bandwidth internet connections. some specialty high performance applications would still use traditional hard disks and SSDs, when the bandwidth and latency of the box is too small, or for old-style people like me who don't trust any new
14:23:40 <b_jonas> technology.
14:24:17 <b_jonas> there might be a size limit for files you can upload, but it doesn't matter, you can always just upload it in chunks and upload a tree indexed by digests and transmit the digest of the root.
14:25:36 <b_jonas> physics probably bans this because of entropy stuff, but it at least still doesn't let you send signals faster than light speed, because the digests are long and random enough that you can't randomly guess the digest of any file someone else has uploaded without learning the digest indirectly from the box.
14:27:15 <b_jonas> this would let us simulate really large (but not necessarily extra-fast) hard disks that are easy to back up, because you'd only need to carry a digest to save the entire backup
14:27:52 <b_jonas> but it doesn't give you writable storage: if you want remote backups every day, you have to send a new digest to the remote location every day.
14:28:47 <b_jonas> also having a digest would essentially count as proof that you have the data that it points to, like for proving that you have gotten access to industrial secrets or copyright-protected information
14:29:20 <b_jonas> so you could have very short bits of information that you aren't allowed to distribute
14:30:32 <b_jonas> it would also help connect places where it's currently expensive to set up high bandwidth data connections for practical reasons, like in isolated places or between continents or to space
14:38:37 <b_jonas> also none of the properties would break if the digest was unseeded (so it gave the same result if two people upload the same data), and even computed by a known hash function that is cryptographically safe (eg. the aliens describe how to compute the hash function in the manual), but somehow I always imagine the digest as not reproducible, because that's somehow more believable
14:39:23 <b_jonas> you could even have it so that you don't need to upload anything to the box, as long as you have a file and compute its digest using the safe crypto hash function that the aliens specify in the manual, it's enough for anyone to download, which seems even more magical but doesn't seem to break anything
14:40:08 <esowiki> [[Works in progress]] https://esolangs.org/w/index.php?diff=78094&oldid=72175 * WhyNot? * (+15)
14:42:29 <b_jonas> but of course the digest has to be long enough to be secure from a birthday attack on an expensive fast parallelized GPU cluster
14:43:05 <b_jonas> even with any technology we or the aliens may have in the future
14:58:30 <b_jonas> mind you, if they work with a public hash function, but the boxes were so expensive we can't afford even a single one, yet we had access to a manual and knew that the boxes work, then we'd at least have a guaranteed crytographically secure hash function, which would be a nice consolation prize
14:58:47 <b_jonas> (until of course they destroy everyone with a death ray)
15:16:22 -!- t20kdc has quit (Ping timeout: 246 seconds).
15:19:19 <b_jonas> of course the device must be impossible to reverse-engineer, and if it communicates with other instances of the devices, then it has to do so such that we can't gain information from it, especially not about what files are uploaded or downloaded or their digests
15:19:33 <b_jonas> and it must be rectangular and painted black
15:21:15 -!- tromp has quit (Remote host closed the connection).
15:53:35 -!- tromp has joined.
15:58:22 -!- tromp has quit (Ping timeout: 246 seconds).
16:02:20 -!- tromp has joined.
16:03:58 -!- FreeFull has joined.
16:09:20 -!- xgqt has quit (Read error: Connection reset by peer).
16:13:34 -!- sebbu2 has joined.
16:16:22 -!- LKoen has joined.
16:16:25 -!- sebbu has quit (Ping timeout: 264 seconds).
16:24:22 -!- sebbu2 has changed nick to sebbu3.
16:24:34 -!- sebbu3 has changed nick to sebbu.
17:20:35 -!- t20kdc has joined.
18:10:29 -!- xgqt has joined.
19:00:50 -!- LKoen has quit (Remote host closed the connection).
19:37:56 -!- imode has joined.
20:35:16 -!- sprocklem has joined.
20:47:51 <esowiki> [[User:PythonshellDebugwindow]] M https://esolangs.org/w/index.php?diff=78095&oldid=78032 * PythonshellDebugwindow * (+45)
20:52:03 -!- user24 has joined.
21:18:09 <rain1> https://stackoverflow.com/questions/50966676/why-do-arm-chips-have-an-instruction-with-javascript-in-the-name-fjcvtzs
21:28:57 -!- t20kdc has quit (Remote host closed the connection).
21:30:10 <b_jonas> rain1: yeah, those are useful. the float to fix instructions on x86 suck really.
21:30:20 <b_jonas> it's useful not only for javascript.
21:30:51 <b_jonas> there are conversion instructions, but not ones that round to highest or lowest integer value on over/underflow, which is the behavior you often want
21:34:05 -!- deltaepsilon23 has joined.
21:34:32 -!- deltaepsilon23 has changed nick to delta23.
21:44:54 <zzo38> I thought make up a kind of compression for restaurant menu texts. It could be done using existing compression formats, with preset dictionaries and whatever, but also could be new ones; either way, would also be the base format which would pack the data to be optimized in the format.
21:50:38 -!- user24 has quit (Quit: Leaving).
22:04:37 -!- aaaaaa has joined.
22:05:12 <aaaaaa> Impact of order of files in tar archive on compressed size https://yurichev.com/news/20201021_tar_order/
22:09:20 <zzo38> I think 7-Zip normally uses solid compression separately per filename extension.
22:09:35 <aaaaaa> zzo38: interesting
22:13:21 -!- FreeFull has quit (Read error: Connection reset by peer).
22:26:07 <b_jonas> zzo38: no, I think it just uses solid compression in blocks, and sorts files by default though you can override that, and the default sort order has changed "recently" (last ten years)
22:27:02 <b_jonas> zzo38: https://www.7-zip.org/faq.html
22:29:14 -!- FreeFull has joined.
22:29:45 <zzo38> O, OK, now I read that
22:32:24 <b_jonas> zzo38: and you can give the -mqs=off option to disable sorting if you specify an explicit list of files that you sort in some good way
22:34:43 -!- Arcorann has joined.
22:59:00 -!- FreeFull has quit.
23:11:05 -!- Arcorann has quit (Read error: Connection reset by peer).
23:11:34 -!- Arcorann has joined.
23:50:25 -!- LKoen has joined.
23:58:52 -!- esowiki has quit (Ping timeout: 260 seconds).
2020-10-22
00:00:29 -!- esowiki1 has joined.
00:03:37 -!- esowiki has quit (Ping timeout: 260 seconds).
00:04:23 -!- esowiki1 has changed nick to esowiki.
00:45:13 -!- Lord_of_Life has quit (Ping timeout: 264 seconds).
00:49:11 -!- Lord_of_Life has joined.
01:09:45 -!- 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.”).
02:49:04 -!- delta23 has quit (Quit: Leaving).
03:25:12 -!- aaaaaa has quit (Quit: leaving).
03:42:56 <zzo38> C doesn't have macros that are expanded only where a variable name is expected (similar to vardef in METAFONT).
04:28:22 <zzo38> I have read that cell phones cannot send/receive faxes due to the codec in use, but is the codec compatible with slow scan format?
04:35:15 -!- adu has joined.
05:07:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
06:20:39 -!- hendursaga has joined.
06:46:25 -!- imode has quit (Ping timeout: 264 seconds).
06:59:46 -!- adu has quit (Quit: adu).
07:16:25 -!- Lord_of_Life has quit (Changing host).
07:16:25 -!- Lord_of_Life has joined.
07:18:04 -!- Sgeo has quit (Read error: Connection reset by peer).
07:50:51 -!- moony has quit (Remote host closed the connection).
07:52:56 -!- moony has joined.
08:01:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:07:34 -!- hendursaga has joined.
08:15:59 -!- hendursa1 has joined.
08:18:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:22:43 -!- hendursa1 has quit (Ping timeout: 240 seconds).
08:26:05 -!- t20kdc has joined.
08:38:46 -!- cpressey has joined.
08:40:38 -!- hendursa1 has joined.
08:40:52 -!- hendursa1 has quit (Remote host closed the connection).
08:41:38 -!- hendursa1 has joined.
08:46:57 <cpressey> Good morning.
08:47:09 <cpressey> Defining a function is like adding an axiom, in the sense that it asserts that the hitherto-meaningless name of the function now has such-and-such meaning.
08:48:45 <rain1> morning!
08:52:46 <Taneb> cpressey: I think it's more analogous to stating a theorem
08:52:58 <Taneb> With adding a builtin function like adding an axiom
08:56:48 <cpressey> Most of the functions I write surely aren't theorems
09:00:22 -!- Arcorann_ has joined.
09:00:25 -!- Arcorann has quit (Ping timeout: 240 seconds).
09:01:13 <Taneb> They might just not be very good theorems
09:01:57 <int-e> There's a definitional principle by specification: If you prove (exists x. P(x)), then that allows you to introduce a fresh constant k, and assert P(k) as an axiom.
09:02:41 <int-e> The proof of exists x. P(x) is fairly trivial if P(x) has the form x = foo with x not occurring in foo.
09:09:57 <int-e> Hmm. I believe Isabelle/Pure really only has the special case of definition by equality. Isabelle/HOL adds a Hilbert choice operator, so you get the specification principle by defining k = SOME x. P(x), and noting that exists x. P(x) ==> P(SOME x. P(x)) <==> P(k).
09:10:17 <rain1> \x. x has type P -> P which is the tautology theorem
09:10:22 <int-e> No clue about other interactive theorem provers.
09:10:55 <rain1> \f. \g. \x. g(f(x)) has type (P -> Q) -> (Q -> R) -> (P -> R) which is a tautology
09:11:10 <int-e> Especially the dependently typed ones.
09:11:15 <rain1> if you read -> as implies it works
09:12:05 <int-e> rain1: not sure what your point is
09:12:29 <int-e> @djinn (p -> q) -> (q -> r) -> p -> r
09:12:29 <lambdabot> f a b c = b (a c)
09:12:32 <rain1> it's for cpressey to see why functions are proofs of theorems
09:12:58 <rain1> just a couple simple examples
09:13:10 <int-e> But that is entirely independent of how you deal with definitions.
09:13:44 <cpressey> There are lots of functions which are not proofs of theorems.
09:13:45 <int-e> And you want proper definitions in every practical proof framework because they are crucial for compression.
09:13:52 <int-e> That, and lemmas.
09:14:11 <int-e> (Which may be the same if you have dependent types.)
09:14:50 <rain1> cpressey, that is true...
09:14:52 <int-e> In *theory*, of course you can treat definitions and lemmas as abbreviations to be unfolded.
09:14:57 <rain1> like, infinite loops
09:15:25 <rain1> but if you stick to functions with no infinite loops they can be read as theorems (even if they are often boring ones)
09:15:49 <Taneb> I think all functions are proofs of theorems, just not necessarily in a consistent logic
09:16:05 <cpressey> "can be read as theorems that no one cares about", I won't argue with that
09:16:08 <int-e> Most of the functions I write are broing when viewed as theorems.
09:17:02 <int-e> When I write a function of type Nat -> Nat, I usually care about the values. But usually not enough to try to specify what they are in the type.
09:17:34 <int-e> So... functions are more than just proofs.
09:18:18 <cpressey> If I use a dynamically typed language, then I am using a "degenerate type system with only one type" in the view of type theory, and I imagine that make it difficult to form any interesting proofs. But I can *program* in it just fine.
09:18:41 <Taneb> I still assert that functions are far more like theorems than axioms
09:18:50 <int-e> And yes, indeed, the potential for nontermination makes the picture of functions as proofs even more inaccurate.
09:19:09 <int-e> Taneb: It's not about functions, at least not as I read it.
09:19:52 <int-e> Taneb: It's about giving a *name* to a value, which is the essence of a definition of a function.
09:21:33 <int-e> Of course this is my own interpretation of something cpressey wrote. I don't know whether it's the intended one.
09:22:51 <cpressey> int-e: I feel like I *kind of* follow your explanation with P(x), if, to prove that x (for example factorial) exists you only need to supply the definition of it (a term exists that we can call "factorial")
09:23:26 <cpressey> I suppose that's a kind of existence proof.
09:24:33 <cpressey> But then, what is P() in general? It seems like it could be the evaluation relation for your environment?
09:25:05 <int-e> Yes.
09:25:21 <cpressey> OK, then I probably follow you.
09:25:31 <int-e> it could be... P(f) <--> f(0) = 1 /\ forall x. f(x+1) = f(x)*(x+1)
09:28:15 <int-e> (Which specifies the factorial function, assuming f : nat -> nat, but makes existence of f non-trivial.)
09:28:28 <rain1> yes functions are more than just their types
09:28:50 <rain1> types are just a blueprint of what the function does structurally
09:30:31 <int-e> cpressey: What I'm saying is very much inspired by how Isabelle/HOL deals with these things.
09:32:23 <int-e> For example, there is a function definition package that *can* deal with the above specification of the factorial function. Internally it'll extract a dependency relation (here, x+1 -> x; in general those will be tuples of all the arguments) and shows that it is well-founded (for which it has various heuristics)... and then one can show that f exists by induction on that relation.
09:32:49 <int-e> (This is not entirely accurate, but close enough for an overview.)
09:34:09 <int-e> hmm. let's s/overview/outline/
09:35:07 <rain1> although some functions are uniquely determined by their type
09:35:25 <rain1> up to extraneous lambda terms and other "nothings"
09:36:45 <cpressey> rain1: Yeah, and even when it's not uniquely determined, you get at least one theorem "for free" by parametricity, as I understand it.
09:37:29 <int-e> @djinn (a -> a) -> a -> a
09:37:29 <lambdabot> f a = a
09:37:49 <rain1> that's true! parametricity is pretty amazing
09:37:59 <int-e> (unsurprisingly, the preferred Church numberal is 1.)
09:38:06 <rain1> if a function works for all types you know it doesn't inspect and case analysis on data of that type
09:38:14 <rain1> which lets you say a lot about a function
09:38:24 <int-e> "numberal". Finally a typo that makes sense.
09:38:40 <int-e> @free (a -> a) -> a -> a
09:38:40 <lambdabot> Try `free <ident>` or `free <ident> :: <type>`
09:38:50 <int-e> @free church :: (a -> a) -> a -> a
09:38:50 <lambdabot> f . g = h . f => f . church g = church h . f
09:39:23 <int-e> induction, more or less.
09:41:22 <rain1> wow i never knew that!
09:41:24 <rain1> that's cool
09:46:24 <cpressey> On the other hand, it's possible for a function to uphold an invariant that cannot be captured by any type.
10:17:46 -!- HaJones has joined.
10:21:24 <b_jonas> cpressey: definitions aren't like axioms in that they don't let you prove things that were meaningful but you couldn't have proved from your existing axioms.
10:23:50 <int-e> spoken like a logician
10:29:43 <cpressey> My comparison to axioms was meant to highlight that before you give the definition of factorial there's no way in hell you can deduce the truth or falisty of the statement "factorial(5)=120"
11:22:09 -!- ais523 has joined.
11:22:24 <ais523> b_jonas: you can imagine a modification of, say, the SHA-1 or SHA-256 algorithm
11:22:52 <ais523> in which the final step is "check if this hash has ever been output for a different input file; if so, increment the hash and repeat this step"
11:23:06 <ais523> now you have an algorithm that is precisely defined and collision-free
11:23:11 <ais523> (if a little difficult to use in practice)
11:23:16 <ais523> this seems quite similar to what your magic box is doing
11:23:26 <ais523> (although not the same, obviously)
11:23:38 <b_jonas> ais523: I'm not sure if it's well-defined whether a hash has been output, and which of two hashes has been output first.
11:24:14 <b_jonas> ais523: and no, (a) the magic box does more than just produce hashes, and (b) it uses a longer digest and one that's cryptographically safe so you can't produce collisions
11:24:45 <ais523> the thing that the magic box produces is a hash by definition, isn't it? except that it might not be deterministic
11:24:55 <ais523> (when using it in "store" mode)
11:25:15 <b_jonas> ais523: it need not be. it could be just an entirely random value that it doesn't compute from the input or anything
11:25:16 <ais523> the magic boxes are slightly more useful if you also add the proviso that the same code will be returned for anyone, if they provide the same file as input
11:25:35 <ais523> I would argue that *even if* it isn't computed from the input, it's still a hash function
11:25:40 <b_jonas> ais523: sort of but not really. if you want to check for collisions, you can just use an ordinary hash independent of the magic box.
11:25:54 <b_jonas> ok, then it's a hash function.
11:26:15 <ais523> fwiw, I have wanted a similar operation to this in a golfing language
11:26:26 <ais523> it takes an arbitrary data structure and returns a single integer, consecutive from 0
11:26:39 <b_jonas> interning arbitrary data structures?
11:26:42 <b_jonas> could work
11:26:43 <ais523> right
11:26:54 <ais523> of course, there is an uninterning operation, too
11:27:18 <ais523> another idea I had, along similar lines, was a function that interns pairs of integers
11:27:30 <ais523> when you have this, your language no longer needs data structures, as you can do cons just on integers
11:27:55 <ais523> (there are bijections between Z² and Z, so I guess you wouldn't even need to use interning if you didn't mind the size of the numbers exploding)
11:28:14 <b_jonas> ais523: that's what cons does if there's no garbage collection, except I think if you say interning, you want a deterministic function
11:28:29 <b_jonas> as for numbers exploding, yes, that's what (0) does
11:28:48 <ais523> well, deterministic within one run of the program
11:29:01 <b_jonas> ok
11:29:35 <ais523> anyway, I think "content-addressable storage" is the general term for your magic boxes, except that two different CASes are not usually linked to each other
11:29:46 <b_jonas> that sounds typical for these golf languages, normally you wouldn't want to intern every pair, because it's sort of slow, but in a golf language you might not care
11:30:16 <ais523> yes, this seems like an operation that is probably usable by golfing languages only
11:30:46 <b_jonas> ais523: yes, and https://valerieaurora.org/monkey.html is the clear explanation of them
11:31:24 <ais523> huh, rsync is a CAS?
11:31:54 <b_jonas> the magic boxes are not only linked, but can also store practically any amount of data (limited by the boxes' bandwidth) forever for free, unlike in the real world
11:32:45 <b_jonas> ais523: rsync => not in the traditional system, but it uses clever use of hashes to likely find matching infixes among files, just like how some delta compression algorithms do
11:33:03 <b_jonas> and in fact even some ordinary compression algorithms do that
11:33:47 <ais523> Riot Games wrote an article about how they do incremental updates, without needing to know what's already installed on the target computer
11:33:55 <b_jonas> because deterministically finding all common infixes is too expensive, but finding enough of them to compress well in typical practical cases is good enough
11:34:29 <ais523> it works by breaking files into sections based on their content, and sending the hash of each section that should be in the new files
11:34:33 <b_jonas> we'll probably learn all about this in Knuth vol 5 by the way
11:34:48 <ais523> then the existing files are used to find as many of those sections as possible, and the ones which aren't found are downloaded
11:35:00 <b_jonas> ais523: yeah, that's sort of what rsync does
11:35:12 <ais523> right, that's why I mentioned it
11:35:33 <ais523> incidentally, A Pear Tree's current algorithm for finding sections of files with a CRC of 0 is quadratic
11:35:41 <ais523> but I think it's possible to do it in linear time
11:36:10 <ais523> so maybe there isn't even a need to define the sections in terms of content, you could just do it in terms of, say, a CRC-128
11:36:39 <ais523> (you would expect no random collisions with one of those; even though it isn't cryptographically secure, it seems likely that any actual collisions would have been planted by a human)
11:37:00 <ais523> err, it's probably actually n log n rather than linear
11:37:13 <b_jonas> ais523: ah yeah, that reminds me of one of my favorite algorithmic problems. you get a vector of nonnegative machine-sized integers, find the infix in that vector that maximizes the product of the length and the minimum of that infix.
11:37:41 <b_jonas> if n is the length of the vector, there's a trivial O(n**3) algorithm, an easy O(n**2) algorithm, and a tricky O(n) algorithm
11:38:28 -!- cpressey has quit (Quit: WeeChat 1.9.1).
11:38:30 <ais523> "infix" = contiguous substring, right?
11:38:35 <b_jonas> yes
11:40:02 <ais523> there's an easy O(nk) algorithm too, which might or might not be faster depending on the size of the numbers
11:40:09 <b_jonas> what is k?
11:40:34 <ais523> largest integer in the vector
11:41:15 <ais523> (faster than the O(n²) algorithm, that is)
11:42:53 <ais523> I think the easy O(n²) algorithm is "for each element in the vector, scan forwards until you find a smaller element, then take the maximum among the infixes calculated this way"
11:43:13 <b_jonas> in case you want to experiment, a test vector is [138, 222, 263, 156, 176, 58, 116, 211, 293, 481, 352, 217, 454, 639, 423, 580, 819, 716, 845, 999, 936, 714, 621, 569, 361, 175, 52, 57, 33] and the largest product is 5121, I have two longer test vectors that I can paste
11:43:28 <b_jonas> yes, that is the easy O(n**2) algorithm
11:44:07 <ais523> the easy O(nk) algorithm is "for each k from 1 to the highest element in the vector, look for maximum-length infixes whose minimum is k, then take the maximum among the infixes calculated this way"
11:44:29 <b_jonas> yes, that works too
11:45:54 -!- sprocklem has quit (Ping timeout: 258 seconds).
11:46:04 <ais523> easy O(n log n): sort the indexes of the vector by their values, then consider the infixest between the smallest and second-smallest, second-smallest and third-smallest, etc., values
11:46:09 -!- sprocklem has joined.
11:46:14 <ais523> * infixes
11:46:20 <ais523> I'm not 100% sure that's correct though
11:46:48 <b_jonas> how do you compute the minimum of those infixes?
11:46:48 <ais523> ah no, you have to extend each of those infixes outwards until you reach a value that's smaller
11:47:04 <ais523> ah right, yes, that hurts the complexity too
11:48:19 <ais523> more difficult O(n log n): consider the entire list as an infix, and recursively apply this algorithm to prefix before the smallest element, suffix after the smallest element
11:48:32 <ais523> this is O(n log n) if you speed it up by locating all the element locations in order from smallest to largest first
11:48:39 <ais523> and do the recursion in that order
11:48:47 <ais523> because, then you'll always know what the smallest element in the infix you're considering is
11:48:52 <ais523> and where it is
11:49:32 <ais523> the recursion itself becomes O(n) once you have the O(n log n) index of elements in order
11:50:08 <b_jonas> ais523: how does that work? how do you do a recursion "in that order"? a recursion would usually has to do descend to all infixes on one side, then all infixes on the other side.
11:50:41 <ais523> so you can do a recursion with a call stack, where you're doing the left subtree than the right subtree
11:50:51 <ais523> but you can also use a call queue, then you're effectively recursing over the tree breadth-first
11:51:04 <ais523> you can generalise this into doing a recursion in arbitrary order
11:51:12 <b_jonas> and how will that work in O(n) time?
11:51:16 -!- sprocklem has quit (Ping timeout: 256 seconds).
11:51:44 <b_jonas> that sounds like it might work but I'm not convinced
11:51:50 <ais523> b_jonas: oh right, it's acutally n log n; there are n recursive calls, each of which take constant time, but the context switches take log n time
11:51:53 -!- sprocklem has joined.
11:52:13 <ais523> because you need to find the right stack/queue frame to aim for
11:54:21 <ais523> here's the algorithm expanded: we have a set of infixes, initially just the initial list
11:54:27 <b_jonas> meanwhile Im' trying to find my old implementation of the O(n) algorithm...
11:54:44 <ais523> repeatedly, we locate the smallest element in any of the infixes, and split it into two infixes, the elements before that element, and the elements after that element
11:54:48 <b_jonas> but I'm not sure I still hvae it
11:54:58 <ais523> and repeat until we have no elements left
11:55:28 <ais523> if we sort the list in advance (remembering where the elements are in sorted order), "locate the smallest element in any of the infixes" (in terms of its position relative to the original list, and its value) is constant-time
11:56:16 <ais523> and if we maintain the list of infixes in sorted order (sorted using position in the initial list), using a self-balancing search tree, finding the correct infix based on the position of an element relative to the original list is O(log n)
11:56:38 <ais523> thus, the sort in advance is O(n log n), the analysis of all the infixes is also O(n log n), overall algorithm is therefore O(n log n)
11:56:54 <ais523> constant factor seems bad, though :-D
11:58:19 <ais523> <the page b_jonas linked a little earlier> One of my favorite quotes from this paper: "Our attack can find collision [in MD4] with hand calculation."
11:58:39 <ais523> apparently, nowadays MD4 is so broken that finding collisions in it is actually faster than MD4'ing the two resulting strings to verify that their hashes are the same as each other
12:04:10 <b_jonas> ah, it's probably one of these scripts in this text file of completely undocumented and unreadable perl one-liners
12:04:29 <b_jonas> or more than one of them, they're probably multiple algorithms for the same thing
12:04:51 <b_jonas> must be this one
12:05:26 <b_jonas> but is this actually the O(n) solution?
12:06:22 <b_jonas> it says this where the input is the numbers as space-separated decimal
12:06:24 <b_jonas> perl -we 'use strict; use List::Util "max"; my @A=split/ /,<>; sub f { my(@a) = (0, @_, 0); my $m = 0; my @s; for my $j (0 .. @a-1) { while (@s and $a[$j] <= $a[$s[-1]]) { my $l = 1<@s?$s[-2]:0; my $t = ($j-$l-1)*($a[$s[-1]]); $m<$t and $m=$t; pop @s; } push @s, $j; } $m; } print f(@A), "\n";'
12:07:45 <ais523> that looks like an unused import to me
12:07:51 <ais523> unless there's some usage of "max" I'm missing
12:08:02 <b_jonas> yeah, like I said, undocumented and messy, wrote it for myself
12:08:09 <b_jonas> but I think it's the O(n) solution
12:08:46 <b_jonas> the trick is that it's an amortized thingy, the body of the while loop pops an element from @s, so it runs exactly once for each value pushed, and we push a value in each iteration of the for loop, which runs n times
12:08:56 <esowiki> [[Special:Log/newusers]] create * Filexor * New user account
12:09:03 <ais523> it's O(n), the inner loop can't run any more iterations than the outer loop does because the outer loop pushes to @s exactly once and the inner loop pops from it exactly once
12:09:06 <b_jonas> so you have n iterations of the for loop, n iterations of the body of the while loop total
12:09:43 <b_jonas> and I have more test vectors here
12:10:18 <b_jonas> 9 apparently
12:11:00 <ais523> I think your algorithm is basically the same as my O(n log n) algorithm except that it goes left to right, and manages to locate all the correct infixes as it does so, rather than needing an index calculated in advance
12:11:01 <b_jonas> (and outputs for them, but you could get each with the quadratic time algorithm)
12:11:13 <ais523> but both algorithms look at the same n infixes
12:11:47 <b_jonas> that is likely, because neither uses any deep tricks about how the multiplication works apart from that it's monotone
12:12:05 -!- HaJones has quit (Quit: Leaving).
12:12:37 <b_jonas> so you have to consider O(n) infixes, though you could consider O(n) more redundnatly
12:13:35 <ais523> hmm… I assume there are randomized hashing algorithms which are secure in the sense that if you don't know the seed, you can't create a collision, and that given a random seed, two strings are no more likely to collide than a birthday paradox suggests
12:13:44 <ais523> how much faster are they than cryptosecure hashes?
12:14:39 <ais523> Wikipedia calls this "universal hashing"
12:16:08 -!- Frater_EST has joined.
12:16:38 <b_jonas> ais523: people usually use the Blake2 hashes with a secret seed for that, I think python has such an implementation for its dictionaries
12:16:53 -!- Frater_EST has left.
12:17:13 <b_jonas> Blake2 is supposed to be cryptosecure, but it's still somewhat faster than SHA-2 or SHA-3 usually, and more flexible
12:17:42 <ais523> there's a Blake3 now
12:18:05 <ais523> it's faster than blake2 partly because the number of rounds was reduced, but also because it can be vectorised
12:18:14 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78096&oldid=78062 * Filexor * (+170) /* Introductions */
12:18:33 <ais523> although, the input needs to be at least 2KiB in order to get the main gain from the vectorisation, and there's some overhead introduced to make that possible
12:18:37 <b_jonas> no, I think blake2 can be vectorized too. blake3 can be parallelized.
12:18:49 <ais523> it's a different sort of vectorization
12:19:09 <b_jonas> as in, you need to do a single serial iteration to compute blake2 on a long input
12:19:24 <ais523> Blake3 can be vectorized the same way Blake2 is, but it's more efficient to use the parellelizability and just use the vector registers to SIMD many of the parallel streams of execution at once
12:19:33 <b_jonas> but that is an iteration with a rather fast constant factor as crypto hashes go
12:20:02 <ais523> you could also use multiple CPUs or threads, but I don't consider that to actually speed up an algorithm, the same amount of CPU effort is expended
12:20:05 <b_jonas> but I don't this this comes up often as an advantage
12:20:18 <b_jonas> it's something that rarely helps in practice
12:20:38 <ais523> or, rather, I think of the runtime of an algorithm as the integral of its CPU load dtime
12:20:53 <b_jonas> also the blake2 hashes are well-studied, which is the main advantage when you consider crypto hashes
12:20:58 <ais523> maybe I shouldn't, because in practice you rarely find things to fill the idle CPU cores with
12:21:07 <ais523> yes
12:21:20 <ais523> I wouldn't use Blake3 for non-crypto work yet
12:21:23 <ais523> err, for crypto work yet
12:21:39 <ais523> I might use it for non-crypto purposes, though, if I simply wanted a hash function that's unlikely to have collisions
12:23:29 <ais523> anyway, using a universal hash rather than cryptosecure hash means that there are certain useful properties that might not be ruled out
12:23:47 <ais523> for example, having an easy way to calculate the hash of A concat B if you know the hashes of A and B
12:31:31 <esowiki> [[PlusOrMinus]] M https://esolangs.org/w/index.php?diff=78097&oldid=75472 * PythonshellDebugwindow * (+550) Update year and add original version
12:33:24 <esowiki> [[Special:Log/newusers]] create * Blue screen of life * New user account
12:41:29 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78098&oldid=78096 * Blue screen of life * (+172) Adding intro
12:41:38 <esowiki> [[Befunge]] https://esolangs.org/w/index.php?diff=78099&oldid=77368 * Blue screen of life * (+72) Adding a shorter Hello World program without string reversion to the examples section.
12:47:08 <esowiki> [[XENBLN/Commands]] M https://esolangs.org/w/index.php?diff=78100&oldid=74681 * PythonshellDebugwindow * (+3) Update commands
13:13:25 -!- hendursa1 has quit (Quit: hendursa1).
13:13:44 -!- hendursaga has joined.
13:14:03 -!- File_xor has joined.
13:15:13 -!- File_xor has quit (Remote host closed the connection).
13:27:00 -!- cpressey has joined.
14:11:18 <esowiki> [[User talk:Orby]] https://esolangs.org/w/index.php?diff=78101&oldid=78011 * OsmineYT * (-171)
14:19:40 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:24:16 -!- cpressey has quit (Ping timeout: 256 seconds).
14:25:56 -!- cpressey has joined.
14:32:45 -!- Sgeo has joined.
14:38:34 -!- Colonel_Kernel has joined.
14:38:40 -!- Colonel_Kernel has left.
15:11:17 <esowiki> [[Braindumbed]] N https://esolangs.org/w/index.php?oldid=78102 * Filexor * (+1501) Created page with "'''Braindumbed''' is esoteric instruction set architecture designed by [[User:Filexor]]. ==Language overview== Braindumbed generally runs with 65536 bits of address space with..."
15:36:59 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78103&oldid=78067 * Filexor * (+18)
15:41:02 -!- Filexor has joined.
15:42:40 -!- Filexor has quit (Remote host closed the connection).
15:48:04 -!- arseniiv has joined.
15:48:21 <arseniiv> hi from win10 (:
15:48:43 <rain1> hi
16:00:52 -!- cpressey has quit (Quit: WeeChat 1.9.1).
16:21:39 -!- FreeFull has joined.
16:33:40 -!- Melvar has quit (Quit: WeeChat 2.8).
16:40:58 <b_jonas> hi arseniiv
16:41:04 <b_jonas> arseniiv: is it a new computer hardware too?
16:54:53 -!- ATMunn has quit (Ping timeout: 246 seconds).
16:55:58 -!- ATMunn has joined.
17:05:53 -!- LKoen has joined.
17:08:40 -!- arseniiv has quit (Ping timeout: 258 seconds).
17:24:32 -!- arseniiv has joined.
17:30:17 <arseniiv> b_jonas: nah, the same, though I bought a new display cable and tomorrow hopefully I'll grab it at the store. The current one is DVI-HDMI which is suboptimal, I picked HDMI at both sides. Should have done it so long ago but at least late is better than never. The change wouldn't improve resolution and frequency but I think it would do better in subtle and oblique ways
17:30:50 <arseniiv> oh I need to reactivate my AutoHotkey script to be able to enter fancy apostrophes
17:33:49 <arseniiv> it takes a day or so to migrate all settings that need to, and to install a stray driver and to reinstall most of the programs which aren't portable. I should take notes to automate that for the next upgrade or migration but I'm lazy
17:34:54 -!- FreeFull has quit.
17:36:49 -!- FreeFull has joined.
17:43:15 <b_jonas> I'll probably grab the stuff I bought on Monday or Tuesday
17:58:15 -!- kurisu has joined.
18:06:19 -!- Melvar has joined.
18:25:31 -!- arseniiv has quit (Quit: gone too far).
18:59:08 -!- ais523 has quit (Quit: quit).
19:03:27 -!- hendursaga has quit (Remote host closed the connection).
19:04:19 -!- hendursaga has joined.
19:19:26 -!- imode has joined.
19:53:44 -!- kurisu has quit (Remote host closed the connection).
20:03:59 <esowiki> [[UFSA]] M https://esolangs.org/w/index.php?diff=78104&oldid=74608 * PythonshellDebugwindow * (+61) /* One-time binary cat */ Add example
20:13:43 <esowiki> [[!@$%^&*()+/Algorithms]] https://esolangs.org/w/index.php?diff=78105&oldid=77980 * SunnyMoon * (-314) This does not work...
20:22:40 <esowiki> [[Taktentus]] M https://esolangs.org/w/index.php?diff=78106&oldid=74146 * PythonshellDebugwindow * (+61) /* Syntax */ Add to documentation
20:37:32 <esowiki> [[Taktentus]] M https://esolangs.org/w/index.php?diff=78107&oldid=78106 * PythonshellDebugwindow * (+57) /* Syntax */ Add note about comments
20:44:27 -!- cherrybean has joined.
20:51:18 -!- cherrybean has left ("Leaving").
21:02:49 <esowiki> [[Voxvy]] N https://esolangs.org/w/index.php?oldid=78108 * PythonshellDebugwindow * (+334) Create
21:08:23 -!- Lord_of_Life has quit (Read error: Connection reset by peer).
21:09:15 -!- Lord_of_Life has joined.
21:09:16 -!- Lord_of_Life has quit (Changing host).
21:09:16 -!- Lord_of_Life has joined.
21:46:26 -!- LKoen has quit (Remote host closed the connection).
21:52:57 -!- tromp has quit (Remote host closed the connection).
22:23:36 -!- tromp has joined.
22:28:43 -!- tromp has quit (Ping timeout: 260 seconds).
22:32:19 <esowiki> [[Talk:Anarchysm]] N https://esolangs.org/w/index.php?oldid=78109 * Heavpoot * (+142) Created page with "would it be considered ok to improve the english of this ~~~~"
22:33:43 -!- t20kdc has quit (Remote host closed the connection).
22:35:13 <esowiki> [[Anarchysm]] https://esolangs.org/w/index.php?diff=78110&oldid=76549 * Heavpoot * (+182) bees
22:36:51 <esowiki> [[If the question specifies that the number of the words should be less than 3, and the number of words in your answer is larger than 3, your answer is automatically wrong.]] M https://esolangs.org/w/index.php?diff=78111&oldid=74257 * Heavpoot * (+32) i think you forgot an operator.
22:39:32 <esowiki> [[H]] M https://esolangs.org/w/index.php?diff=78112&oldid=71264 * Heavpoot * (+9) Fixed grammar
22:44:48 -!- Arcorann_ has joined.
22:49:03 <esowiki> [[Revaver2pi]] M https://esolangs.org/w/index.php?diff=78113&oldid=73504 * Heavpoot * (+143) Changed wording, fixed grammar
22:51:26 <esowiki> [[TLOWScript]] M https://esolangs.org/w/index.php?diff=78114&oldid=56541 * Heavpoot * (-12) "compiler/interpreter" -> "implementation"
22:52:19 <esowiki> [[TLOWScript]] M https://esolangs.org/w/index.php?diff=78115&oldid=78114 * Heavpoot * (+6) Fixed grammar
22:54:37 <esowiki> [[Cod]] M https://esolangs.org/w/index.php?diff=78116&oldid=43386 * Heavpoot * (+76) Add link, fix typos/grammar
22:57:44 -!- deltaepsilon23 has joined.
22:58:40 -!- tromp has joined.
23:00:47 -!- deltaepsilon23 has changed nick to delta23.
23:03:24 -!- tromp has quit (Ping timeout: 256 seconds).
23:09:00 -!- aaaaaa has joined.
23:22:16 -!- FreeFull has quit.
23:52:55 -!- tromp has joined.
2020-10-23
00:01:05 -!- tromp has quit (Ping timeout: 240 seconds).
00:29:52 -!- iceman121 has joined.
00:37:19 -!- deltaepsilon23 has joined.
00:37:42 -!- deltaepsilon23 has left.
00:38:43 -!- delta23 has quit (Quit: Leaving).
00:49:37 -!- Lord_of_Life_ has joined.
00:50:28 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
01:41:07 -!- tromp has joined.
01:45:47 -!- tromp has quit (Ping timeout: 258 seconds).
02:02:19 <esowiki> [[Special:Log/newusers]] create * Expliked * New user account
02:05:11 <esowiki> [[User talk:Erinius]] https://esolangs.org/w/index.php?diff=78117&oldid=66186 * Erinius * (+107)
02:06:52 <esowiki> [[User:Erinius]] https://esolangs.org/w/index.php?diff=78118&oldid=46621 * Erinius * (+92)
02:35:31 -!- tromp has joined.
02:40:22 -!- tromp has quit (Ping timeout: 256 seconds).
02:41:22 -!- spruit11 has quit (Ping timeout: 258 seconds).
02:53:19 -!- spruit11 has joined.
03:02:08 <int-e> fungot: have you tried switching it off and on again?
03:02:08 <fungot> int-e: im with stubid and shoot me in the reference graph, darn :) not delving in to cause any problems.
03:02:34 <int-e> (I hate when that happens... debugging code just to find that the executed code no longer matches the source code I'm looking at)
03:29:44 -!- tromp has joined.
03:34:23 -!- tromp has quit (Ping timeout: 260 seconds).
03:59:40 -!- aaaaaa has quit (Quit: leaving).
04:04:06 <esowiki> [[Screwtape]] https://esolangs.org/w/index.php?diff=78119&oldid=73057 * Erinius * (+1364)
04:04:25 <esowiki> [[Screwtape]] https://esolangs.org/w/index.php?diff=78120&oldid=78119 * Erinius * (-31)
04:05:45 <esowiki> [[Screwtape]] M https://esolangs.org/w/index.php?diff=78121&oldid=78120 * Erinius * (+4)
04:17:55 -!- adu has joined.
04:23:52 -!- tromp has joined.
04:25:51 <int-e> Hah, I love long-lived bugs. https://bugzilla.mozilla.org/show_bug.cgi?id=85464 (18 years to reach WONTFIX status)
04:27:47 -!- iceman121 has quit (Quit: Connection closed for inactivity).
04:28:25 -!- tromp has quit (Ping timeout: 264 seconds).
05:18:01 -!- tromp has joined.
05:22:30 -!- tromp has quit (Ping timeout: 256 seconds).
06:12:10 -!- tromp has joined.
06:16:58 -!- tromp has quit (Ping timeout: 265 seconds).
06:21:11 -!- tromp has joined.
06:42:24 -!- sprocklem has quit (Ping timeout: 256 seconds).
06:50:00 -!- adu has quit (Quit: adu).
06:54:45 -!- sprocklem has joined.
06:56:03 -!- Sgeo has quit (Read error: Connection reset by peer).
06:58:32 -!- tromp has quit (Remote host closed the connection).
07:01:25 -!- sprocklem has quit (Ping timeout: 240 seconds).
07:05:10 -!- user24 has joined.
07:16:27 -!- tromp has joined.
07:17:19 -!- Frater_EST has joined.
07:17:30 -!- Frater_EST has left.
07:35:29 -!- LKoen has joined.
08:06:33 -!- 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.”).
08:27:32 -!- cpressey has joined.
08:52:03 -!- imode has quit (Ping timeout: 258 seconds).
09:20:39 -!- evade has joined.
09:23:08 -!- evade has quit (Client Quit).
09:23:28 -!- magma has joined.
09:28:08 -!- magma has quit (Client Quit).
09:28:31 -!- opticnerve has joined.
09:29:52 -!- opticnerve has quit (Read error: Connection reset by peer).
09:30:07 -!- magma has joined.
09:33:48 -!- magma has quit (Client Quit).
09:37:07 -!- FreeFull has joined.
10:01:14 <cpressey> I was re-reading "Mathematical Foundations of Joy" recently and I found something interesting:
10:01:37 <cpressey> "In Joy the left zero l is the `abort` operator, it ignores any program following it. The right zero r is the `clearstack` operator, it empties the stack and hence ignores any calculations that might have been done before."
10:02:43 <cpressey> Hm, maybe that's not as interesting as I thought it was when I read it
10:02:45 <cpressey> n/m
10:05:01 <cpressey> I think it might have been this.... what is the semantics of the program, "abort clearstack"?
10:05:21 <cpressey> "abort" tells you to ignore "clearstack", but "clearstack" tells you to ignore "abort"
10:06:18 <Taneb> Hmm, I'd guess abort takes priority
10:06:23 <Taneb> But I don't know Joy
10:06:28 <cpressey> The equations are "l P == l" and "P r == r" for any P. This doesn't give an unambiguous solution for "l r"
10:06:41 <Taneb> I think it may even imply l == r
10:06:45 <cpressey> Indeed
10:07:20 <cpressey> And yet, there they are, two different operators
10:21:37 <rain1> hi !
10:24:27 -!- wmww has quit (Quit: killed).
10:24:29 -!- tswett[m] has quit (Quit: killed).
10:24:40 -!- Discordian[m] has quit (Quit: killed).
10:34:39 -!- wmww has joined.
10:41:56 <cpressey> hi rain1
10:43:04 <cpressey> Your suggestion to just stick to Haskell98 for my latest project is sound, I think it's what I'll do
10:45:08 <rain1> ok!
10:47:11 <rain1> wait did you lot just break joy?
10:47:51 <cpressey> I think it's more that Joy's mathematical foundations are a bit... approximate.
10:48:34 -!- user24 has quit (Quit: Leaving).
10:54:25 <int-e> cpressey: did you know that https://wiki.haskell.org/Hierarchical_module_names are not part of Haskell 98 :P
10:57:52 <cpressey> Fine
10:58:09 <cpressey> "Haskell 2010 without any LANGUAGE pragmas beyond what the libraries I've chosen to use force upon me"
10:58:12 <cpressey> Better?
10:58:28 -!- tswett[m] has joined.
10:58:34 -!- iscordian[m] has joined.
10:59:52 <int-e> I wasn't seriously objecting to anything
11:00:17 <int-e> Just trying to display some historical knowledge.
11:14:52 <cpressey> int-e: Did you know that the Haskell logo used to look like https://web.archive.org/web/20190510212827im_/https://prime.haskell.org/chrome/site/HaskellLogo_2.jpg
11:15:07 <cpressey> Why did they get rid of that logo? That logo was *awesome*, man
11:17:34 <int-e> cpressey: there was an earlier logo even, all blue
11:18:04 <int-e> https://willamette.edu/~fruehr/logos/PNGs/BlueHaskellLogo.png
11:18:42 <int-e> Anyway, there was this competition... https://wiki.haskell.org/Haskell_logos/New_logo_ideas
11:18:57 <int-e> "it is looking rather dated, and doesn't necessarily reflect the mature Haskell we have now"
11:20:57 <int-e> which brought us Monica Monad, which is arguably the best (if obscure) thing to come out of it.
11:21:20 <fizzie> "Something reflecting the modern emphasis of Haskell on purity and simplicity" isn't exactly the first thing I'd think of given some of those proposals.
11:21:52 <int-e> Oh yes, some of these designs were... uhm... how do I put this politely... atrocious.
11:22:05 <fizzie> One of them looks like a Google product. ;)
11:23:15 <cpressey> I hate this language
11:23:40 <int-e> https://wiki.haskell.org/File:Haskell.png was the weirdest one, in my eyes.
11:24:25 <fizzie> https://wiki.haskell.org/File:Pure_Devil_Haskell.png is something you'd see on a webring page in the 90s. ;)
11:24:46 <fizzie> (Are those even a thing any more?)
11:25:34 <cpressey> Is the current logo even on that page??
11:25:43 <int-e> Webrings always broke.
11:26:03 <int-e> But I think the idea of mutual links is still alive for webcomics.
11:26:19 <int-e> Quite possibly blogs as well.
11:26:48 <int-e> (But I'm not much of a blog reader.)
11:30:12 <cpressey> "Every function in Haskell is a function in the mathematical sense (i.e., "pure"). Even side-effecting IO operations are but a description of what to do, produced by pure code."
11:30:14 <cpressey> Ha
11:30:32 -!- cpressey has quit (Quit: Lunch).
11:42:01 <fizzie> @tell cpressey Re the current logo, it's likely the broken logo1.png through logo7.png links on that competition page. (Compare the associated names with https://wiki.haskell.org/Thompson-Wheeler_logo .)
11:42:01 <lambdabot> Consider it noted.
11:43:56 <fizzie> I really like TikZ, should find some excuse to do something with it.
11:48:12 <int-e> Hmm, what do I associate with TikZ... sadly, for the most part, tedious fiddling in conjunction with the beamer package (\uncover stuff cooperates with TikZ reasonably well.)
11:51:14 <fizzie> The tedious fiddling is the part I like. ;)
11:51:36 <fizzie> It might be different if you actually wanted to get something done.
11:52:02 <int-e> there is that... mostly preparing slides a day, sometimes two, before the presentation
11:53:39 <int-e> also it tended to be variations on the same two kinds of diagrams (though in varying complexity) so it was kind of boring.
12:06:20 -!- t20kdc has joined.
12:06:52 <esowiki> [[COD]] M https://esolangs.org/w/index.php?diff=78122&oldid=73181 * PythonshellDebugwindow * (+30) Not to be confused with
12:07:08 <esowiki> [[Cod]] M https://esolangs.org/w/index.php?diff=78123&oldid=78116 * PythonshellDebugwindow * (+30) Not to be confused with
12:19:00 <b_jonas> cpressey: yes, I recall that logo with the puddle and symbols vomited on it.
12:28:11 <b_jonas> fizzie: are webrings still a thing => well there's https://www.homebrewcpuring.org/ringhome.html which is the webring of http://www.homebrewcpu.com/ , and https://www.perlmonks.com/?node_id=106258 is decidedly from the 2000s.
12:30:06 <b_jonas> but yes, these days people just put links to their favorite pages without trying to make a ring or symmetric graph or anything.
12:31:09 <b_jonas> fizzie: I specifically hate TikZ. it's too esoteric. like, why are you trying to restrict yourself to making graphics from characters in fonts, when your computer and printer can both make real graphics, and it's cheaper and easier?
12:31:31 <b_jonas> your projector too in case you mean new-style slides
12:53:18 -!- hendursaga has quit (Quit: hendursaga).
12:53:40 -!- hendursaga has joined.
13:10:16 -!- FreeFull has quit (Ping timeout: 260 seconds).
13:16:46 -!- FreeFull has joined.
13:21:19 <fizzie> I don't understand that "from characters in fonts" comment.
13:23:29 <b_jonas> fizzie: isn't that one way how TikZ works, though it also has a saner mode? or am I confusing it with some other graphics thing?
13:24:14 <Taneb> b_jonas: TikZ is vector graphics with lines and circles and stuff
13:24:40 <b_jonas> ah, apparently I'm confusing it with one mode of LaTeX's builtin graphics
13:25:13 <b_jonas> sorry
13:29:00 -!- zzo38 has quit (Ping timeout: 260 seconds).
13:30:18 <esowiki> [[Braindumbed]] https://esolangs.org/w/index.php?diff=78124&oldid=78102 * Filexor * (+392)
13:52:19 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:09:13 -!- Frater_EST has joined.
14:12:34 -!- user24 has joined.
14:14:37 -!- Sgeo has joined.
15:13:49 <b_jonas> `perl -eprint"$_\Q$_\E\"\n"for"print\"\$_\\Q\$_\\E\\\"\\n\"for\""
15:13:51 <HackEso> print"$_\Q$_\E\"\n"for"print\"\$_\\Q\$_\\E\\\"\\n\"for\""
15:13:53 <b_jonas> what's that weird line noise?
15:14:08 <b_jonas> `perl -eprint"$_\Q$_\E\"\n"for"`perl -eprint\"\$_\\Q\$_\\E\\\"\\n\"for\""
15:14:10 <HackEso> ​`perl -eprint"$_\Q$_\E\"\n"for"\`perl\ \-eprint\"\$_\\Q\$_\\E\\\"\\n\"for\""
15:14:24 <b_jonas> `perl -eprint"$_\Q$_\E\"\n"for"\`perl\ \-eprint\"\$_\\Q\$_\\E\\\"\\n\"for\""
15:14:25 <HackEso> ​`perl -eprint"$_\Q$_\E\"\n"for"\`perl\ \-eprint\"\$_\\Q\$_\\E\\\"\\n\"for\""
15:38:17 <b_jonas> `? denominator
15:38:18 <HackEso> denominator? ¯\(°​_o)/¯
15:38:23 <b_jonas> `? deluminator
15:38:24 <HackEso> deluminator? ¯\(°​_o)/¯
15:46:58 -!- Frater_EST has quit (Read error: Connection reset by peer).
15:48:34 -!- user24 has quit (Quit: Leaving).
16:42:20 -!- LKoen has joined.
16:45:46 -!- UbftjvG63-986 has joined.
16:46:32 -!- UbftjvG63-986 has quit (Quit: IRC for Sailfish 0.9).
16:46:54 -!- UbftjvG63-986 has joined.
16:47:53 -!- UbftjvG63-986 has left.
16:51:42 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=78125&oldid=78098 * 3s0!an9 b0y * (+165) /* Introductions */
16:56:43 <esowiki> [[!@$%^&*()+/Algorithms]] https://esolangs.org/w/index.php?diff=78126&oldid=78105 * SunnyMoon * (+314) Undo revision 78105 by [[Special:Contributions/SunnyMoon|SunnyMoon]] ([[User talk:SunnyMoon|talk]]) I apologize, but I did this for a code golf challenge!
16:57:32 -!- iscordian[m] has quit (*.net *.split).
16:57:37 -!- hendursaga has quit (*.net *.split).
16:57:38 -!- xelxebar has quit (*.net *.split).
17:06:35 -!- iscordian[m] has joined.
17:17:07 -!- aaaaaa has joined.
17:29:15 -!- xelxebar has joined.
17:39:39 -!- hendursaga has joined.
18:31:07 -!- zzo38 has joined.
20:07:22 -!- imode has joined.
20:36:36 -!- laerling has quit (Ping timeout: 272 seconds).
20:36:52 -!- laerling has joined.
20:39:12 -!- Sgeo has quit (Read error: Connection reset by peer).
20:39:39 -!- Sgeo has joined.
20:42:24 -!- atriq has joined.
20:48:49 -!- vertrex- has joined.
20:48:49 -!- vertrex- has quit (Changing host).
20:48:49 -!- vertrex- has joined.
20:50:04 -!- t20kdc has quit (*.net *.split).
20:50:05 -!- sftp has quit (*.net *.split).
20:50:06 -!- vertrex has quit (*.net *.split).
20:50:06 -!- relrod has quit (*.net *.split).
20:50:06 -!- clog has quit (*.net *.split).
20:50:06 -!- Taneb has quit (*.net *.split).
20:50:07 -!- mniip has quit (*.net *.split).
20:50:11 -!- t20kdc has joined.
20:50:11 -!- relrod has joined.
20:50:11 -!- clog has joined.
20:50:11 -!- mniip has joined.
20:50:55 -!- relrod has quit (Quit: .).
20:51:02 -!- relrod has joined.
20:51:05 -!- relrod has quit (Changing host).
20:51:05 -!- relrod has joined.
20:51:26 -!- sftp has joined.
20:56:00 <esowiki> [[Talk:Libra]] N https://esolangs.org/w/index.php?oldid=78127 * PythonshellDebugwindow * (+190) /* Implementation */ new section
20:57:38 <esowiki> [[Screwtape]] M https://esolangs.org/w/index.php?diff=78128&oldid=78121 * PythonshellDebugwindow * (+41) Add categories
21:03:41 <esowiki> [[BF busy beaver]] M https://esolangs.org/w/index.php?diff=78129&oldid=68578 * PythonshellDebugwindow * (+30) See also: brainfuck
21:04:12 <esowiki> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=78130&oldid=78064 * PythonshellDebugwindow * (+21) /* See also */ Add [[BF busy beaver]]
21:04:24 -!- sprocklem has joined.
21:05:57 <esowiki> [[Talk:Minebit]] M https://esolangs.org/w/index.php?diff=78131&oldid=46588 * PythonshellDebugwindow * (+199) The original poster is back: reply to them
21:27:22 -!- t20kdc has quit (Remote host closed the connection).
22:06:43 -!- 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.”).
22:10:50 <imode> I have a hypothesis that dup, drop, rot and compose + implicit application of the quotation on the top of the stack should be turing complete.
22:12:37 <imode> the control flow is weird.
22:14:50 <FireFly> hm, sounds like an interesting set
22:29:43 -!- tromp has quit (Remote host closed the connection).
22:48:56 <imode> a 4-command basis for a concatenative language without nesting would be ideal.
22:49:00 <imode> 2 is pushing it.
23:08:09 -!- Frater_EST has joined.
23:09:48 -!- tromp has joined.
23:12:14 -!- Arcorann_ has joined.
23:14:16 -!- tromp has quit (Ping timeout: 246 seconds).
23:42:04 -!- UbftjvG63-986 has joined.
23:44:11 -!- UbftjvG63-986 has left.
2020-10-24
00:04:17 -!- tromp has joined.
00:08:44 -!- tromp has quit (Ping timeout: 260 seconds).
00:26:22 -!- FreeFull has quit.
00:50:42 -!- Lord_of_Life has joined.
00:52:06 -!- Lord_of_Life_ has quit (Ping timeout: 256 seconds).
00:58:27 -!- tromp has joined.
01:02:45 -!- tromp has quit (Ping timeout: 240 seconds).
01:30:22 -!- joast has quit (Quit: Leaving.).
01:52:32 -!- tromp has joined.
01:56:40 -!- tromp has quit (Ping timeout: 246 seconds).
02:34:12 -!- adu has joined.
02:46:40 -!- tromp has joined.
02:51:24 -!- tromp has quit (Ping timeout: 265 seconds).
03:40:47 -!- tromp has joined.
03:44:11 -!- Sgeo has quit (Read error: Connection reset by peer).
03:45:05 -!- tromp has quit (Ping timeout: 240 seconds).
03:51:04 -!- Sgeo has joined.
04:13:57 -!- Sgeo has quit (Read error: Connection reset by peer).
04:15:49 -!- Sgeo has joined.
04:34:57 -!- tromp has joined.
04:39:04 -!- tromp has quit (Ping timeout: 246 seconds).
04:41:27 -!- user3456 has quit (Remote host closed the connection).
04:42:44 -!- user3456 has joined.
05:10:55 -!- aaaaaa has quit (Quit: leaving).
05:29:03 -!- tromp has joined.
05:33:32 -!- tromp has quit (Ping timeout: 260 seconds).
05:55:24 -!- atriq has changed nick to Taneb.
06:23:10 -!- tromp has joined.
06:27:34 -!- tromp has quit (Ping timeout: 246 seconds).
06:39:49 -!- imode has quit (Ping timeout: 246 seconds).
07:01:16 <esowiki> [[Special:Log/newusers]] create * TightOnTime * New user account
07:01:22 -!- tromp has joined.
07:05:17 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78132&oldid=78125 * TightOnTime * (+270) /* Introductions */
07:13:00 <esowiki> [[User:TightOnTime]] N https://esolangs.org/w/index.php?oldid=78133 * TightOnTime * (+46) Created page with "Hello. == Esolangs == I haven't made any yet."
07:13:14 -!- adu has quit (Quit: adu).
07:15:53 -!- Lord_of_Life has quit (Changing host).
07:15:53 -!- Lord_of_Life has joined.
07:56:17 -!- sprocklem has quit (Ping timeout: 260 seconds).
08:08:47 -!- hendursa1 has joined.
08:10:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:41:01 -!- ProofTechnique has quit (Ping timeout: 272 seconds).
08:42:48 -!- ProofTechnique has joined.
09:10:29 -!- Sgeo has quit (Read error: Connection reset by peer).
11:05:53 -!- t20kdc has joined.
11:37:56 <b_jonas> I wish my compact camera wrote into the metadata the timezone (which you can configure in the settings), sub-second exposition time (this camera is fast enough that it's easy to make multiple photos in a second); and the orientation data from gravimeter (it displays it in two dimensions on display while composing a photo, but only writes a single multiple of 90° orientation).
12:17:13 -!- arseniiv has joined.
12:31:28 <fizzie> Is there a standard metadata field for that last one? The usual EXIF orientation field is an enum with 8 values (90 degree multiples + mirroring bit).
12:32:09 <b_jonas> fizzie: I don't know, and in any case that standard orientation field is useful because software use it to rotate the image for displaying
12:33:02 <b_jonas> so this would be an additional field. but these days these kinds of gravimeters are really cheap, they're built into many devices, so there's probably either already a field or they can just invent a new one.
12:33:23 <b_jonas> a lot of the non-exif metadata fields are defined by camera manufacturers anyway.
12:34:02 <fizzie> Apparently there's an Apple-specific acceleration vector field, so some devices do store it.
12:36:25 <esowiki> [[Voxvy]] M https://esolangs.org/w/index.php?diff=78134&oldid=78108 * PythonshellDebugwindow * (+4) Add link to [[Python]]
12:38:31 <b_jonas> fizzie: exiftool docs say that there's even AccelerometerZ, AccelerometerX, AccelerometerY tags for the Panasonic image headers, which is a type of header set that this camera writes already (since it's a Panasonic)
12:38:51 <b_jonas> and also RollAngle and PitchAngle fields in the same
12:39:21 <b_jonas> they won't be very accurate, but even so it'd be worth
12:40:06 <b_jonas> there are also tags defined for other brands
12:40:24 <fizzie> Hmm. Wonder if my Canon camera writes those. Haven't noticed in exiftool output, but haven't tried to look for it either.
12:40:44 <fizzie> It does write the time zone, I remember that much.
12:40:56 <b_jonas> fizzie: do you know if it has an accelerometer hardware?
12:41:39 <fizzie> It has a horizon thing in the live view, so it would need to have something to display that.
12:47:38 <fizzie> Heh, it writes a "Camera Temperature" tag.
12:47:53 <fizzie> ("32 C" for this image.)
12:49:37 <b_jonas> does it vary among images?
12:50:09 <b_jonas> and does it get that from a temperature sensor in the camera, or from one in a connected GPS or mobile phone etc?
12:51:55 <fizzie> Yes, it does seem to vary among images; in this set of 109 images, it starts at "28 C", and goes up to "32 C", in a more or less linear fashion. So I guess it was warming up while shooting. It's not connected to anything, so it must come from a sensor somewhere in the camera.
12:52:20 <b_jonas> nice
12:53:05 <fizzie> There's also a "GPS Version ID" ("2.3.0.0") even though there's no GPS or position data.
12:53:34 <b_jonas> that said a lot of the metadata that it writes is useful
12:54:10 <fizzie> (I've sometimes used one of those pieces of software to attach positions to images, based on a recorded GPS trace from a phone.)
12:55:01 <b_jonas> tags about exposure settings, white balance, the second precise timestamp (it's unclear what it is a timestamp for: the start of exposure, when it starts to compresses the file, when it starts to send the file to the SD card, etc), the camera model, etc
12:58:25 <b_jonas> mind you, I often don't set the clock of this camera correctly, eg. sometimes I forget to reset it when I remove the battery for a short time to access the SD card, or just forget to set it for a long time, so the timestamp is often up to 10 minutes early or late, and also sometimes 1 hour off due to incorrect DST setting
12:58:55 <b_jonas> if my next camera doesn't write timezone metadata then I'll probably just set it to always UTC
12:59:27 <b_jonas> (or to Iceland if it doesn't allow UTC)
13:08:53 <fizzie> I keep forgetting to set the camera's clock (or time zone) every other time I go out with it, and it's annoying, because I tend to take photos with the camera *and* with a phone, and then their sort order is all wrong when mixed together.
13:08:57 <fizzie> So in a lot of my folders of photos, the last image is of the phone with a clock on the screen, because then it's easy to compute a correction factor, and use `exifdates -AllDates-=X` to fix them.
13:10:07 -!- hendursa1 has quit (Quit: hendursa1).
13:10:25 -!- hendursaga has joined.
13:22:09 <b_jonas> I see
14:49:00 -!- Arcorann_ has quit (Read error: Connection reset by peer).
15:19:47 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
15:21:17 -!- Lord_of_Life has joined.
15:21:18 -!- Lord_of_Life has quit (Changing host).
15:21:18 -!- Lord_of_Life has joined.
15:46:37 -!- arseniiv has quit (Ping timeout: 258 seconds).
15:56:09 -!- Sgeo has joined.
16:00:32 -!- arseniiv has joined.
16:11:57 -!- FreeFull has joined.
17:02:39 <esowiki> [[Symbolic Brainfuck]] https://esolangs.org/w/index.php?diff=78135&oldid=53804 * Quadril-Is * (+43) H
18:12:56 -!- imode has joined.
18:19:10 <esowiki> [[Comefrom0x10]] M https://esolangs.org/w/index.php?diff=78136&oldid=72995 * Julfers * (-35) /* Implementation */
18:39:01 <esowiki> [[Special:Log/newusers]] create * Qh4 * New user account
18:49:15 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78137&oldid=78132 * Qh4 * (+192) /* Introductions */
18:49:22 <esowiki> [[+-]] https://esolangs.org/w/index.php?diff=78138&oldid=76351 * Qh4 * (+143) Added super useful and sexy C interpreter
19:20:50 -!- woodwose has joined.
19:20:59 -!- woodwose has left.
19:43:20 -!- tromp has quit (Remote host closed the connection).
19:44:48 -!- aaaaaa has joined.
19:47:31 -!- tromp has joined.
19:50:00 -!- xgqt has quit (Quit: WeeChat 2.5).
20:11:56 -!- sprocklem has joined.
21:05:48 <fizzie> @metar EGLL
21:05:48 <lambdabot> EGLL 242050Z AUTO 24022G33KT 3900 RA SCT007/// BKN011/// //////CB 12/12 Q0995 RERA TEMPO +RA BKN009
21:06:24 <fizzie> RA RERA TEMPO +RA.
21:11:39 <shachaf> @metar koak
21:11:39 <lambdabot> KOAK 242053Z VRB06KT 10SM FEW027 21/12 A2997 RMK AO2 SLP147 T02060122 58020 $
21:11:56 <shachaf> $? Uh oh.
21:12:24 <shachaf> @metar ksfo
21:12:24 <lambdabot> KSFO 242056Z 02008KT 10SM FEW025 19/13 A2995 RMK AO2 SLP142 T01940133 58023
21:12:39 <zzo38> What does $ at the end denote?
21:13:33 <shachaf> "A maintenance indicator sign, $, is included when an ASOS/AWSS (Automated Surface Observing System / Automated Weather Sensor System) detects that maintenance is needed on the system."
21:14:14 <zzo38> O, OK.
21:25:54 <fizzie> I thought it meant you have to pay extra.
21:26:20 <fizzie> Guess that might be the subtext there.
21:26:33 <fizzie> "This line's going to be expensive for someone."
21:26:39 <zzo38> If it was, wouldn't there be numbers after it?
21:28:22 -!- t20kdc has quit (Remote host closed the connection).
21:56:37 <arseniiv> const ACost: Integer = $1234ABCD;
21:56:54 <arseniiv> (Pascal here)
23:00:28 -!- Arcorann_ has joined.
23:04:43 <zzo38> I wanted the web browser to include a table of contents window; I found that Kristall does, although it seems only for Gemini and not HTML so far.
23:17:58 <shachaf> Why not use Gopher instead?
23:20:02 <zzo38> Well, you can use whatever service is available. I have HTTP and Gopher services available (and also NNTP and QOTD)
23:23:28 -!- FreeFull has quit.
23:47:40 <esowiki> [[+-]] M https://esolangs.org/w/index.php?diff=78139&oldid=78138 * PythonshellDebugwindow * (+11) /* C */ Fix syntax and add return
2020-10-25
00:04:33 <arseniiv> Snakebird looks like it would make a good esolang, as birds can grow any length, they can stuck and they have great hysteresis, and also one can blow a sleeping bird graphic marker to mean something more
00:06:19 <arseniiv> e. g. imagine a nondeterministic machine where birds move in all possible ways to reach a goal or to go through kind of checkpoints
00:07:56 <arseniiv> one can encode data in a bird’s form like how many squares does it run between turns
00:10:27 <arseniiv> hm this scheme makes addition on ℕ easy: you have a L-shaped bird and you just need it to straighten at the portal
00:14:11 <arseniiv> now we need to specify how the bird is placed at the start, e. g. if it’s the tail square that’s fixed in place or the head square, and which orientation the bird is, and also I now see that we can’t add unbounded numbers if we place the snake and the portal both in predetermined places
00:17:48 <arseniiv> that’s not all that obvious so maybe I’m wrong
00:25:02 -!- aaaaaa has quit (Ping timeout: 260 seconds).
00:31:08 -!- zeroed has quit (Ping timeout: 260 seconds).
00:32:05 -!- adminn has joined.
00:48:13 -!- aaaaaa has joined.
00:51:50 -!- Lord_of_Life_ has joined.
00:53:08 -!- Lord_of_Life has quit (Ping timeout: 256 seconds).
01:09:13 -!- arseniiv has quit (Ping timeout: 264 seconds).
01:10:25 -!- Cale has quit (Ping timeout: 264 seconds).
01:12:23 -!- Cale has joined.
02:06:57 -!- oren has quit (Ping timeout: 260 seconds).
02:07:10 -!- oren has joined.
02:16:24 -!- oren has quit (Remote host closed the connection).
02:16:38 -!- oren has joined.
02:48:22 <esowiki> [[User talk:TightOnTime]] N https://esolangs.org/w/index.php?oldid=78140 * TightOnTime * (+0) Created blank page
03:28:23 -!- aaaaaa has quit (Quit: leaving).
04:23:49 -!- adu has joined.
04:49:14 <imode> I have my doubts about rot7 + {dup drop compose apply apply!} being turing complete. or I just don't see how the construction can be performed.
04:50:49 -!- Sgeo has quit (Read error: Connection reset by peer).
04:51:09 -!- Sgeo has joined.
04:55:10 <imode> seeing as you can't push an empty quotation, you would need to duplicate two pieces of data. but duplicating one piece of data means you lose track of another, unrelated combinator.
05:55:10 -!- sprocklem has quit (Ping timeout: 256 seconds).
06:27:38 -!- adu has quit (Quit: adu).
06:32:30 -!- rodgort has quit (Quit: Leaving).
06:43:21 -!- rodgort has joined.
07:05:14 -!- Frater_EST has left.
08:08:46 -!- hendursa1 has joined.
08:10:43 -!- hendursaga has quit (Ping timeout: 240 seconds).
09:03:24 -!- jix has quit (Quit: WeeChat 2.8).
09:08:51 -!- jix has joined.
09:13:05 -!- Sgeo has quit (Read error: Connection reset by peer).
09:13:45 -!- t20kdc has joined.
09:18:17 -!- LKoen has joined.
10:12:08 -!- imode has quit (Ping timeout: 260 seconds).
10:34:13 -!- adminn has changed nick to zeroed.
10:38:14 -!- tromp has quit (Remote host closed the connection).
10:48:17 -!- tromp has joined.
11:02:08 -!- hendursa1 has quit (Remote host closed the connection).
11:03:01 -!- hendursa1 has joined.
11:46:47 -!- user24 has joined.
12:11:52 -!- ais523 has joined.
12:12:15 <ais523> @message imode if for some reason you need an empty quotation, just compose dup and drop
12:12:15 <lambdabot> Maybe you meant: messages messages-loud messages?
12:12:19 <ais523> @tell imode if for some reason you need an empty quotation, just compose dup and drop
12:12:19 <lambdabot> Consider it noted.
12:13:25 <ais523> a question I've been idly wondering about (that has minor implications for PPCG answers): if I have a matrix where the elements are drawn uniformly from a finite field, is the probability of the matrix being singular exactly 1/n (where n is the number of elements in the field)?
12:13:30 <ais523> or is it just approximately 1/n?
12:13:55 <ais523> err, I guess it's called CGCC nowadays
12:14:50 <ais523> really I need to make a good finite field library, finite fields seem to come up all the time when dealing with anything to do with storing information
12:15:24 -!- laerling has quit (Quit: leaving).
12:15:32 <int-e> The number of non-singular nxn matrices in GF(q) is q^n-1)*(q^n-q)*...*(q^n-q^(n-1)). So your probability is 1 - (1-1/q)*(1-1/q^2)*...*(1-1/q^n).
12:16:06 <ais523> hmm, I wonder if that has a simple closed form; probably not, but it looks like it might
12:16:09 <int-e> (different n, obviously)
12:17:40 <int-e> I think that is the simple closed form (if you write it as a product) ;-)
12:21:17 <ais523> the closed form is apparently the q-Pochhammer symbol
12:21:25 <ais523> which I'm pretty sure I came across recently in another context
12:21:48 <ais523> in this case, (1/q; 1/q)_n
12:22:44 <ais523> because the first two arguments are equal, it collapses to the Euler function as n tends to infinity
12:24:11 <rain1> they come up in partitions a lot
12:29:42 <ais523> I guess what I'm trying to figure out is, is the probability of being singular likely to be small / invertible likely to be large?
12:31:11 <ais523> it does look like it, the Euler function has values near 1 when its input is small
12:33:11 <ais523> OK, and I found a Wolfram Alpha query that explains the behaviour pretty well: https://www.wolframalpha.com/input/?i=minimum+of+QPochhammer%5Bq%5D%2Bq+for+q+in+0+to+1
12:33:45 <ais523> looks like the probability of being singular is a little more than 1/n, but never by all that much
12:34:12 <ais523> so in particular, if we just rely on picking a random matrix and hoping it's non-singular (my use case), we'll normally get away with it when the field is large
12:36:57 <esowiki> [[Entfedern]] M https://esolangs.org/w/index.php?diff=78141&oldid=74960 * PythonshellDebugwindow * (+29) /* See also */ See also
13:21:09 -!- hendursa1 has quit (Quit: hendursa1).
13:21:41 -!- hendursaga has joined.
13:33:11 <b_jonas> zzo38: I don't understand the context. what is snakebird?
13:39:28 <b_jonas> ais523: re matrix with coeffs uniformly chosen from a finite field: ah, int-e already answered, anyway the probability is much less (if n is large), there's a well-known result that counts the number of matrices over a finite field with nonzero determinants
13:41:11 <b_jonas> ais523: https://en.wikipedia.org/wiki/General_linear_group#Over_finite_fields
13:42:13 <b_jonas> hmm, maybe I'm wrong and the probability is not all that small, unless n is small? hmm
13:42:24 <b_jonas> I mean unless the field is small
13:42:31 <b_jonas> for GF(2) the probability is quite small
13:42:45 <b_jonas> I guess it depends on which direction you take the limit in
13:42:57 <b_jonas> I think for a fixed q, it's always much smaller than 1/n
13:43:05 <b_jonas> I mean for a fixed field
13:43:18 <b_jonas> oh well, you can ask a more precise questoin if you want
13:45:08 -!- lifthrasiir has quit (Remote host closed the connection).
13:50:16 -!- lifthrasiir has joined.
14:06:40 <rain1> snakebird is a cool puzzle game
14:06:43 <rain1> I recommend it!
14:14:42 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
14:14:53 -!- Lord_of_Life has quit (Changing host).
14:14:53 -!- Lord_of_Life has joined.
14:20:23 <myname> yeah, it's awesome
14:20:26 <myname> i suck at it, though
14:22:35 <rain1> it's pretty hard
14:24:28 <myname> the play store recommended it to me for months and i always looked over it because it looks like a game for children
14:24:31 <myname> but boy was i wrong
14:27:55 -!- user24 has quit (Quit: Leaving).
14:37:08 -!- adu has joined.
14:38:06 <ais523> b_jonas: it seems that the larger the (square) matrix is, the more likely it is to be singular, but the probability tends to a limit of (1/q; 1/q)_n which is slightly larger than 1/q but not by much (especially if q is large)
14:38:16 <ais523> here, q is the size of the field, n the size of the matrix
14:38:27 <ais523> so the limit is _∞, _n is for a specific size of matrix
14:42:44 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:52:04 -!- ais523 has quit (Read error: Connection reset by peer).
14:53:20 -!- ais523 has joined.
14:56:20 <b_jonas> ais523: I see
14:57:44 <esowiki> [[]] M https://esolangs.org/w/index.php?diff=78142&oldid=75389 * PythonshellDebugwindow * (+1) /* Commands */ Fix command
14:58:04 <esowiki> [[]] M https://esolangs.org/w/index.php?diff=78143&oldid=78142 * PythonshellDebugwindow * (+10) /* Commands */ Fix commands
14:58:44 <esowiki> [[User:PythonshellDebugwindow/(Unnamed language)]] M https://esolangs.org/w/index.php?diff=78144&oldid=75789 * PythonshellDebugwindow * (+1732) First draft of ++**p;
15:09:52 -!- user24 has joined.
15:48:12 <esowiki> [[Detrovert]] N https://esolangs.org/w/index.php?oldid=78145 * Hakerh400 * (+6701) +[[Detrovert]]
15:48:16 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78146&oldid=78103 * Hakerh400 * (+16) +[[Detrovert]]
15:48:19 <esowiki> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=78147&oldid=77146 * Hakerh400 * (+16) +[[Detrovert]]
15:56:02 <b_jonas> ais523: is that limit proportion zero for q=2 but greater than zero for q=3 ?
15:59:05 <ais523> b_jonas: the limit proportion is never zero
16:02:14 -!- ais523 has quit (Quit: quit).
16:17:42 -!- arseniiv has joined.
16:21:41 -!- FreeFull has joined.
16:27:55 -!- FreeFull has quit.
16:28:51 -!- FreeFull has joined.
16:48:18 -!- user24 has quit (Quit: Leaving).
16:51:08 -!- sprocklem has joined.
16:59:28 <b_jonas> yay, the wonders of the internet! a second person who knows biology has confirmed the answer I got to my shark identification question
16:59:54 <b_jonas> you can get expert opinions on topics you know nothing about (like fish, in my case)
17:39:49 -!- sprocklem has quit (Quit: ...).
17:40:04 -!- rain1 has quit (Quit: Leaving).
17:49:21 -!- Sgeo has joined.
18:28:14 -!- rain1 has joined.
18:37:59 -!- rain1 has quit (Quit: Leaving).
18:50:41 <arseniiv> b_jonas: yeah that’s great, though still it doesn’t happen too often
18:58:09 <arseniiv> <b_jonas> zzo38: I don't understand the context. what is snakebird? => that wasn’t exactly zzo38 :D Snakebird is a puzzle game in which you are given birds in the form of snakes on a square grid. A bird can usually move in cardinal directions step at a time as a regular snake from the snake game does, but after each step it experiences gravity and may fall on something sharp or out of the map, which means you need to undo. As the regular snake, a bi
18:58:09 <arseniiv> rd can block its movement and this means a dead end too. In the game, you need to touch every bird’s head to a portal, and they are sucked into it, presumably to the next level
19:01:57 <arseniiv> I’m not finished the game yet, it’s definitely a good level of hard, a bit more than I’m capable of :D agree with myname and rain1
19:06:59 -!- adu has quit (Quit: adu).
19:37:37 -!- imode has joined.
20:14:10 -!- arseniiv has quit (Ping timeout: 256 seconds).
20:19:08 -!- arseniiv has joined.
20:26:58 -!- arseniiv has quit (Ping timeout: 260 seconds).
20:39:54 -!- rain1 has joined.
21:04:45 <esowiki> [[User:PythonshellDebugwindow/(Unnamed language)]] M https://esolangs.org/w/index.php?diff=78148&oldid=78144 * PythonshellDebugwindow * (+165) /* Specification */ Comments
21:52:24 -!- sprocklem has joined.
22:15:32 -!- Arcorann_ has joined.
22:16:05 -!- Arcorann_ has quit (Remote host closed the connection).
22:16:32 -!- Arcorann_ has joined.
22:31:35 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] M https://esolangs.org/w/index.php?diff=78149&oldid=76501 * RocketRace * (+219) Some clarifications regarding backwards time
22:38:45 -!- Lord_of_Life has quit (Read error: Connection reset by peer).
22:39:49 -!- Lord_of_Life has joined.
22:39:50 -!- Lord_of_Life has quit (Changing host).
22:39:50 -!- Lord_of_Life has joined.
23:08:51 -!- joast has joined.
23:11:37 -!- 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.”).
23:51:08 -!- FreeFull has quit.
23:56:09 -!- t20kdc has quit (Remote host closed the connection).
2020-10-26
00:42:12 -!- sprocklem has quit (Ping timeout: 260 seconds).
00:42:57 -!- Arcorann_ has quit (Read error: Connection reset by peer).
00:43:23 -!- Arcorann_ has joined.
00:52:28 -!- Lord_of_Life has quit (Ping timeout: 256 seconds).
00:55:23 -!- Lord_of_Life has joined.
01:46:57 -!- zeroed has quit (Quit: ZNC 1.7.2+deb3 - https://znc.in).
01:54:17 -!- adminq has joined.
02:24:04 -!- tromp has quit (Remote host closed the connection).
02:26:28 <esowiki> [[Binary Pi-calculus]] N https://esolangs.org/w/index.php?oldid=78150 * RocketRace * (+1477) Create page
02:28:51 <esowiki> [[Binary Pi-calculus]] M https://esolangs.org/w/index.php?diff=78151&oldid=78150 * RocketRace * (+2) Fix some misplaced 1s in bound name encodings
02:33:41 <esowiki> [[Binary Pi-calculus]] M https://esolangs.org/w/index.php?diff=78152&oldid=78151 * RocketRace * (+77) Move Wikipedia link to external resources
02:34:46 <esowiki> [[Language list]] M https://esolangs.org/w/index.php?diff=78153&oldid=78146 * RocketRace * (+25) binary pi-calculus
02:36:44 <esowiki> [[User:RocketRace]] M https://esolangs.org/w/index.php?diff=78154&oldid=77866 * RocketRace * (+100) Binary pi-calculus
02:38:01 <esowiki> [[Special:Log/move]] move * RocketRace * moved [[Binary Pi-calculus]] to [[Binary pi-calculus]]: Capitalization
02:57:49 -!- tromp has joined.
03:02:37 -!- tromp has quit (Ping timeout: 264 seconds).
03:51:12 -!- tromp has joined.
03:55:52 -!- tromp has quit (Ping timeout: 260 seconds).
04:31:32 -!- sprocklem has joined.
04:45:18 -!- tromp has joined.
04:49:43 -!- tromp has quit (Ping timeout: 246 seconds).
05:39:26 -!- tromp has joined.
05:43:45 -!- tromp has quit (Ping timeout: 240 seconds).
06:33:34 -!- tromp has joined.
06:38:17 -!- tromp has quit (Ping timeout: 256 seconds).
06:38:30 <int-e> `? oerjan
06:38:33 <HackEso> Your omnidryad saddle principal ideal golfing toe-obsessed "Darth Ook" oerjan the shifty eldrazi grinch is a punctual expert in minor compaction. Also a Groadep who minces Roald Dahl. He could never remember the word "amortized" so he put it here for convenience. His arkup-nemesis is mediawiki's default diff. He twice punned without noticing it.
06:39:04 <int-e> hope he's okay
06:45:57 <shachaf> Yes.
06:46:18 <shachaf> Man. I was going to email him but then I didn't know what to say.
07:10:18 <imode> what's up with oerjan?
07:11:21 <int-e> not a clue, he just disappeared from this channel
07:11:54 <imode> woah, holy shit, he hasn't spoken here in two months?
07:12:44 <imode> holy crap longer than that..
07:12:57 <int-e> But as I recall it it was a gradual process, not totally abrupt.
07:13:12 <imode> has anybody been in contact with him?
07:14:55 <imode> at the worst case, a "Hey, just checking in, haven't seen you around for a while, courtesy call." e-mail would be a good idea.
07:27:40 -!- tromp has joined.
07:31:01 -!- tromp has quit (Remote host closed the connection).
07:31:16 -!- tromp has joined.
07:34:36 -!- Sgeo has quit (Read error: Connection reset by peer).
07:46:11 -!- Lord_of_Life has quit (Changing host).
07:46:11 -!- Lord_of_Life has joined.
08:08:36 -!- adminq has changed nick to zeroed.
08:08:45 -!- hendursa1 has joined.
08:11:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
09:02:05 -!- imode has quit (Ping timeout: 240 seconds).
10:03:14 -!- sprocklem has quit (Ping timeout: 272 seconds).
10:41:03 -!- t20kdc has joined.
12:03:25 <esowiki> [[Pi Calculus]] M https://esolangs.org/w/index.php?diff=78157&oldid=77430 * PythonshellDebugwindow * (+27) /* See also */ update
12:19:57 <esowiki> [[User:PythonshellDebugwindow/(Unnamed language)]] M https://esolangs.org/w/index.php?diff=78158&oldid=78148 * PythonshellDebugwindow * (+234) /* Specification */ Functions
12:28:42 -!- arseniiv has joined.
12:52:59 -!- wib_jonas has joined.
12:56:29 <wib_jonas> `slashlearn vacuum train//Vacuum trains are the 21st century solution to halt spreading airborne infections on public transport.
12:56:32 <HackEso> Learned 'vacuum train': Vacuum trains are the 21st century solution to halt spreading airborne infections on public transport.
12:56:39 <wib_jonas> and I guess that obsoletes the previous explanation
12:56:45 <wib_jonas> `? vacuum tube
12:56:46 <HackEso> After the London terrorist attacks of 2005, the Underground was completely evacuated. Without air resistance, the trains would go at blazingly fast speeds between the terminals. This is called a vacuum tube. Sadly, current technology doesn't let passengers travel that way.
12:56:52 <wib_jonas> `forget vacuum tube
12:56:54 <HackEso> Forget what?
13:29:31 -!- hendursa1 has quit (Quit: hendursa1).
13:29:51 -!- hendursaga has joined.
13:37:43 -!- wib_jonas has quit (Quit: Connection closed).
13:45:02 -!- Sgeo has joined.
14:04:33 -!- arseniiv has quit (Ping timeout: 260 seconds).
14:22:17 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:23:22 -!- arseniiv has joined.
14:49:36 -!- laerling has joined.
14:50:27 -!- laerling has quit (Changing host).
14:50:27 -!- laerling has joined.
15:02:58 -!- arseniiv has quit (Ping timeout: 256 seconds).
15:26:04 -!- arseniiv has joined.
15:57:35 -!- FreeFull has joined.
16:36:41 -!- arseniiv has quit (Ping timeout: 256 seconds).
16:48:28 -!- arseniiv has joined.
17:40:03 -!- deltaepsilon23 has joined.
17:43:24 -!- deltaepsilon23 has changed nick to delta23.
18:01:23 -!- imode has joined.
18:08:12 -!- imode has quit (Quit: WeeChat 2.9).
18:08:30 -!- imode has joined.
18:14:33 <b_jonas> I got the new mechanical keyboard. I think this is also not the right keyboard for me
18:14:50 <b_jonas> I'll certainly give it a few evenings of attempt, but my first experience sucks
18:15:21 <b_jonas> it has totally the wrong feeling in the fingers as you push the buttons. it's definitely not for typing. might be good for gaming for all I know, I can't tell, I'm not a gamer
18:17:46 <imode> I felt the same way when I got my wife a mechanical keyboard. it just doesn't feel the same, but I guess I'm just used to the smaller travel distance, considering I use a laptop and type on a chiclet keyboard.
18:21:14 <b_jonas> the mechanical keyboard that I bought earlier and returned in two weeks also felt bad in somewhat of the same way, but that one was an easy decision because eventually I could reproduce that it doubles some keypresses, which is not something that I can do accidentally on a keyboard that I'm not used to
18:21:30 <b_jonas> if this doesn't have such a stupid mistake, then it will be harder to prove that it's not me, it's the keyboard
18:21:58 <b_jonas> I guess I'll have to take a chance and order a keyboard from East Asia again, despite the pandemic
18:22:54 <b_jonas> let me edit some photos, that's an entirely bad test for the keyboard since I'm doing it mostly by mouse
18:23:04 <b_jonas> basically I need two keys for it: control and shift
18:23:16 <b_jonas> and I'll get back to this keyboard tomorrow
18:23:25 <b_jonas> also I have the headphones here, I guess I'll try that first
18:25:42 -!- aaaaaa has joined.
18:43:32 <b_jonas> headphones seem to work (but oddly low volume), at least the speaker part, let me try the microphone
18:45:08 <b_jonas> microphone works too. there's some noise but not terrible
18:45:19 <b_jonas> noise in the mic that is, not the speaker
18:48:03 <esowiki> [[Probablyfuck]] N https://esolangs.org/w/index.php?oldid=78159 * Rdococ * (+2975) Created page with "Probablyfuck is a variant of [[brainfuck]] based on the principles of [https://en.wikipedia.org/wiki/Stochastic_computing stochastic computing]. Cell values are probabilistic..."
18:48:18 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78160&oldid=78159 * Rdococ * (-2) /* Multiplication */
18:48:39 <esowiki> [[User:Rdococ/Old]] N https://esolangs.org/w/index.php?oldid=78161 * Rdococ * (+4487) Created page with "'Ello there. This is my user page. On IRC, I also go by the nickname of Roger9. See my entries below, great and terrible. == My self-evaluation system == I've noticed a tende..."
18:48:49 <b_jonas> doesn't seem to fit my right ear well though
18:50:03 <esowiki> [[User:Rdococ]] https://esolangs.org/w/index.php?diff=78162&oldid=69934 * Rdococ * (-4275) Replaced content with "See [[User:Rdococ/Old]] for my original user page from before 2020. {| class="wikitable" |- ! Language !! Description |- | [[Probablyfuck]] || An exploration of stochasti..."
18:50:17 <b_jonas> for reference: black plug is speaker, red plug is microphone. the other convention is green for speaker and pink for microphone. having two color conventions is confusing.
18:52:13 <esowiki> [[Swapfuck]] M https://esolangs.org/w/index.php?diff=78163&oldid=61337 * Rdococ * (-356) /* Speculation */
18:52:21 <esowiki> [[User:Rdococ]] M https://esolangs.org/w/index.php?diff=78164&oldid=78162 * Rdococ * (+90)
18:54:36 <esowiki> [[User:Rdococ]] M https://esolangs.org/w/index.php?diff=78165&oldid=78164 * Rdococ * (+84)
18:56:08 <esowiki> [[Language list]] M https://esolangs.org/w/index.php?diff=78166&oldid=78153 * Rdococ * (+19) /* P */ add probablyfuck
19:23:23 -!- sprocklem has joined.
19:29:43 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78167&oldid=78160 * Rdococ * (+28)
19:36:30 <esowiki> [[Probablyfuck]] https://esolangs.org/w/index.php?diff=78168&oldid=78167 * Rdococ * (+616) /* Examples */ added squaring example
19:37:06 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78169&oldid=78168 * Rdococ * (+24) /* Multiplication */
19:37:36 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78170&oldid=78169 * Rdococ * (-22) /* Multiplication */
19:38:35 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78171&oldid=78170 * Rdococ * (+14) /* Squaring */
20:05:44 <esowiki> [[Khartridge]] M https://esolangs.org/w/index.php?diff=78172&oldid=51773 * PythonshellDebugwindow * (+29) Cat (technically true, according to #Uses)
20:09:59 <esowiki> [[]] M https://esolangs.org/w/index.php?diff=78173&oldid=62958 * PythonshellDebugwindow * (+36) /* Examples */ Add a warning: the examples are on the right
20:22:02 <imode> managed to get snapshot-based serialization working. pausing the interpreter at any given moment will give you executable code that, when ran, reconstructs the state of the interpreter and keeps chugging along.
20:23:43 -!- t20kdc has quit (Quit: Quitting).
20:42:52 -!- delta23 has quit (Quit: Leaving).
20:45:08 -!- iscordian[m] has quit (*.net *.split).
20:45:11 -!- tswett[m] has quit (*.net *.split).
20:45:11 -!- wmww has quit (*.net *.split).
20:45:11 -!- moony has quit (*.net *.split).
20:45:12 -!- myndzl has quit (*.net *.split).
20:45:57 -!- myndzi has joined.
20:46:47 -!- moony has joined.
20:47:24 -!- iscordian[m] has joined.
20:49:10 -!- wmww has joined.
20:52:31 -!- tswett[m] has joined.
21:26:37 -!- tromp has quit (Remote host closed the connection).
21:36:46 -!- tromp has joined.
21:50:02 -!- sftp has quit (Ping timeout: 260 seconds).
21:52:06 -!- tromp has quit (Remote host closed the connection).
21:54:40 -!- sftp has joined.
22:08:26 -!- tromp has joined.
22:21:44 -!- tromp has quit (Remote host closed the connection).
22:35:18 -!- Arcorann_ has joined.
22:36:10 <b_jonas> `? protractor
22:36:14 <HackEso> protractor? ¯\(°​_o)/¯
22:36:23 <esowiki> [[EmojiCoder]] https://esolangs.org/w/index.php?diff=78174&oldid=66406 * Qh4 * (+2) /* Comments */ emoji is appropriate here
22:51:39 -!- tromp has joined.
22:56:05 -!- sftp has quit (Ping timeout: 240 seconds).
23:24:03 -!- FreeFull has quit (Read error: Connection reset by peer).
23:45:13 -!- deltaepsilon23 has joined.
23:45:27 -!- sftp has joined.
2020-10-27
00:14:47 -!- deltaepsilon23 has changed nick to delta23.
00:16:03 <arseniiv> `? compass
00:16:07 <HackEso> compass? ¯\(°​_o)/¯
00:16:11 <arseniiv> `? pass
00:16:13 <HackEso> pass? ¯\(°​_o)/¯
00:16:25 <arseniiv> `? password
00:16:26 <HackEso> The password of the month is Algol Waterloo Athens aftermath quadrant hydraulic tissue exodus stormy decadence egghead resistor flatfoot escapade newborn recipe
00:16:44 <arseniiv> eh
00:17:18 <b_jonas> yeah, I grabbed it at the start of this month
00:39:26 -!- sftp has quit (Ping timeout: 258 seconds).
00:40:13 -!- sftp has joined.
00:52:56 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
00:52:59 -!- Lord_of_Life_ has joined.
00:54:46 -!- arseniiv has quit (Ping timeout: 246 seconds).
01:45:05 -!- sftp has quit (Ping timeout: 240 seconds).
02:30:41 -!- sftp has joined.
04:07:43 -!- dcristofani has joined.
04:26:01 -!- dcristofani has quit (Ping timeout: 264 seconds).
04:50:47 -!- adu has joined.
05:02:05 -!- dcristofani has joined.
05:32:38 -!- dcristofani has quit (Ping timeout: 260 seconds).
06:07:26 -!- Bowserinator has quit (Ping timeout: 256 seconds).
06:08:12 -!- moony has quit (Ping timeout: 260 seconds).
06:08:13 -!- ATMunn has quit (Ping timeout: 260 seconds).
06:08:21 -!- iovoid has quit (Ping timeout: 272 seconds).
06:32:26 -!- aaaaaa has quit (Quit: leaving).
07:16:48 -!- tromp has quit (Remote host closed the connection).
07:25:32 -!- dcristofani has joined.
07:30:50 -!- Sgeo has quit (Read error: Connection reset by peer).
07:34:51 -!- dcristofani has quit (Ping timeout: 256 seconds).
07:37:18 -!- adu has quit (Quit: adu).
07:37:53 -!- ATMunn has joined.
07:38:29 -!- Bowserinator has joined.
07:42:53 -!- iovoid has joined.
07:43:21 -!- moony has joined.
07:53:12 -!- tromp has joined.
07:54:49 -!- wesleyac has quit (Quit: ZNC 1.8.2 - https://znc.in).
07:54:58 -!- wesleyac has joined.
07:58:28 -!- tromp has quit (Ping timeout: 260 seconds).
07:59:25 -!- tromp has joined.
08:07:55 -!- hendursa1 has joined.
08:09:52 -!- sprocklem has quit (Ping timeout: 260 seconds).
08:10:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:49:15 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
09:27:10 -!- dcristofani has joined.
09:33:06 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] M https://esolangs.org/w/index.php?diff=78175&oldid=78149 * RocketRace * (+140) Recommended race condition strategies
09:33:51 -!- imode has quit (Ping timeout: 260 seconds).
10:00:38 -!- arseniiv has joined.
10:05:20 -!- dcristofani has quit (Ping timeout: 272 seconds).
10:19:03 -!- t20kdc has joined.
10:24:13 <Taneb> There's an awful lot of maths out there
10:24:32 -!- delta23 has quit (Quit: Leaving).
10:26:45 -!- dcristofani has joined.
11:37:01 <int-e> Pfft, tfw you work half an hour building a stack of boxes to reach an area that turns out to be supposedly unreachable :)
11:38:16 <Taneb> int-e: ...context?
11:42:24 <int-e> Amnesia: The Dark Descent. I guess my reward is a closeup of this https://int-e.eu/~bf3/tmp/halla.jpg ... stack of boxes from above: https://int-e.eu/~bf3/tmp/outofbounds.jpg
11:42:54 <Taneb> Ahaha
11:43:02 <int-e> the latter also has a few wooden boards whose backside face is missing.
11:44:01 <int-e> which is a strong indication that the designers didn't think the area could be reached.
11:44:12 <FireFly> heh
11:44:20 <FireFly> 'hallå!', cute
11:44:23 <FireFly> lit. 'hi!'
11:45:08 <int-e> Yeah you can get a glimpse of that from a comparatively small stack of boxes.
11:45:21 <int-e> And one that actually looks climbable ;)
11:45:47 <FireFly> is swedish like, a thing in the settnig of amnesia, or is the sign/message just an easter egg?
11:45:57 <FireFly> setting*
11:46:09 <int-e> the latter
11:46:13 <FireFly> makes sense
11:46:25 <int-e> language is english
11:46:27 <FireFly> I played a tiny, tiny bit of penumbra but it was too terrifying fro me
11:46:29 <FireFly> for*
11:46:34 <FireFly> why am I so typoful today..
11:49:12 <FireFly> I don't think horror is my thing
11:49:15 <int-e> https://en.wikipedia.org/wiki/Frictional_Games is a swedish company though
11:49:46 <int-e> (Which is what I thought, but I wasn't sure.)
11:50:00 <int-e> I'm not sure it's for me either.
11:50:33 <int-e> This is before it gets really scary though.
11:53:44 <int-e> Just for completeness, this is the same stack from below https://int-e.eu/~bf3/tmp/boxes.jpg
11:54:23 <int-e> and initially those boxes were distributed over about 3 rooms.
11:55:08 <int-e> Oh well. I kind of hoped for a proper secret area, so this is a bit disapppointing :)
12:05:23 <arseniiv> hello bye!
12:05:25 -!- arseniiv has quit (Quit: gone too far).
12:05:36 <fizzie> I've been looking at this "reMarkable 2" device. Cons: a bit expensive, tips of the pens apparently wear out over time. Pros: seems quite hackable, all members of the GitHub org of the company that makes it have photos of cats as their profile pictures on GitHub.
12:05:54 <fizzie> Especially that last bit's pretty compelling.
12:06:39 <myname> i baught a likebook with a pen for about half the price
12:06:52 <myname> it runs on an older version of android, pretty hackable
12:07:31 <fizzie> Does the screen feel like glass or like paper? I've got a ChromeOS tablet with a pen on it, and it just doesn't do it for me.
12:08:14 <myname> it's not as smooth as glass, but i wouldn't call it paper
12:15:30 -!- arseniiv has joined.
12:40:58 <myname> i am a bit angry that the noteslate pretty much never really came to be
12:42:57 <myname> i heard about it like 6 or 7 years ago and got excited. now you can "pre-order" on the web page with shipping expected in august 2016
12:45:23 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] https://esolangs.org/w/index.php?diff=78176&oldid=78175 * RocketRace * (+141) Yeet pointers into the void
13:02:10 -!- hendursa1 has quit (Quit: hendursa1).
13:02:29 -!- hendursaga has joined.
13:04:13 -!- hendursaga has quit (Client Quit).
13:04:25 -!- hendursaga has joined.
13:12:29 <esowiki> [[Eternity]] https://esolangs.org/w/index.php?diff=78177&oldid=72746 * Jabutosama * (+17) added year category
13:15:26 -!- tromp has quit (Remote host closed the connection).
13:16:26 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] https://esolangs.org/w/index.php?diff=78178&oldid=78176 * RocketRace * (+105) Interpreter
13:33:01 -!- tromp has joined.
14:00:08 -!- rain1 has quit (Quit: Leaving).
14:09:48 -!- rain1 has joined.
14:13:45 <esowiki> [[AAEEEEEEEEEI]] https://esolangs.org/w/index.php?diff=78179&oldid=65118 * Jabutosama * (-2504)
14:14:13 <esowiki> [[AAEEEEEEEEEI]] https://esolangs.org/w/index.php?diff=78180&oldid=78179 * Jabutosama * (-211)
14:19:07 -!- Frater_EST has joined.
14:20:20 -!- Frater_EST has quit (Read error: Connection reset by peer).
14:29:43 -!- FreeFull has joined.
14:31:26 -!- Arcorann_ has quit (Read error: Connection reset by peer).
14:47:15 -!- t20kdc has quit (Ping timeout: 265 seconds).
14:55:10 -!- t20kdc has joined.
15:52:42 -!- Frankenlime has quit (Quit: quit).
15:52:54 -!- also_uplime has joined.
16:03:26 -!- tromp has quit (Remote host closed the connection).
16:05:35 -!- imode has joined.
16:05:36 <esowiki> [[Talk:Modulous]] M https://esolangs.org/w/index.php?diff=78181&oldid=78019 * Abyxlrz * (+21)
16:07:58 -!- FreeFull has quit (Remote host closed the connection).
16:09:12 -!- FreeFull has joined.
16:12:41 -!- Sgeo has joined.
16:24:18 -!- tromp has joined.
16:36:13 <esowiki> [[Special:Log/newusers]] create * Mantita223 * New user account
16:39:17 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78182&oldid=78137 * Mantita223 * (+128) /* Introductions */
16:39:39 <esowiki> [[User:Mantita223]] N https://esolangs.org/w/index.php?oldid=78183 * Mantita223 * (+2) Created page with "hi"
16:40:28 <imode> joy seems to have a lot of combinators that it comes packed with.
16:40:38 <imode> without a concrete explanation of what those combinators are.
16:43:04 -!- dcristofani has quit (Ping timeout: 272 seconds).
17:04:52 -!- imode has quit (Quit: WeeChat 2.9).
17:23:08 -!- LKoen has joined.
17:52:41 -!- aaaaaa has joined.
18:03:35 -!- orbitaldecay has joined.
18:03:53 <orbitaldecay> Greetings all
18:08:41 <orbitaldecay> I'm trying to wrap my head around the feasibility of developing an automatic SKI programmer (i.e. you feed the program constraints and it generates a SKI program that satisfies those constraints). If you think of SKI calculus as a term rewriting system, then there are E unification algorithms that do this for *convergent* term rewrite systems. Do
18:08:41 <orbitaldecay> any of you know if there are any semidecidable unification algorithms that would meet my needs or am I barking up the wrong tree for this?
18:09:11 -!- ais523 has joined.
18:09:19 <ais523> what sort of constraints are you thinking of?
18:09:29 <orbitaldecay> It's hard to find places to ask these kind of questions, so forgive me for being a little off topic.
18:09:34 <ais523> automated lambda calculus → SKI translation exists (and vice versa), but I'm not sure I understand the problem
18:09:52 -!- arseniiv has quit (Ping timeout: 256 seconds).
18:11:21 <orbitaldecay> ais523: For example, if there were a unification algorithm that worked for this, then it would be possible to provide the equation (c) (b) (a) apply apply = (b) and the unification algorithm would solve for (a) (b) (c), ideally finding the most general unifier, which would be (a) = K, (b) = (b), (c) = (c)
18:11:34 <orbitaldecay> (postfix)
18:12:17 <orbitaldecay> Equality here would represent beta equality, as can be deduced from rewrite rules
18:13:03 <orbitaldecay> I suspect that there is no decidable algorithm that does this, but I'd settle for semidecidable
18:13:16 <orbitaldecay> or rather, that this problem is not decidabe
18:13:17 <rain1> hi
18:13:18 <orbitaldecay> *decidable
18:13:20 <orbitaldecay> hi rain
18:13:26 -!- sprocklem has joined.
18:13:42 <ais523> it's probably decidable if the hardcoded parts of the program are simple enough
18:13:58 <rain1> you can write a computer program that will try to produce SKI terms that do certain things, and it can often succeed
18:14:01 <ais523> my reaction is that the only thing that would make it undecidable would be if the hardcoded parts of the program somehow ended up Turing-complete
18:15:01 <orbitaldecay> yeah, it get's tricky, because E unification is *in general* undecidable, but for specific equational theories it's either semidecidable, or completely decidable
18:15:27 <rain1> what's the exact problem in terms of input and output
18:16:18 -!- ais523 has quit (Read error: Connection reset by peer).
18:16:30 <orbitaldecay> E unification is decidable modulo a convergent term rewrite system for an equational theory, but SKI as a term rewrite system is not convergent
18:16:39 <orbitaldecay> and any TC rewrite system won't be convergent
18:17:29 -!- ais523 has joined.
18:17:31 <ais523> I guess our language is ` s k i (Unlambda-style, not Underload-style)
18:17:52 <orbitaldecay> Either language would be interesting to look at, but I've been thinking in unlambda style so far
18:18:05 <ais523> and we have an expression made of ` and some unknowns (not sure about if s k i themselves are needed)
18:18:06 <orbitaldecay> in theory, the same idea applies to both as we're just thinking of them as term rewrite systems
18:18:12 <ais523> two such expressions
18:18:15 <ais523> and need to make them equal
18:18:19 <orbitaldecay> yep
18:18:36 <orbitaldecay> I *think* this is best thought of as a unification problem
18:18:42 <orbitaldecay> but there are other ways of thinking about it
18:19:06 <rain1> i dont understand the specifics of "automatic SKI programmer"
18:19:08 <ais523> expressions of the form ````…`AB…X = (insert arbitrary data structure which doesn't contain A here) are equivalent to the lambda→unlambda compilation
18:19:21 <rain1> is the input a list of equations like X a b c = b(cbb)
18:19:23 <rain1> and it finds X
18:19:26 <ais523> so that's one fairly useful class that can be solved
18:19:30 <orbitaldecay> rain1: yes
18:19:37 <rain1> this problem is trivial
18:19:47 <orbitaldecay> How so?
18:20:10 <ais523> say you have ```Xabc = `b``cbb
18:20:31 <ais523> you can move the applys through the equals, to get X = \a.\b.\c.`b``cbb
18:20:51 <ais523> then the conversion of the nested lambda to SKI has known, entirely mechanical techniques
18:21:01 <orbitaldecay> That was more directed at rain1, but thank you for clarifying ais523
18:21:12 <ais523> I thought it might be, but decided to clarify anyway
18:21:19 -!- arseniiv has joined.
18:21:25 <ais523> especially as rain1 may be thinking only of this class of equations when saying "this problem is trivial"
18:21:37 <orbitaldecay> I suspect where we'll likely run into issues is with programs that necessarily require fixed point combinators in their solution
18:22:01 <ais523> right, say if X appears on both sides
18:22:08 <orbitaldecay> exactly
18:22:13 <ais523> you can still mechanically generate a solution *but* it may correspond to an infinite loop, not the answer you want
18:22:16 <b_jonas> wait, that's usually backwards
18:22:22 <b_jonas> the lambda form X =
18:22:23 <ais523> just like fixed point combinators in other languages
18:22:35 <ais523> oh, should be \c.\b.\a, right
18:22:50 <b_jonas> X = \a.someexpr implies the equation Xa = someexpr
18:23:08 <b_jonas> but if you go backwards, you need equality up to something
18:23:24 -!- ais523 has quit (Remote host closed the connection).
18:23:30 <b_jonas> what semantics do you even assign to your original eqution system
18:23:36 -!- ais523 has joined.
18:24:01 <orbitaldecay> b_jonas: I'm approaching SKI as a term rewrite system in this instance, so it's equality modulo beta reduction
18:24:02 <ais523> b_jonas: I'm using observational equality here, e.g. same inputs produce same outputs
18:24:14 <orbitaldecay> Ah, got it
18:24:56 <orbitaldecay> I was really only worried about equality modulo beta reduction, as I figured that'd be a lot simpler
18:25:36 -!- tromp has quit (Remote host closed the connection).
18:25:36 <ais523> >> let x a = 4/a in fix x
18:25:39 <ais523> > let x a = 4/a in fix x
18:25:42 <lambdabot> *Exception: <<loop>>
18:25:47 <rain1> the difficult problem is to find X when given equations like X S K = K
18:25:55 <ais523> the problem with fixed point combinators is
18:26:08 <ais523> ideally you would want that to output 2, rather than getting stuck in an infinite loop
18:26:28 <ais523> rain1: there are clearly an infinite number of unequal such X
18:26:53 <ais523> -2 is also a valid fixed point
18:27:45 <orbitaldecay> Yeah, certain unification theories have proof of the existence of a "most general unifier" which would be, in your case rain1, an X such that all other X's can be derived from it, but E unification does not generally have this
18:28:00 <b_jonas> a quadratic equation! we have a solver for that
18:28:12 <ais523> yes
18:28:26 -!- rain1 has quit (Quit: Leaving).
18:29:01 <ais523> sage: x=var("x"); (x == 4/x).solve(x)
18:29:02 <ais523> [x == -2, x == 2]
18:29:12 <ais523> if I go to all this trouble to install a CAS, may as well use it for this sort of thing
18:29:29 <orbitaldecay> (y)
18:29:31 <ais523> it wouldn't be hard to rejig that into a fixed-point operator, although I don't know what sorts of function it would work on
18:30:08 -!- imode has joined.
18:31:46 <orbitaldecay> I'm thinking in the space between SKI and prolog and it's very strange territory
18:31:55 <ais523> simplest polynomial on which it fails appears to be x⁵ - x == 1, that makes sense
18:31:59 <b_jonas> sage is like a meta-CAS, it is bundled with a bunch of other CASes and can also use multiple commercial ones
18:32:07 <ais523> (this is the simplest polynomial with provably no solution in radicals)
18:32:18 <ais523> b_jonas: right, I think of it like glue for CASes
18:32:30 <ais523> you just write the problem you want and it figures out which CAS to use to solve it
18:32:32 <b_jonas> the sort of glue like bash is
18:32:44 <b_jonas> ugly but usable
18:32:59 <ais523> although, this means it probably isn't very good at complex problems that go through multiple domains because I wouldn't expect it to port your data structure from one CAS to another
18:35:22 <ais523> sage: x=var("x"); find_root(x**5 - x == 1,1,2)
18:35:23 <ais523> 1.1673039782615173
18:35:36 <ais523> it can find it numerically even if it can't find it symbolically
18:37:15 -!- Lord_of_Life has quit (Changing host).
18:37:15 -!- Lord_of_Life has joined.
18:38:16 -!- rain1 has joined.
18:42:44 -!- tromp has joined.
18:48:59 <orbitaldecay> My final thoughts on this are the following: If we think about the naive algorithm of unifyiing an expression like X Y Z ` ` = Y in SKI calculus (i.e. iterating through all programs until we find one that works), it's clear to see why convergent rewrite rules are required because as we're iterating through those programs we might find one that
18:48:59 <orbitaldecay> doesn't terminate (in term rewriting language, doesn't converge). So I'm thinking that unifying a TC term rewriting system is always going to be undecidable.
18:51:02 <orbitaldecay> So this might be a project for a sub Turing language
18:54:17 <b_jonas> ais523: anyway, that doesn't mean that the case that orbital asked about is hopeless, because such an equation is not pure combinator calculus, and you can't encode it to pure combinator calculus. you don't have a way to force (fix x) to be a number (whatever kind) with equations.
18:55:42 <ais523> b_jonas: indeed
18:56:30 <b_jonas> it can just give you (fix ) where fix is a fixed point combinator and so (fix x)
18:56:44 <b_jonas> give you (fix \a -> 4/a) where fix is a fixed point combinator and so (fix x) diverges
18:58:07 <b_jonas> but there also won't always be a solution, because you can write some contradictory equations like X = k; X = `ki
18:59:08 <rain1> minikanren can discover a quine, can it discover a y combinator?
19:14:50 <ais523> I just realised that a quine is basically just a fixed point of an interpreter
19:15:50 <shachaf> This reminds me, one time I thought quines are related to Lawvere's fixed point theorem (and are constructed the same way), but then I wasn't sure the details worked out.
19:16:45 <shachaf> I should figure out the details.
19:18:57 <rain1> is kleenes fixed point theorem related to lawveres?
19:19:17 -!- deltaepsilon23 has joined.
19:19:36 -!- deltaepsilon23 has changed nick to delta23.
19:20:12 <shachaf> Hmm, it looks more like Tarski's to me.
19:26:54 <esowiki> [[Special:Log/newusers]] create * Dregni * New user account
19:29:17 <esowiki> [[Special:Log/move]] move * SunnyMoon * moved [[99]] to [[99 (Joke language)]]: There is another language called 99.
19:29:17 <esowiki> [[Special:Log/move]] move * SunnyMoon * moved [[Talk:99]] to [[Talk:99 (Joke language)]]: There is another language called 99.
19:29:49 <esowiki> [[99]] https://esolangs.org/w/index.php?diff=78188&oldid=78185 * SunnyMoon * (-32) This is left for something else now...
19:32:29 <esowiki> [[99 (disambiguation)]] N https://esolangs.org/w/index.php?oldid=78189 * SunnyMoon * (+102) Disambiguation page created!
19:34:11 <esowiki> [[99]] https://esolangs.org/w/index.php?diff=78190&oldid=78188 * SunnyMoon * (+33) To the disambiguation page we go!
19:34:53 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78191&oldid=78182 * Dregni * (+206) /* Introductions */
19:36:03 <esowiki> [[99 (disambiguation)]] M https://esolangs.org/w/index.php?diff=78192&oldid=78189 * SunnyMoon * (+4) Oh, it is italic...
19:38:40 <esowiki> [[99 (disambiguation)]] M https://esolangs.org/w/index.php?diff=78193&oldid=78192 * SunnyMoon * (+13) Finally!
19:40:47 <esowiki> [[User:Dregni]] N https://esolangs.org/w/index.php?oldid=78194 * Dregni * (+378) Dregni BrainFuckFart dev
19:45:33 <esowiki> [[User talk:Dregni]] N https://esolangs.org/w/index.php?oldid=78195 * Dregni * (+34) Created page with "I don't know what I'm doing tbh..."
20:17:41 <esowiki> [[99 (Esolang)]] N https://esolangs.org/w/index.php?oldid=78196 * SunnyMoon * (+239) Will finish this. I need to go to sleep :(
20:21:57 <esowiki> [[User talk:Dregni]] https://esolangs.org/w/index.php?diff=78197&oldid=78195 * Dregni * (+1049) /* BrainFuckFart */ new section
20:22:15 <esowiki> [[User talk:Dregni]] https://esolangs.org/w/index.php?diff=78198&oldid=78197 * Dregni * (-2) /* BrainFuckFart */
20:23:16 <esowiki> [[User talk:Dregni]] https://esolangs.org/w/index.php?diff=78199&oldid=78198 * Dregni * (+10) /* Open to */
20:37:30 <esowiki> [[BrainFuckFart]] N https://esolangs.org/w/index.php?oldid=78200 * Dregni * (+1055) Created page with "= BrainFuckFart = == BrainFuckFart a surprisingly fun language == === Concept === I started creating BrainFuckFart as a simple C++ interpreter for BrainFuck. As I went and..."
20:37:50 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78201&oldid=78166 * Dregni * (+20) /* B */
20:40:16 -!- shikhin has quit (Quit: Quittin'.).
20:40:39 -!- shikhin has joined.
20:58:41 -!- ^[_ has quit (*.net *.split).
20:58:41 -!- dog_star has quit (*.net *.split).
20:58:41 -!- ocharles has quit (*.net *.split).
20:58:41 -!- paul2520 has quit (*.net *.split).
20:58:51 -!- dog_star has joined.
20:58:54 -!- ocharles has joined.
20:58:56 -!- paul2520 has joined.
20:58:56 -!- paul2520 has quit (Changing host).
20:58:56 -!- paul2520 has joined.
20:59:08 -!- ^[_ has joined.
21:11:18 -!- deltaepsilon23 has joined.
21:13:26 -!- delta23 has quit (Ping timeout: 265 seconds).
21:13:42 -!- deltaepsilon23 has changed nick to delta23.
21:17:27 -!- orbitaldecay has quit (Remote host closed the connection).
22:26:00 -!- arseniiv has quit (Ping timeout: 256 seconds).
22:33:16 -!- ineiros has quit (Ping timeout: 246 seconds).
22:35:00 -!- ineiros has joined.
23:03:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
23:05:10 -!- hendursaga has joined.
23:08:27 -!- Arcorann_ has joined.
23:13:14 <esowiki> [[Talk:BrainFuckFart]] N https://esolangs.org/w/index.php?oldid=78202 * Pipythonmc * (+269) Why is this in first person, and who even is the author? Needs fixing
23:15:06 <esowiki> [[BrainFuckFart]] https://esolangs.org/w/index.php?diff=78203&oldid=78200 * Pipythonmc * (+10) Add stub template
23:18:50 -!- 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.”).
23:41:24 <esowiki> [[BrainFuckFart]] https://esolangs.org/w/index.php?diff=78204&oldid=78203 * Pipythonmc * (+2155) Add command table from github with some grammar fixes
23:45:18 <esowiki> [[Talk:BrainFuckFart]] https://esolangs.org/w/index.php?diff=78205&oldid=78202 * Pipythonmc * (+352) Add talk page entry
23:46:57 <user3456> wow, adding the table of commands tripled the character count
2020-10-28
00:07:29 -!- t20kdc has quit (Remote host closed the connection).
00:17:19 <esowiki> [[BrainFuckFart]] M https://esolangs.org/w/index.php?diff=78206&oldid=78204 * PythonshellDebugwindow * (-41) /* Commands */ Looking at the interpreter, it seems that consume does mean set to zero
00:18:06 <esowiki> [[BrainFuckFart]] M https://esolangs.org/w/index.php?diff=78207&oldid=78206 * PythonshellDebugwindow * (+137) /* Contact */ Categorues
00:20:12 -!- ais523 has quit (Quit: quit).
00:33:57 -!- delta23 has quit (Read error: Connection reset by peer).
00:36:12 -!- deltaepsilon23 has joined.
00:44:43 -!- imode has quit (Ping timeout: 260 seconds).
00:46:08 -!- deltaepsilon23 has quit (Quit: Quit).
00:46:33 -!- imode has joined.
00:52:45 -!- Lord_of_Life_ has joined.
00:54:48 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
01:10:16 -!- FreeFull has quit.
01:15:04 -!- Lord_of_Life_ has quit (Ping timeout: 240 seconds).
01:18:39 -!- Lord_of_Life has joined.
02:01:26 -!- adu has joined.
03:22:48 -!- pikhq has quit (Ping timeout: 260 seconds).
03:25:01 -!- pikhq has joined.
03:27:11 -!- dcristofani has joined.
03:54:25 -!- dcristofani has quit (Read error: Connection reset by peer).
04:10:04 -!- tromp has quit (Remote host closed the connection).
04:39:32 -!- tromp has joined.
04:44:40 -!- tromp has quit (Ping timeout: 260 seconds).
05:29:25 -!- MDude has joined.
05:29:26 -!- MDead has joined.
05:30:12 -!- MDude has quit (Client Quit).
05:30:22 -!- MDead has changed nick to MDude.
05:31:07 -!- MDude has quit (Client Quit).
06:25:01 -!- Sgeo has quit (Read error: Connection reset by peer).
06:36:18 -!- adu has quit (Quit: adu).
07:00:44 -!- imode has quit (Ping timeout: 240 seconds).
07:32:09 -!- tromp has joined.
07:55:27 -!- Lord_of_Life has quit (Changing host).
07:55:27 -!- Lord_of_Life has joined.
08:07:52 -!- hendursa1 has joined.
08:10:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:30:23 -!- aaaaaa has quit (Quit: leaving).
08:48:47 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] M https://esolangs.org/w/index.php?diff=78208&oldid=78178 * RocketRace * (-23) Clarify ~ behavior
08:49:25 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] M https://esolangs.org/w/index.php?diff=78209&oldid=78208 * RocketRace * (+51) Formatting
08:51:33 -!- b_jonas has quit (Quit: leaving).
08:52:27 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] M https://esolangs.org/w/index.php?diff=78210&oldid=78209 * RocketRace * (+108) Recommended implementation-dependent behavior
09:42:33 <esowiki> [[Minasm]] N https://esolangs.org/w/index.php?oldid=78211 * OsmineYT * (+23) Created page with "{{lower}} '''minasm'''"
09:43:09 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78212&oldid=78211 * OsmineYT * (+4)
09:43:19 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78213&oldid=78212 * OsmineYT * (-1)
09:51:39 -!- t20kdc has joined.
10:08:25 <esowiki> [[Turing machine]] M https://esolangs.org/w/index.php?diff=78214&oldid=77981 * OsmineYT * (+1) Grammar
10:17:44 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78215&oldid=78213 * OsmineYT * (+310)
10:17:59 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78216&oldid=78215 * OsmineYT * (-336) Blanked the page
10:18:06 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78217&oldid=78216 * OsmineYT * (+336)
10:18:39 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78218&oldid=78217 * OsmineYT * (-4)
10:19:00 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78219&oldid=78218 * OsmineYT * (+4)
10:20:00 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78220&oldid=78219 * OsmineYT * (+1)
10:21:11 <esowiki> [[User:OsmineYT]] https://esolangs.org/w/index.php?diff=78221&oldid=78010 * OsmineYT * (+12)
10:21:43 -!- hendursa1 has quit (Ping timeout: 240 seconds).
10:22:08 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78222&oldid=78220 * OsmineYT * (-10)
10:22:17 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78223&oldid=78222 * OsmineYT * (+1)
10:33:15 -!- hendursa1 has joined.
11:12:03 <esowiki> [[Template:ItalicTitle]] N https://esolangs.org/w/index.php?oldid=78224 * SunnyMoon * (+53) New template!
11:13:01 <esowiki> [[99 (Esolang)]] https://esolangs.org/w/index.php?diff=78225&oldid=78196 * SunnyMoon * (+6) Yee new template!
11:23:25 -!- arseniiv has joined.
12:16:45 <esowiki> [[Turing machine]] M https://esolangs.org/w/index.php?diff=78226&oldid=78214 * PythonshellDebugwindow * (-1) Grammar (hm? why `An T`?)
12:18:27 <esowiki> [[99 (Joke language)]] M https://esolangs.org/w/index.php?diff=78227&oldid=78184 * PythonshellDebugwindow * (+39) Distinguish/Confusion
12:20:38 <esowiki> [[99 (Esolang)]] M https://esolangs.org/w/index.php?diff=78228&oldid=78225 * PythonshellDebugwindow * (+69) Distinguish/Confusion
12:25:05 <esowiki> [[Increment]] M https://esolangs.org/w/index.php?diff=78229&oldid=73127 * PythonshellDebugwindow * (-2) /* Partial Implementation */ Correct header level
12:53:47 -!- rain1 has quit (Quit: Leaving).
13:03:55 -!- hendursa1 has quit (Quit: hendursa1).
13:04:10 -!- hendursaga has joined.
13:04:26 -!- hendursaga has quit (Client Quit).
13:04:38 -!- hendursaga has joined.
13:11:57 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78230&oldid=78171 * Rdococ * (+162) /* Multiplication */
13:15:41 <esowiki> [[Probablyfuck]] M https://esolangs.org/w/index.php?diff=78231&oldid=78230 * Rdococ * (-1) /* Instructions */
13:22:55 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78232&oldid=78223 * OsmineYT * (+885)
14:02:47 -!- FreeFull has joined.
14:24:51 -!- atehwa has joined.
14:50:22 -!- ais523 has joined.
14:50:53 <ais523> when using a shell to run a command, and specifying the command's arguments, what characters can safely be used without any form of quoting?
14:51:39 <ais523> ideally in a way that's portable across all commonly used shells on all common OSes, but failing that I'll settle for sh and its derivatives
14:52:18 -!- wib_jonas has joined.
14:52:34 <ais523> I'm pretty sure letters, digits, underscores, - and _ are safe, and fairly confident on @ and +; I suspect % is safe on POSIX but not Windows
14:52:40 <wib_jonas> ais523: yeah, that's an ugly question and usually leads to no good
14:53:06 <ais523> oh, . is safe and , probably is
14:53:34 <wib_jonas> ais523: do you count the program name itself as an argument?
14:53:39 <ais523> we might have reached the limits of ASCII punctuation now
14:53:42 <ais523> wib_jonas: not for this purpose
14:54:22 <ais523> ah, / is also safe, but I forgot to mention it earlier (I was thinking about it though)
14:54:31 <wib_jonas> does perl count as a commonly used shell? I often use it on windows because the shell sucks.
14:54:40 <wib_jonas> to invoke commands that is
14:54:55 <ais523> I think ? and * are safe on Windows, because there, globs are expanded by the program not the shell
14:55:24 <ais523> when using perl as a shell, do you need some sort of prefix to explicitly invoke shell commands?
14:55:34 <ais523> rather than perl functions?
14:55:43 <wib_jonas> yes
14:56:07 <ais523> right, there are some obvious clashes otherwise, like "rmdir"
14:56:32 <ais523> I'm trying to design the command-line interface for an esolang, and thought it would be nice if it didn't require quoting
14:56:56 <ais523> presumably if you're calling it from Perl, you're used to having to quote things
14:57:48 <wib_jonas> ais523: if you're designing a command-line interface, I suggest one that does require quoting, but only easy quoting:
14:58:40 <wib_jonas> use ascii characters other than double quote, single quote, backslash, percent, circumflex; plus possibly some non-ascii non-control characters. then you can double-quote on windows and single-quote on posix and you have no problems anywhere.
14:58:55 <ais523> ooh, is ^ safe on POSIX?
14:58:57 <wib_jonas> if you want to go further, make it also no dollar signs and no backticks so you can double-quote the arguments anywhere
14:59:30 <ais523> the thing is, the esolang uses base 64 syntax, so programs consist only of letters, digits, +, /, and I think those are all shell-safe
14:59:50 <ais523> so I just wanted two more characters to allow programs to be read from a file (as either packed base64 or ASCII-encoded base64)
15:00:08 <ais523> I believe "read this command-line argument from a file" is traditionally expressed using @
15:00:41 <wib_jonas> ais523: it's ugly because non of the punctuations are safe in all contexts. in any one context you can find two punctuation that's safe enough to make a base64 thing, but it's not a single set of two punctuation. I wish it was, I looked into it.
15:00:46 <ais523> but I'd want an alternative to specify that the file should be unpacked too (or an extra option, but that's boring and this is #esoteric)
15:01:05 <wib_jonas> for just shells I recommend . and _
15:01:27 <wib_jonas> dot and underscore if you need just two
15:01:45 <wib_jonas> but that's specifically for shells, they're not the best in all contexts
15:02:03 -!- ais523 has quit (Remote host closed the connection).
15:02:16 -!- ais523 has joined.
15:02:33 <ais523> the + and / are already locked in as part of the syntax
15:02:44 <ais523> but I think they're shell-safe anyway
15:03:03 <ais523> fwiw, if I wanted some fairly safe base64, I would probably use - and _ as the extra two characters
15:03:31 <wib_jonas> + and / were usually considered argument-separators on DOS, so a few windows commands treat it specially, but if you pass them to your program then they're safe
15:04:15 <wib_jonas> I don't like hyphen in shells, it's considered an option prefix in too many contexts
15:04:27 <ais523> oh, you mean that /a/b might be passed as "/a" "/b" rather than as one argument?
15:04:29 <wib_jonas> it's fine if you can guarantee it's not the first of an argument
15:04:48 <ais523> also, isn't the entire point of options to be passed to the program?
15:05:17 <ais523> so it doesn't really matter whether an option starting - is parsed as an option or not
15:05:22 <wib_jonas> ais523: yes of course, but you might be implementing your language in something that hijacks those before they reach your program
15:05:54 <ais523> oh, you mean at the executable level?
15:06:06 <ais523> I'm implementing it in OCaml, I don't think that hijacks options
15:08:35 <wib_jonas> ais523: do you know, off the top of your head, the option for ghc to compile *your* main program such that it doesn't scan the argv for a certain special string as an escape for settings for the haskell runtime and garbage collector? nor do many other people, so they'll misimplement your language, if programs can start with "+RTS" . that doesn't
15:08:35 <wib_jonas> even start with a hyphen. yes, it's bloody stupid of ghc, but I think this is exactly the sort of bloody stupid thing you're asking about right now.
15:09:14 <wib_jonas> ("https://downloads.haskell.org/ghc/latest/docs/html/users_guide/runtime_control.html#setting-rts-options" for reference)
15:09:51 <wib_jonas> admittedly the quoting that I mentioned wouldn't fix that either
15:10:21 <ais523> that's a nice sort of stupid thing to warn me about :-)
15:11:10 <wib_jonas> and I think programs you compile for cygwin do something even worse
15:11:18 <wib_jonas> I don't remember what, I hate cygwin and don't use it
15:12:33 <wib_jonas> I wonder if it might help if your programs always start with ./
15:12:41 <wib_jonas> then the later minuses won't matter
15:12:46 <wib_jonas> and usually the pluses either
15:12:59 <wib_jonas> neither
15:13:20 <wib_jonas> at least when it's just shell arguments, not filenames or URLs or mediawiki page titles or some such
15:18:36 -!- Sgeo has joined.
15:21:49 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78233&oldid=78232 * OsmineYT * (+503)
15:28:16 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78234&oldid=78233 * OsmineYT * (+84)
15:30:32 -!- rain1 has joined.
15:52:52 -!- wib_jonas has quit (Quit: Connection closed).
17:07:36 -!- Arcorann_ has quit (Read error: Connection reset by peer).
17:39:56 -!- MDude has joined.
17:40:02 -!- MDead has joined.
18:31:17 <oren> sed -e s/\'/\'\\\\\'\'/g -e s/^/\'/ -e s/\$/\'/
18:31:35 <oren> is there any way to do this that doesn't look this bad
18:37:29 <oren> I tried perl but it didn't work
18:39:00 <user3456> what is this code supposed to do?
18:43:06 <oren> take a string, possibly containing spaces, ', ", etc and convert to single-quoted string that can be copypasted back into bash
18:48:41 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78235&oldid=78234 * OsmineYT * (+1097)
18:55:35 <user3456> There's another way using python instead of sed
18:55:50 <user3456> but afaik this is the best when using sed
18:56:16 * user3456 isn't that experienced with sed though
18:58:53 -!- imode has joined.
19:08:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
19:09:16 -!- hendursaga has joined.
19:30:03 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78236&oldid=78235 * OsmineYT * (+535)
19:33:39 <ais523> oren: I used a Perl module off CPAN for that; overkill but more readable
19:35:27 <ais523> so my command would be perl -MShellQuote::Any::Tiny=shell_quote -lpe '$_ = shell_quote $_'
19:36:02 <ais523> I think it's using the algorithm of «replace ' with '"'"', prepend ', append '»
19:36:20 <ais523> but this algorithm is a pain to write down in almost any context because it has so many punctuation marks in it that it's hard to quote
19:37:26 <ais523> creating double-quoted strings is probably easier in Perl, because there's a builtin `quotemeta`
19:47:55 -!- orbitaldecay has joined.
19:48:09 <orbitaldecay> Greetings all
19:49:22 <orbitaldecay> Looking for some insight about linear bounded automata. A finite state machine attached to a finite, but arbitrarily large tape is equivalent in expressive power to a LBA because we can just pad the input length arbitrarily, true?
19:54:37 <orbitaldecay> To put it in other words, an LBA can execute any program that uses a finite about of memory? But any program that uses an unbounded amount of memory it cannot?
19:57:06 <imode> I wouldn't use unbounded, just whatever that finite bound is + 1.
19:58:50 <orbitaldecay> imode: but couldn't we then just pad the input by 1 symbol to allow for the required tape length?
19:59:50 <orbitaldecay> we could introduce a symbol that does nothing but pad and is otherwise ignored by the LBA
20:00:15 <ais523> the amount of memory an LBA can use is input-dependent; the amount of memory an FSM can use isn't
20:00:35 <ais523> many FSMs can take an arbitrary amount of input, but they can't store it anywhere
20:00:41 <ais523> whereas an LBA can
20:01:12 <orbitaldecay> but if the input length is > storage space in FSM algos have to be "online" in some form?
20:01:18 <orbitaldecay> not true of lbas?
20:01:50 <ais523> the way to think about it is that FSMs read the input one bit (/byte/symbol/whatever, but a fixed size) at at ime
20:01:58 <ais523> * at a time
20:02:04 <orbitaldecay> that makes sense to me
20:02:19 -!- diverger has quit (Ping timeout: 246 seconds).
20:02:23 <ais523> the way in which an LBA reads doesn't really matter, because it has enough memory to store the entire input
20:03:14 <ais523> there are middle grounds, like NL (which is particularly interesting); in NL, the program can store a finite number of points to the input, and read and reread it through them, but can't write to the space storing the input and otherwise doesn't have linear memory
20:03:23 <ais523> * pointers to the input
20:03:34 -!- diverger has joined.
20:03:54 <orbitaldecay> so, can we say that an lba is equivalent to any machine that has a finite but input dependent tape length (because of padding)? Or are we strictly stuck with linear space usage?
20:04:36 <orbitaldecay> I've seen information that claimed O(n) space usage as a limit, but I'm having trouble convincing myself of that
20:05:17 <orbitaldecay> I get the extending the alphabet argument for an arbitrary constant attached to the n
20:05:57 <orbitaldecay> I just don't see why it's limited to O(n) space
20:06:25 <orbitaldecay> Say I encode the input to be input + length(input)^2 null symbols
20:06:48 <orbitaldecay> wouldn't the dependency on the original input be quadratic in space?
20:06:59 <ais523> LBAs are limited to O(n) space by definition, if you have more it isn't an LBA
20:07:09 <ais523> but, what an LBA can do depends on the input encoding, as a consequence
20:07:31 <ais523> normally, automaton theory is concerned with specific input encodings (I think it evolved out of parser theory, and of course a parser doesn't get to choose how its input is encoded)
20:08:11 <ais523> the "encode the input to be input + length(input)^2 null symbols" step is something that an LBA can't do, and if you have a separate program or person doing it for you, that raises the computational class of the system as a whole
20:08:26 -!- diverger has quit (Ping timeout: 256 seconds).
20:09:06 <orbitaldecay> Ahhhh, bingo, that was the piece of information I wasn't seeing., That encoding of the input requires a separate computational object with greater expressive power than an LBA
20:09:27 <orbitaldecay> Thank you
20:10:34 <orbitaldecay> Is there such a thing as a polynomial bounded automaton?
20:10:44 <ais523> yes, but I don't think they've been studied much
20:11:15 <orbitaldecay> interesting
20:12:09 <ais523> LBAs have a tendency to arise "naturally" sometimes, e.g. https://esolangs.org/wiki/BuzzFizz is an LBA
20:12:22 <ais523> I'm not sure I've seen higher-degree bounded automata in the wild
20:13:49 <orbitaldecay> The interesting thing about LBAs that I was exploring is their link to monotonic grammars. I doubt polynomial bounded automata have such a nice representation
20:16:27 <orbitaldecay> Testing intuition: if you only use non-nested for loops for control flow in a procedural program, you get an LBA?
20:17:42 <ais523> this really depends on what sort of memory access and arithmetic primitives you have available
20:17:54 <ais523> it's probably an LBA if you don't have anything more powerful than "increment" for doing arithmetic
20:17:58 <orbitaldecay> Of course, I'm thinking in the realm of BF
20:18:02 <orbitaldecay> for example
20:21:01 <orbitaldecay> Okay, this is all really helpful. Thank you. I'm going to do more reading and try to expand my intuition on how this interesting little things work.
20:21:02 -!- diverger has joined.
20:25:50 -!- diverger has quit (Read error: Connection reset by peer).
20:26:07 -!- diverger has joined.
20:38:04 -!- FreeFull has quit (Read error: Connection reset by peer).
20:45:26 -!- diverger has quit (Quit: ZNC 1.7.5 - https://znc.in).
20:47:00 -!- diverger has joined.
20:57:08 -!- divergence has joined.
20:57:51 -!- diverger has quit (Ping timeout: 258 seconds).
21:04:44 -!- b_jonas has joined.
21:07:44 -!- divergence has quit (Ping timeout: 240 seconds).
21:08:15 -!- diverger has joined.
21:59:17 -!- hakatashi1 has quit (*.net *.split).
21:59:17 -!- BWBellairs has quit (*.net *.split).
21:59:17 -!- HackEso has quit (*.net *.split).
21:59:18 -!- aloril has quit (*.net *.split).
21:59:23 -!- HackEso has joined.
21:59:34 -!- hakatashi has joined.
21:59:38 -!- BWBellairs has joined.
22:01:54 -!- aloril has joined.
22:34:05 -!- aaaaaa has joined.
22:41:54 -!- Arcorann_ has joined.
23:20:44 -!- adu has joined.
23:28:39 -!- orbitaldecay has quit (Remote host closed the connection).
23:58:23 -!- tromp has quit (Remote host closed the connection).
2020-10-29
00:04:29 <esowiki> [[Language list]] M https://esolangs.org/w/index.php?diff=78237&oldid=78201 * PythonshellDebugwindow * (+13) /* M */ Add osminee's language minasm
00:49:31 <esowiki> [[Special:Log/newusers]] create * Y5n * New user account
01:00:21 -!- adu has quit (Quit: adu).
01:03:44 -!- ais523 has quit (Ping timeout: 240 seconds).
01:07:51 <esowiki> [[Special:Log/newusers]] create * Not applicable * New user account
01:12:07 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78238&oldid=78191 * Not applicable * (+121)
01:17:25 -!- t20kdc has quit (Remote host closed the connection).
01:19:44 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
01:19:58 -!- Lord_of_Life has joined.
02:00:07 -!- mich181189 has quit (Read error: Connection reset by peer).
02:00:25 -!- dingwat has quit (Ping timeout: 240 seconds).
02:00:38 -!- ocharles has quit (Read error: Connection reset by peer).
02:00:44 -!- glowcoil has quit (Ping timeout: 256 seconds).
02:00:49 -!- mich181189 has joined.
02:01:01 -!- ocharles has joined.
02:01:06 -!- dingwat has joined.
02:03:01 -!- glowcoil has joined.
02:19:56 -!- arseniiv has quit (Ping timeout: 256 seconds).
03:14:59 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
03:15:08 -!- MDead has changed nick to MDude.
03:18:19 -!- tromp has joined.
03:22:37 -!- tromp has quit (Ping timeout: 246 seconds).
03:32:18 -!- sprocklem has quit (Ping timeout: 258 seconds).
03:32:55 -!- sprocklem has joined.
04:12:22 -!- tromp has joined.
04:17:10 -!- tromp has quit (Ping timeout: 265 seconds).
04:23:42 -!- adu has joined.
04:52:07 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
05:06:26 -!- tromp has joined.
05:11:25 -!- tromp has quit (Ping timeout: 260 seconds).
05:30:20 -!- adu has quit (Quit: adu).
06:00:31 -!- tromp has joined.
06:05:33 -!- tromp has quit (Ping timeout: 260 seconds).
06:18:17 -!- tromp has joined.
06:28:58 -!- tromp has quit (Remote host closed the connection).
06:33:52 -!- Sgeo has quit (Read error: Connection reset by peer).
06:57:12 -!- tromp has joined.
07:01:45 -!- tromp has quit (Ping timeout: 240 seconds).
07:30:13 -!- tromp has joined.
07:33:08 -!- user24 has joined.
07:35:02 -!- tromp has quit (Ping timeout: 268 seconds).
07:47:43 -!- tromp has joined.
08:07:36 -!- hendursa1 has joined.
08:09:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:14:59 -!- Lord_of_Life has quit (Changing host).
08:14:59 -!- Lord_of_Life has joined.
08:41:24 -!- imode has quit (Ping timeout: 240 seconds).
09:32:12 -!- sprocklem has quit (Ping timeout: 268 seconds).
10:07:33 -!- ais523 has joined.
10:10:22 -!- aaaaaa has quit (Ping timeout: 246 seconds).
10:47:24 -!- tromp has quit (Remote host closed the connection).
10:48:07 -!- tromp has joined.
10:51:32 -!- user24 has quit (Quit: Leaving).
10:58:58 -!- MDude has joined.
11:01:46 -!- wib_jonas has joined.
11:09:26 -!- t20kdc has joined.
12:06:41 <wib_jonas> "<ais523> I'm not sure I've seen higher-degree bounded automata in the wild" => they don't come up often in theory because PSPACE covers a lot of things, and if you go above, in practical cases there's usually some space vs time tradeoff that does allow you to use fewer memory with excessive runtime.
12:09:04 <wib_jonas> we do at least have problems designed to require a large amount of memory for small input size, in the practical cryptographics sense, which is used to hash passwords such that if the hased version is stolen the attacker can't compute dictionary attacks much faster on expensive parallel GPU array hardware than you can on your cheap computer,
12:09:05 <wib_jonas> because the GPU array won't have the required amount of RAM.
12:10:45 -!- ais523 has quit (Quit: sorry for my connection).
12:10:57 -!- ais523 has joined.
12:18:08 <wib_jonas> ais523: let me get back to your question from yesterday and try to give specific answers. for windows cmd, for the arguments of the program, as far as I know, the punctuations !#$'*+,-./:;=?@[]_`{}~ are safe anywhere, but the rest are a bit ugly and hard to quote. I believe to quote any ascii printable string, you put a backslash before any
12:18:09 <wib_jonas> backslash or double quote, replace % with the four characters "^%" , and then put double quotes around the whole arguments.
12:18:37 <ais523> huh, ^ is safe in quotes on Windows?
12:19:27 <wib_jonas> the double quotes hold the argument together so it's not split on words, as well as removes the special meaning of &^()<>| , and of course you have to escape the double quote and backslash themselves, BUT % is still special inside double quotes and you can't escape it with a backslash
12:19:36 <wib_jonas> ais523: I believe it is
12:20:04 <wib_jonas> the ugly part is that % can't be protected by double quotes, and space can't be escaped by a circumflex
12:20:25 <wib_jonas> this comes from how windows passes only a single command-line argument string at some point, and it's split later
12:21:13 <wib_jonas> also, if you call the system function from C or perl or python, you have to surround the program path with double quotes and THEN put a second double quote at the very beginning of the command line. I don't know why, it just works that way.
12:26:28 <wib_jonas> on unix/POSIX sh, the ascii punctuation %+,-./:=@^]_}~ are safe in arguments; but note that some of these aren't safe in the program name itself, because ^ can start history expansion, = can assign env-vars, % can do job control, and there are a lot of built-in command names, so escaping special program names is another matter; then ! is safe
12:26:29 <wib_jonas> except sometimes in interactive shells, but there are settings that make them safe even in interactive shells; { is safe in sh but if you start bash as bash rather than sh then it enables the brace expansion setting by default and then it's unsafe; and the rest "#$&'()*;<>?[\`| you should basically always espcae with double quotes or single quotes
12:26:29 <wib_jonas> or backslashes, though there are contexts when they're safe
12:27:27 <wib_jonas> no wait, I'm wrong
12:27:32 <wib_jonas> ~ is also unsafe in a lot of paces
12:27:38 <wib_jonas> so you have to escape ~ in posix shells too
12:27:54 <wib_jonas> so %+,-./:=@]^_} are safe in posix shells or bash
12:28:48 <wib_jonas> and those characters are also safe in command-line arguments in makefiles, though again in command name position they can have special meanings
12:30:04 <wib_jonas> so, even though I recommend you to double-quote everything, because the rules are saner that way, if you really don't want to quote anything, then ascii letters and digits and the punctuations +,-./:=@]_} are safe on both cmd and sh and bash,
12:30:19 <wib_jonas> but as I explained yesterday, you shouldn't interpret that as "safe everywhere", because there's no such thing
12:30:40 <wib_jonas> and all this is only as far as I understand and with no warranty
12:31:29 <myname> gonna build a shell that's more rstrictive than posix
12:31:48 <wib_jonas> myname: try zsh
12:32:04 <wib_jonas> though now I'll have to check when exactly ^ can trigger history expansion in bash
12:32:14 <myname> i am using zsh
12:32:16 <myname> love it
12:33:06 -!- sebbu has quit (Quit: reboot).
12:37:09 <esowiki> [[Asparagus]] N https://esolangs.org/w/index.php?oldid=78239 * Not applicable * (+637) created, is working on an interpreter, and i dont think anybody will find this page so i think it is safe to keep it here for now dont know where to put it though blah blah blah
12:37:16 <wib_jonas> ok I have officially no clue when ! and ^ are recognized as history expansion, even after reading the manpage. I only know how to turn history expansion off, and that it's off by default in non-interactive shelsl
12:37:37 -!- arseniiv has joined.
12:37:55 <wib_jonas> and of course any of this can be false if you give bash enough nonstandard settings earlier in the file, but luckily bashrc and similar initialization files aren't read in a non-interactive session
12:37:57 <esowiki> [[Talk:Asparagus]] N https://esolangs.org/w/index.php?oldid=78240 * Not applicable * (+34) Created page with "uhh how do i mark a page as a stub"
12:38:22 <wib_jonas> because apparently you can set the history expansion trigger character to anything, it needn't be !
12:38:25 <esowiki> [[Talk:Asparagus]] https://esolangs.org/w/index.php?diff=78241&oldid=78240 * Not applicable * (+104)
12:42:13 <esowiki> [[Talk:Asparagus]] https://esolangs.org/w/index.php?diff=78242&oldid=78241 * Ais523 * (+201) how to mark a page as a stub
12:43:17 <ais523> myname: I think most of zsh's best-known features are also available in bash nowadays (often not by default, though); are there lesser-known advantages?
12:44:00 <ais523> wib_jonas: also I'm pretty sure that ! is one of the most dangerous characters in existence to bash, not only can it trigger history expansion, it's also hard to escape
12:45:16 <wib_jonas> ais523: yes, that's my opinion too, though someone on this channel did mention some file expansion feature they used in zsh that's indeed not in bash, I think expanding a list of non-directory files, and the equivalent of @(a{137..99999}b) which expands to any file with a then a decimal number with no leading zeroes that is 137 or more then b.
12:46:49 <wib_jonas> so if someone wants to use those, I can see there may be some use, but I for one don't think zsh is worth for me to learn, so I'm sticking bash for simpler stuff, and perl or python etc for more complex cases. mostly because I want to use programs with windows-native interfaces on windows, not ones that try to sort of pretend that you're in a
12:46:49 <wib_jonas> half-assed POSIX system on which many features are broken.
12:48:34 <wib_jonas> I mean what's the fucking point of pretending to be on a POSIX system if you're on an operating system where write doesn't immediately update the file's mtime? there are so many glaring holes that I'd rather port some of my scripts to exactly two systems, native windows and unix-like systems, than try to use the half-assed compatibility stuff
12:48:54 <wib_jonas> especially because most of my scripts only have to run on one of those.
12:55:46 <ais523> I used to use bash on Windows, only because cmd and command.com were both terrible
12:56:01 <ais523> and I wanted something that was actually usable as a shell
12:57:18 <wib_jonas> ais523: they are terrible, so I write a lot of things as perl or python scripts when they'd be simple shell one-liners in unix
12:59:15 <wib_jonas> I do that even for simple loops that would technically be possible to write in cmd
13:12:56 -!- hendursa1 has quit (Quit: hendursa1).
13:13:14 -!- hendursaga has joined.
13:20:13 -!- tromp has quit (Remote host closed the connection).
13:24:44 <esowiki> [[Quine (programming language)]] M https://esolangs.org/w/index.php?diff=78243&oldid=73700 * Not applicable * (+0) fixed speleng
13:37:42 -!- sebbu has joined.
13:38:40 -!- kspalaiologos has joined.
13:45:19 -!- kspalaiologos has quit (Quit: Leaving).
13:45:38 -!- kspalaiologos has joined.
13:45:38 -!- kspalaiologos has quit (Remote host closed the connection).
13:46:44 -!- kspalaiologos has joined.
13:48:05 -!- kspalaiologos has quit (Client Quit).
13:48:20 -!- kspalaiologos has joined.
13:48:26 -!- tromp has joined.
13:49:12 <wib_jonas> interesting, so apparently I'm allowed to have an empty array where the type of the members of the arrays is an enum with no variants, but I'm not allowed to construct an empty array whose member type is too huge. the two types are uninhabited in different ways according to the compiler.
13:50:53 <wib_jonas> I'm not allowed to even std::mem::size_of the latter empty array
13:51:15 <wib_jonas> sorry, that's for rust
14:04:57 <ais523> does anyone here have opinions on forward-confirmed reverse DNS (as an email filtering mechanism)?
14:05:06 <ais523> I was considering adding it to my mailserver, but am worried about false positives
14:11:06 <ais523> ah right, it fails on outlook.com (which has a ridiculous configuration), that's a large enough mail provider that it probably can't be turned on
14:14:58 -!- Arcorann_ has changed nick to Arcorann.
14:15:48 <ais523> blame Microsoft for ruining everything for everyone again :-(
14:16:32 <wib_jonas> (among others)
14:17:47 <ais523> it would be interesting to see a complete list of major email providers for which it fails; I suspect it's more likely to succeed for minor email providers than major email providers
14:17:59 <ais523> gmail and Yahoo! mail both pass it, those were easy enought to check
14:30:17 -!- Arcorann has quit (Read error: Connection reset by peer).
14:39:47 <esowiki> [[Coeus]] M https://esolangs.org/w/index.php?diff=78244&oldid=77790 * Tetrapyronia * (+0)
14:49:49 -!- Sgeo has joined.
15:12:40 <esowiki> [[Talk:Coeus]] N https://esolangs.org/w/index.php?oldid=78245 * OsmineYT * (+313) Created page with "I decided to make discussion because no one has made it. -- ~~~~ <s>also check [[minasm]]</s> -- ~~~~"
15:12:51 <esowiki> [[Talk:Coeus]] https://esolangs.org/w/index.php?diff=78246&oldid=78245 * OsmineYT * (+1)
15:14:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
15:16:28 -!- hendursaga has joined.
15:44:01 -!- deltaepsilon23 has joined.
15:44:50 -!- deltaepsilon23 has changed nick to delta23.
15:47:22 -!- orbitaldecay has joined.
15:50:02 -!- user24 has joined.
15:57:39 -!- imode has joined.
16:03:16 <esowiki> [[Template:ItalicTitle]] M https://esolangs.org/w/index.php?diff=78247&oldid=78224 * SunnyMoon * (+1) Oh
16:30:57 -!- Sgeo has quit (Read error: Connection reset by peer).
16:33:06 -!- Sgeo has joined.
16:39:27 -!- wib_jonas has quit (Quit: Connection closed).
16:40:11 -!- pikhq has quit (Ping timeout: 272 seconds).
16:41:46 -!- pikhq has joined.
16:45:26 -!- FreeFull has joined.
16:48:22 -!- Sgeo has quit (Read error: Connection reset by peer).
16:51:07 -!- Sgeo has joined.
18:03:19 -!- sprocklem has joined.
18:16:44 -!- orbitaldecay has quit (Ping timeout: 245 seconds).
18:24:48 -!- LKoen has joined.
18:31:14 -!- user24 has quit (Ping timeout: 264 seconds).
18:34:50 -!- t20kdc has quit (Read error: Connection reset by peer).
18:35:52 -!- t20kdc has joined.
19:11:33 -!- moony has quit (Quit: Bye!).
19:14:31 -!- aaaaaa has joined.
19:15:34 -!- FreeFull has quit (Read error: Connection reset by peer).
19:15:51 -!- moony has joined.
19:22:35 -!- lambdabot has quit (Remote host closed the connection).
19:25:30 -!- lambdabot has joined.
19:25:57 -!- 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.”).
19:32:23 -!- FreeFull has joined.
19:36:04 -!- diverger has quit (Ping timeout: 260 seconds).
20:02:56 -!- ais523 has quit (Quit: quit).
20:21:39 -!- arseniiv has quit (Quit: gone too far).
20:35:29 -!- kspalaiologos has quit (Quit: Leaving).
20:49:04 -!- deltaepsilon23 has joined.
20:49:52 -!- delta23 has quit (Disconnected by services).
20:49:55 -!- deltaepsilon23 has changed nick to delta23.
21:13:14 -!- diverger has joined.
21:31:00 -!- ais523 has joined.
21:32:08 -!- diverger has quit (Read error: Connection reset by peer).
21:35:49 -!- diverger has joined.
21:41:04 -!- delta23 has quit (Ping timeout: 240 seconds).
21:52:31 -!- deltaepsilon23 has joined.
21:52:40 -!- deltaepsilon23 has changed nick to delta23.
21:57:22 -!- arseniiv has joined.
22:02:46 <b_jonas> `? chemicals
22:02:49 <HackEso> chemicals? ¯\(°​_o)/¯
22:44:30 -!- delta23 has quit (Quit: Leaving).
22:45:50 -!- Arcorann has joined.
22:49:15 -!- rain1 has quit (Quit: Leaving).
22:50:44 -!- t20kdc has quit (Remote host closed the connection).
23:06:03 -!- atehwa has quit (Ping timeout: 260 seconds).
23:06:30 -!- atehwa has joined.
23:25:58 -!- iscordian[m] has changed nick to Discordian[m].
23:28:19 -!- FreeFull has quit.
23:33:31 <esowiki> [[Asparagus]] M https://esolangs.org/w/index.php?diff=78248&oldid=78239 * PythonshellDebugwindow * (+35) Category a
23:45:02 -!- ais523 has quit (Ping timeout: 264 seconds).
2020-10-30
00:11:44 <esowiki> [[Algebraic Programming Language]] M https://esolangs.org/w/index.php?diff=78249&oldid=72349 * PythonshellDebugwindow * (+30) /* Builtins */ Add an Exponentiation operator
00:23:13 -!- deltaepsilon23 has joined.
00:34:42 -!- sftp has quit (Ping timeout: 260 seconds).
00:43:53 -!- sftp has joined.
00:56:45 <fizzie> Why must consumer router software be so horrible? Been poking around the firmware of my ISP's bundled box, which I don't normally use but had to plug in for diagnostics, which immediately slurped in a firmware update on first boot (over plain HTTP, even) so I got an image to look around in.
00:57:18 <aaaaaa> fizzie: why any other software is that horrible? Why firefox updates so often?
00:58:38 <fizzie> I don't think other software is as horrible, in general.
00:58:44 <aaaaaa> fizzie: it is
00:59:30 <aaaaaa> when I boot windows 10, it updates each time, as well as dropbox client
01:00:07 <int-e> But updates don't mean that the software is horrible, per se.
01:00:22 <fizzie> I don't think update frequency is really that big of an issue.
01:00:23 <int-e> It might just be big and get incremental improvements in various areas.
01:00:52 <fizzie> I only mentioned the update because it's what got me to start looking around.
01:01:08 <aaaaaa> maybe, but frequent updates is a sign that developers in constant hurry
01:01:08 <int-e> Consumer routers are cheap and not expected to last long, and the software development is bound to be feature-driven.
01:01:33 <int-e> You outsource each feature to one or two CS students ;)
01:01:51 <fizzie> I did the same exercise on the router I got from an ISP back in Finland a decade ago, and so far it seems to have been equally terrible.
01:02:24 -!- arseniiv has quit (Ping timeout: 240 seconds).
01:03:48 <fizzie> Okay, to be fair, the hardcoded root account's password is no longer trivial. That old one was "ztedebug:ztedebug", this new one I don't even know the actual password to, just a md5-crypt hash.
01:05:10 <int-e> have you googled the hash?
01:05:23 <fizzie> Yes, but I didn't find much.
01:05:35 <fizzie> (Also the line in the boot script that starts telnetd is commented out, so it might be you can't really do much with that account, assuming the web interface doesn't use the system accounts.)
01:06:17 <fizzie> (If it does, it might well have a different hardcoded account though.)
01:21:45 -!- Lord_of_Life_ has joined.
01:22:50 -!- Lord_of_Life has quit (Ping timeout: 264 seconds).
01:53:05 -!- Sgeo has quit (Read error: Connection reset by peer).
01:54:50 -!- Sgeo has joined.
02:04:53 -!- sftp has quit (Ping timeout: 260 seconds).
02:09:41 -!- sftp has joined.
02:33:43 -!- Sgeo has quit (Read error: Connection reset by peer).
02:37:35 -!- Sgeo has joined.
02:57:52 -!- mbomba has joined.
03:04:03 -!- sftp has quit (Ping timeout: 260 seconds).
03:24:57 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
03:53:32 -!- sftp has joined.
04:02:19 -!- deltaepsilon23 has changed nick to delta23.
04:30:01 -!- aaaaaa has quit (Ping timeout: 260 seconds).
04:31:37 -!- aaaaaa has joined.
04:56:01 -!- mbomba has quit (Quit: WeeChat 2.9).
05:05:17 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] https://esolangs.org/w/index.php?diff=78250&oldid=78210 * RocketRace * (+376) @
05:07:42 <esowiki> [[5D Brainfuck With Multiverse Time Travel]] https://esolangs.org/w/index.php?diff=78251&oldid=78250 * RocketRace * (+221) Document all implementations
06:45:02 -!- aaaaaa has quit (Ping timeout: 264 seconds).
06:47:31 -!- kspalaiologos has joined.
06:53:06 <esowiki> [[Special:Log/newusers]] create * Byronknoll * New user account
06:56:22 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=78252&oldid=78238 * Byronknoll * (+156)
07:06:29 <esowiki> [[Turing Paint]] N https://esolangs.org/w/index.php?oldid=78253 * Byronknoll * (+729) Created page with "'''Turing Paint''' is a visual [[esoteric programming language]] in which programs are represented using images. Six colors can be used: black, white, red, green, yellow, and..."
07:13:09 <esowiki> [[Turing Paint]] https://esolangs.org/w/index.php?diff=78254&oldid=78253 * Byronknoll * (+28)
07:15:00 <esowiki> [[Turing Paint]] M https://esolangs.org/w/index.php?diff=78255&oldid=78254 * Byronknoll * (-45)
07:19:08 <esowiki> [[Special:Log/upload]] upload * Byronknoll * uploaded "[[File:Turing Paint.png]]"
07:20:02 <esowiki> [[Turing Paint]] https://esolangs.org/w/index.php?diff=78257&oldid=78255 * Byronknoll * (+74)
07:21:47 <esowiki> [[Turing Paint]] M https://esolangs.org/w/index.php?diff=78258&oldid=78257 * Byronknoll * (+0)
07:23:26 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=78259&oldid=78237 * Byronknoll * (+19) Adding Turing Paint
07:34:32 -!- Sgeo has quit (Read error: Connection reset by peer).
08:08:09 -!- hendursa1 has joined.
08:08:14 -!- gnoo has joined.
08:10:23 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:28:05 -!- sprocklem has quit (Ping timeout: 240 seconds).
08:30:12 -!- rain1 has joined.
08:49:37 <esowiki> [[Minasm]] https://esolangs.org/w/index.php?diff=78260&oldid=78236 * OsmineYT * (+0) COP
08:53:05 -!- imode has quit (Ping timeout: 240 seconds).
09:04:26 -!- gnoo has left ("Leaving").
09:04:39 -!- ganooo has joined.
09:27:16 <b_jonas> does it run an sshd?
09:27:26 <b_jonas> fizzie: ^
09:29:22 -!- rain1 has quit (Ping timeout: 256 seconds).
09:30:23 -!- ganooo has quit (Quit: leaving).
09:39:32 -!- rain1 has joined.
09:43:16 -!- delta23 has quit (Quit: Leaving).
09:47:53 <fizzie> b_jonas: No. Or at least I saw no evidence of that. The boot script does mention an ftpd though. Should maybe check what ports are open if I actually boot it.
10:06:07 <b_jonas> fizzie: yeah. and perhaps check both from the LAN port and the internet connection side, and both ipv4 or ipv6, because if the router software were designed sanely, then they might restrict listeneres that the ISP use only to the interfaces and/or protocols that they use to control your router
10:06:27 <b_jonas> it needn't be on the default port obviously
10:07:58 <b_jonas> though looking for stupid bugs in the user-facing web configuration interface, like those infamous stupid ones that let you run any shell command without authentication, might be more productive
10:08:51 <b_jonas> fizzie: also, have you searched online for other people testing this ISP's modem router?
10:09:24 <fizzie> I'm almost certain it's going to have at least one shell injection problem in the web interface, because the other one had more than I could count.
10:09:54 <fizzie> Though I guess it's theoretically possible they've learned something since then.
10:10:23 <b_jonas> maybe this time it will only have shell injection that checks your password first?
10:11:13 <fizzie> Could be, but if it has a hardcoded debug account with an unchangeable password, that's not too great either.
10:11:27 <fizzie> (I don't know if it counts as a modem when it's only got Ethernet ports in it.)
10:11:47 <b_jonas> aren't those accounts for two different interfaces though? your password for the interface intended to the customer; hard-coded debug account for the interface intended for the ISP
10:12:55 <b_jonas> only ethernet ports => ah ok, you have a point. I am using one with a COAX cable towards the ISP's side, but I heard one of the two other ISPs does have one of the ethernet ones
10:13:04 <b_jonas> s/COAX/coax/
10:13:22 <fizzie> Not necessarily. At least the previous one had one for the normal web interface, which wasn't even listening on the WAN side.
10:14:18 <b_jonas> fizzie: and was that debug login always active, or only right after a reset until you change your password?\
10:14:31 <b_jonas> because a debug account after a reset might make sense
10:21:00 <b_jonas> but I guess you can't test that
10:21:22 <fizzie> It worked when I tried it (after having set my own password for the normal "admn" account), so I think it was always on. Not really sure what its purpose was.
10:21:52 <fizzie> Can't test anything regarding that specific router-modem (it had a DSL thing), I no longer have it.
10:23:57 <fizzie> On the ISP side, I think they've got that standard remote configuration thing, TR-069.
10:50:50 -!- iovoid has quit (Quit: iovoid has quit!).
10:51:28 -!- iovoid has joined.
11:01:52 -!- hendursa1 has quit (Remote host closed the connection).
11:02:45 -!- hendursa1 has joined.
11:10:11 -!- spruit11 has quit (Ping timeout: 258 seconds).
11:11:55 -!- spruit11 has joined.
11:17:20 -!- t20kdc has joined.
11:33:00 <kspalaiologos> have there been any attempts at esolangs with graphs / trees as their primary data structure?
11:34:45 <Taneb> Eodermdrome?
11:43:35 <fizzie> I was also writing something a little less tarpitty, but didn't really finish that.
11:43:50 <fizzie> https://esolangs.org/wiki/Grasp
11:56:19 -!- rain1 has quit (Quit: Leaving).
12:01:34 -!- wib_jonas has joined.
12:02:37 <wib_jonas> kspalaiologos: does https://esolangs.org/wiki/Treehugger count? its data memory is a binary tree (with the two children distinguished)
12:03:13 <wib_jonas> I mean it's shaped as an infinite complete binary tree, and programs write or read symbols in the nodes
12:06:34 <esowiki> [[Treehugger]] https://esolangs.org/w/index.php?diff=78261&oldid=49906 * B jonas * (+8) damb see also
12:09:09 <wib_jonas> kspalaiologos: apparently there's https://esolangs.org/wiki/Hydra which uses ordered (non-binary) trees
12:09:21 <wib_jonas> or maybe unordered? I dunno
12:10:42 <wib_jonas> and you can find more if you use the https://esolangs.org/wiki/Special:Search to search for "tree" or "graph"
12:11:31 <wib_jonas> there's https://esolangs.org/wiki/Punctree by arseniiv
12:12:10 <wib_jonas> hehe, "Computational class: To be announced"
12:38:02 -!- hendursa1 has quit (Remote host closed the connection).
12:38:52 -!- hendursa1 has joined.
13:01:37 -!- LKoen has joined.
13:06:26 -!- arseniiv has joined.
13:33:17 -!- hendursa1 has quit (Quit: hendursa1).
13:33:31 -!- hendursaga has joined.
13:54:07 -!- Sgeo has joined.
13:55:15 -!- Arcorann has quit (Read error: Connection reset by peer).
14:07:15 -!- arseniiv has quit (Quit: gone too far).
14:46:19 -!- orbitaldecay has joined.
14:50:27 -!- arseniiv has joined.
15:30:30 -!- LKoen has quit (Remote host closed the connection).
15:41:56 -!- wib_jonas has quit (Quit: Connection closed).
15:51:06 -!- imode has joined.
17:28:24 -!- MDude has joined.
17:48:49 -!- arseniiv has quit (Ping timeout: 256 seconds).
17:53:30 -!- arseniiv has joined.
17:53:43 -!- LKoen has joined.
18:58:03 -!- Makonede has joined.
18:58:32 -!- Makonede has left.
19:01:47 <b_jonas> I installed the new home speaker. the bass sound is not particularly good, but then I'd probably need a larger and more expensive speaker to get better bass sound
19:02:01 <b_jonas> the sad part is that tiny earbuds can do better bass sound than this
19:12:47 <arseniiv> b_jonas: :'(
19:14:13 <b_jonas> it's getting more suspicious, because I saw a bright blue flash and heard a silent pop, as if something sparked in it
19:14:18 <b_jonas> it's still apparently working
19:14:27 <b_jonas> but this doesn't inspire confidence
19:59:53 -!- sftp has quit (Ping timeout: 268 seconds).
20:00:33 -!- sftp has joined.
20:12:03 -!- t20kdc has quit (Remote host closed the connection).
20:22:02 -!- sprocklem has joined.
20:22:14 -!- kspalaiologos has quit (Quit: Leaving).
20:45:26 -!- tromp has quit (Remote host closed the connection).
20:52:50 -!- deltaepsilon23 has joined.
21:03:02 -!- pikhq has quit (Ping timeout: 264 seconds).
21:03:51 -!- pikhq has joined.
21:04:42 -!- tromp has joined.
22:15:48 -!- tromp has quit (Remote host closed the connection).
22:21:33 -!- tromp has joined.
22:22:32 <esowiki> [[Truth-machine]] M https://esolangs.org/w/index.php?diff=78262&oldid=77937 * Tetrapyronia * (+931) Added PokBattle
22:25:25 -!- arseniiv has quit (Ping timeout: 264 seconds).
22:41:45 -!- deltaepsilon23 has quit (Quit: Leaving).
22:58:13 -!- aaaaaa has joined.
23:10:29 <esowiki> [[Special:Log/newusers]] create * Debry * New user account
23:11:35 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=78263&oldid=78252 * Debry * (+91)
23:13:56 -!- tromp has quit (Remote host closed the connection).
23:18:32 <esowiki> [[Special:Log/newusers]] create * Zorilla * New user account
23:19:25 -!- moony has quit (Remote host closed the connection).
23:20:19 -!- moony has joined.
23:21:42 <esowiki> [[Turing Paint]] M https://esolangs.org/w/index.php?diff=78264&oldid=78258 * Byronknoll * (+18)
23:39:20 -!- zorilla has joined.
23:42:48 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=78265&oldid=78263 * Zorilla * (+137)
23:43:46 -!- Arcorann has joined.
23:48:58 -!- tromp has joined.
23:54:20 -!- tromp has quit (Ping timeout: 272 seconds).
2020-10-31
00:16:14 <esowiki> [[PokBattle]] M https://esolangs.org/w/index.php?diff=78266&oldid=70759 * PythonshellDebugwindow * (+42) /* Commands/Moves */ Add categories Languages and 2016
00:17:25 <esowiki> [[PokBattle]] M https://esolangs.org/w/index.php?diff=78267&oldid=78266 * PythonshellDebugwindow * (+22) /* Commands/Moves */ Add category Thematic
00:19:18 -!- zorilla_ has joined.
00:23:12 -!- zorilla has quit (Ping timeout: 268 seconds).
00:32:46 -!- tromp has joined.
00:34:15 -!- zorilla_ has changed nick to zorilla.
00:34:39 <zorilla> hello everyone
00:35:53 -!- 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.”).
00:37:25 -!- tromp has quit (Ping timeout: 264 seconds).
00:50:28 -!- zzo38 has quit (Disconnected by services).
00:50:36 -!- zzo38 has joined.
01:21:15 -!- Lord_of_Life has joined.
01:22:50 -!- Lord_of_Life_ has quit (Ping timeout: 264 seconds).
01:26:58 -!- tromp has joined.
01:31:50 -!- tromp has quit (Ping timeout: 264 seconds).
01:33:17 -!- aaaaaa has quit (Ping timeout: 260 seconds).
01:56:20 -!- hendursaga has quit (Quit: hendursaga).
01:56:38 -!- hendursaga has joined.
01:59:38 -!- aaaaaa has joined.
02:02:49 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
02:21:08 -!- tromp has joined.
02:25:12 -!- MDude has joined.
02:25:50 -!- tromp has quit (Ping timeout: 264 seconds).
03:07:31 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
03:15:03 -!- tromp has joined.
03:19:04 -!- tromp has quit (Ping timeout: 240 seconds).
03:48:40 -!- zzo38 has quit (Read error: Connection timed out).
03:57:01 <esowiki> [[Sabdt]] https://esolangs.org/w/index.php?diff=78268&oldid=77978 * Aspwil * (-3) /* Brainfuck Interpreter (No Nested Loops up to 254 times) */
04:09:10 -!- tromp has joined.
04:13:41 -!- tromp has quit (Ping timeout: 258 seconds).
04:23:53 -!- zorilla_ has joined.
04:28:01 -!- zorilla has quit (Ping timeout: 268 seconds).
05:03:17 -!- tromp has joined.
05:07:58 -!- tromp has quit (Ping timeout: 260 seconds).
05:24:21 -!- Bowserinator has changed nick to Spookinator.
05:57:23 -!- tromp has joined.
06:02:26 -!- tromp has quit (Ping timeout: 264 seconds).
06:25:56 -!- HackEso has quit (Ping timeout: 272 seconds).
06:26:15 -!- HackEso has joined.
06:49:27 -!- Lord_of_Life has quit (Changing host).
06:49:27 -!- Lord_of_Life has joined.
06:51:38 -!- tromp has joined.
06:56:14 -!- tromp has quit (Ping timeout: 260 seconds).
07:08:47 -!- tromp has joined.
07:09:46 -!- tromp has quit (Remote host closed the connection).
07:19:40 -!- Hooloovo0 has changed nick to Hoolooboo.
07:43:19 -!- tromp has joined.
08:08:16 -!- hendursa1 has joined.
08:10:03 -!- hendursaga has quit (Ping timeout: 240 seconds).
08:27:19 -!- tromp has quit (Remote host closed the connection).
08:39:17 -!- zorilla_ has quit (Read error: Connection reset by peer).
08:42:29 -!- tromp has joined.
08:50:10 -!- LKoen has joined.
08:50:41 -!- sprocklem has quit (Quit: ...).
08:52:17 -!- Sgeo has quit (Read error: Connection reset by peer).
09:43:30 -!- gennN has joined.
09:51:05 -!- kspalaiologos has joined.
10:26:32 -!- rain1 has joined.
10:46:12 <esowiki> [[Rui]] https://esolangs.org/w/index.php?diff=78269&oldid=76604 * DanielCristofani * (+11) /* Implementations */
10:48:37 -!- kspalaiologos has quit (Quit: Leaving).
10:48:56 -!- kspalaiologos has joined.
11:59:33 -!- arseniiv has joined.
12:05:20 -!- imode has quit (Ping timeout: 256 seconds).
13:01:23 -!- gus13 has joined.
13:07:41 -!- hendursa1 has quit (Quit: hendursa1).
13:07:57 -!- hendursaga has joined.
13:09:13 -!- aaaaaa has quit (Ping timeout: 264 seconds).
13:09:14 -!- gus13 has quit (Remote host closed the connection).
13:22:59 -!- LKoen has quit (Remote host closed the connection).
14:18:57 -!- Arcorann has quit (Read error: Connection reset by peer).
14:29:37 -!- LKoen has joined.
15:05:13 -!- 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:03:03 -!- xelxebar has quit (Ping timeout: 240 seconds).
16:07:33 -!- xelxebar has joined.
16:37:51 -!- FreeFull has joined.
17:32:55 -!- LKoen has joined.
17:38:39 -!- MDude has joined.
17:52:52 -!- zzo38 has joined.
17:57:15 -!- LKoen has quit (Remote host closed the connection).
17:57:38 -!- LKoen has joined.
18:09:44 <tromp> finally an interesting ponder this for nov
18:15:09 -!- LKoen has quit (Read error: Connection reset by peer).
18:15:26 -!- LKoen has joined.
18:25:27 -!- 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.”).
18:39:47 -!- Sgeo has joined.
18:47:14 -!- sprocklem has joined.
18:48:19 -!- imode has joined.
18:52:02 -!- diverger has quit (Excess Flood).
18:52:55 -!- diverger has joined.
19:08:59 -!- kspalaiologos has quit (Quit: Leaving).
19:23:22 -!- LKoen has joined.
19:25:55 -!- diverger has quit (Quit: ZNC 1.7.5 - https://znc.in).
19:26:15 -!- diverger has joined.
19:30:09 -!- diverger has quit (Client Quit).
19:33:13 -!- diverger has joined.
19:40:22 -!- diverger has quit (Excess Flood).
19:43:04 -!- diverger has joined.
20:14:52 -!- Sgeo_ has joined.
20:18:13 -!- Sgeo has quit (Ping timeout: 264 seconds).
20:45:55 -!- Lymia has quit (Ping timeout: 240 seconds).
20:49:19 -!- Lymia has joined.
21:09:46 -!- zzo38 has quit (Ping timeout: 260 seconds).
21:14:01 -!- arseniiv has quit (Ping timeout: 264 seconds).
21:33:56 -!- zzo38 has joined.
22:23:56 -!- diverger has quit (Quit: ZNC 1.7.5 - https://znc.in).
22:24:46 -!- diverger has joined.
22:28:13 -!- diverger has quit (Remote host closed the connection).
22:29:16 -!- diverger has joined.
22:31:42 -!- FreeFull has quit (Read error: Connection reset by peer).
22:37:29 -!- Arcorann has joined.
22:38:09 -!- FreeFull has joined.
22:38:37 -!- Lord_of_Life has quit (Read error: Connection reset by peer).
22:39:36 -!- Lord_of_Life has joined.
22:39:36 -!- Lord_of_Life has quit (Changing host).
22:39:36 -!- Lord_of_Life has joined.
22:40:46 -!- diverger has quit (Quit: ZNC 1.7.5 - https://znc.in).
22:41:16 -!- diverger has joined.
22:45:44 -!- sprocklem has quit (Ping timeout: 240 seconds).
22:46:03 -!- sprocklem has joined.
23:08:12 -!- aaaaaa has joined.
23:10:36 -!- gennN has quit (Remote host closed the connection).
23:34:33 <esowiki> [[Talk:Queuenanimous]] N https://esolangs.org/w/index.php?oldid=78270 * Ais523 * (+418) are the looping commands defined correctly?
23:48:32 -!- deltaepsilon23 has joined.
23:48:37 -!- deltaepsilon23 has changed nick to delta23.
23:59:43 -!- aaaaaa has quit (Quit: leaving).
←2020-09 2020-10 2020-11→ ↑2020 ↑all