00:01:19 <esolangs> [[MoreMathRPN]] https://esolangs.org/w/index.php?diff=152366&oldid=152275 * Calculus is fun * (+165) /* Matrices */
00:11:58 <esolangs> [[Talk:MoreMathRPN]] https://esolangs.org/w/index.php?diff=152367&oldid=152201 * Calculus is fun * (+230) /* Questions */
00:13:03 <esolangs> [[MoreMathRPN]] M https://esolangs.org/w/index.php?diff=152368&oldid=152366 * Calculus is fun * (+2) /* Matrices */
00:14:55 <esolangs> [[MoreMathRPN]] M https://esolangs.org/w/index.php?diff=152369&oldid=152368 * Calculus is fun * (+5) /* Standard operations */
01:14:33 <esolangs> [[MoreMathRPN]] https://esolangs.org/w/index.php?diff=152370&oldid=152369 * I am islptng * (+42)
01:15:17 <esolangs> [[MoreMathRPN]] https://esolangs.org/w/index.php?diff=152371&oldid=152370 * I am islptng * (+13) fix
01:21:16 <esolangs> [[User:I am islptng/Draft for SLet 4]] https://esolangs.org/w/index.php?diff=152372&oldid=152340 * I am islptng * (+20) /* Commands */
01:25:32 <esolangs> [[User:I am islptng/Draft for SLet 4]] https://esolangs.org/w/index.php?diff=152373&oldid=152372 * I am islptng * (-470)
01:30:29 -!- Lykaina has quit (Quit: Leaving).
01:42:07 -!- lisbeths has quit (Quit: Connection closed for inactivity).
02:21:55 -!- lynndotpy6 has quit (Quit: bye bye).
02:22:46 -!- lynndotpy6 has joined.
02:33:13 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=152374&oldid=152363 * PrySigneToFry * (+18) /* E */
02:36:13 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=152375&oldid=152329 * PrySigneToFry * (+143)
03:10:15 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=152376&oldid=152375 * PrySigneToFry * (+520)
03:33:52 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=152377&oldid=152285 * PrySigneToFry * (+48)
03:38:27 <esolangs> [[StormLang]] https://esolangs.org/w/index.php?diff=152378&oldid=152284 * PrySigneToFry * (+36)
03:42:17 <esolangs> [[StormLang]] https://esolangs.org/w/index.php?diff=152379&oldid=152378 * PrySigneToFry * (+168)
03:43:04 <esolangs> [[StormLang/Standard Libraries]] N https://esolangs.org/w/index.php?oldid=152380 * PrySigneToFry * (+67) Created page with "{{Back|StormLang}} Currently, StormLang STL is still in discussion."
03:43:16 <esolangs> [[StormLang/Standard Libraries]] https://esolangs.org/w/index.php?diff=152381&oldid=152380 * PrySigneToFry * (+1)
03:43:35 <esolangs> [[StormLang]] https://esolangs.org/w/index.php?diff=152382&oldid=152379 * PrySigneToFry * (+41)
04:22:25 <esolangs> [[Talk:Neoff]] N https://esolangs.org/w/index.php?oldid=152383 * RainbowDash * (+390) Created page with "this is in need of a major rewrite the code before was supposed to look like normal code but abnormal, here was the original idea: <pre> Push Caller Set Let A = 0 Comefrom 4 A++ When (A == 10){ Call } Caller Set{ A = 0 Print(A has hit 10 and has been set back
05:27:14 <shachaf> int-e: https://epicpikaguy.itch.io/sea-magic
05:30:43 <korvo> Excellent, a sequel.
05:48:08 <esolangs> [[Hello world program in esoteric languages (H-M)]] M https://esolangs.org/w/index.php?diff=152384&oldid=151495 * Benben * (+140) /* Legend */ add Lenguage
06:20:32 -!- Cale has quit (Quit: Leaving).
06:50:15 <esolangs> [[Empty Program]] M https://esolangs.org/w/index.php?diff=152385&oldid=151524 * Benben * (+135) /* Scratch(text), Kitten3(text), Kitten4(text) */ add link of scratch blocks
07:04:07 <esolangs> [[]] https://esolangs.org/w/index.php?diff=152386&oldid=151640 * PrySigneToFry * (+0)
07:09:23 <esolangs> [[Talk:99 bottles of beer]] https://esolangs.org/w/index.php?diff=152387&oldid=84795 * PrySigneToFry * (+1748)
07:15:12 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=152388&oldid=152376 * PrySigneToFry * (+2)
07:53:12 -!- craigo has joined.
08:24:20 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
08:32:28 <esolangs> [[Special:Log/move]] move * 47 * moved [[IEO-fork]] to [[Tryit.org]]
08:32:28 <esolangs> [[Special:Log/move]] move * 47 * moved [[Talk:IEO-fork]] to [[Talk:Tryit.org]]
08:32:40 <esolangs> [[Talk:Tryit.org]] https://esolangs.org/w/index.php?diff=152393&oldid=152391 * 47 * (-216) Blanked the page
08:34:31 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152394&oldid=152389 * 47 * (-906)
08:36:02 <esolangs> [[Special:Log/upload]] overwrite * 47 * uploaded a new version of "[[File:IEO-fork home.png]]"
08:36:57 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152396&oldid=152394 * 47 * (+41)
08:37:16 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152397&oldid=152396 * 47 * (+6)
08:37:27 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152398&oldid=152397 * 47 * (+0)
08:37:45 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152399&oldid=152398 * 47 * (+16)
08:40:45 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152400&oldid=152399 * 47 * (+65)
08:46:17 <esolangs> [[Tryit.org]] https://esolangs.org/w/index.php?diff=152401&oldid=152400 * 47 * (+39)
10:18:00 -!- Sgeo has quit (Read error: Connection reset by peer).
10:45:09 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=152402&oldid=152388 * PrySigneToFry * (+473)
10:47:09 <esolangs> [[Loop preventing brainfuck]] M https://esolangs.org/w/index.php?diff=152403&oldid=152355 * C++DSUCKER * (+26)
11:40:07 <esolangs> [[Loop preventing brainfuck]] https://esolangs.org/w/index.php?diff=152404&oldid=152403 * C++DSUCKER * (+26)
12:23:50 -!- roper has joined.
13:08:42 <esolangs> [[User:I am islptng/Game:Nonsense]] https://esolangs.org/w/index.php?diff=152405&oldid=151908 * PrySigneToFry * (+594)
13:40:30 -!- ais523 has joined.
14:07:06 <int-e> shachaf: Oh well, at least I've got 12 (all?) medals: https://int-e.eu/~bf3/tmp/seamagic.png
14:27:17 <esolangs> [[User:I am islptng/Draft for SLet 4]] https://esolangs.org/w/index.php?diff=152406&oldid=152373 * I am islptng * (-651) /* Commands */
14:29:48 <esolangs> [[User:I am islptng/Draft for SLet 4]] https://esolangs.org/w/index.php?diff=152407&oldid=152406 * I am islptng * (-123) /* Commands */
14:31:22 <esolangs> [[User:I am islptng/Game:Nonsense]] https://esolangs.org/w/index.php?diff=152408&oldid=152405 * I am islptng * (+3) fix
14:36:01 <b_jonas> huh, is this some new game?
14:36:14 <int-e> 06:27:14 <shachaf> int-e: https://epicpikaguy.itch.io/sea-magic
14:37:57 <b_jonas> apparently "traitorous" and "treacherous" have somewhat different meanings in English and they might have different etimologies. I assumed "treacherous" was just a weird hard to remember irregular spelling for what should be "traitorous"
14:38:47 <int-e> a swamp can be treacherous but it lacks the freedom of will that a traitor has
14:40:04 <b_jonas> they are both from latin, but from apparently two unrelated latin verbs, "trīcor" and "trādō" respectively
14:42:20 <b_jonas> there are solutions for that, like the Zendikons
14:42:41 <b_jonas> though I think on Zendikar land has its own will even when it's not a creature
14:43:05 <b_jonas> and on that plane, every land is treacherous, not just swamps
14:43:47 <int-e> wtf is... oh it's an M:tG thing
14:44:16 <b_jonas> yes, Zendikar is a plane where the land keeps changing so it's hard to make maps or explore or build anything stable
14:46:08 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=152409&oldid=152402 * PrySigneToFry * (+2)
15:11:02 <fizzie> Annoying: in this font, ▐ (right half block) is actually the inverse of ▍ (left three eights block) rather than ▌ (left half block).
15:12:19 <fizzie> Not *really* a problem for my use (I'm just doing some tick marks in a TUI that I want at double the horizontal resolution, and can set foreground/background colors appropriately and use left half block exclusively, that's exactly half the character cell in this font) but it still bothers me.
15:35:35 -!- Lykaina has joined.
15:35:44 <esolangs> [[Afth/Examples]] https://esolangs.org/w/index.php?diff=152410&oldid=152365 * Lykaina * (+532) /* Examples */ Added 5-Function RPN Calculator, updated Hello World.
15:41:10 <esolangs> [[Talk:Bitchanger Busy beaver]] https://esolangs.org/w/index.php?diff=152411&oldid=152290 * C++DSUCKER * (+238)
15:41:26 <esolangs> [[Talk:Bitchanger Busy beaver]] https://esolangs.org/w/index.php?diff=152412&oldid=152411 * C++DSUCKER * (-5)
15:50:16 <Lykaina> was able to make a 5-function rpn calculator in Afth
15:51:41 <esolangs> [[Special:Log/upload]] upload * Tommyaweosme * uploaded "[[File:Scratch progama de comer mi caca.png]]"
15:53:45 <esolangs> [[User:Tommyaweosme]] https://esolangs.org/w/index.php?diff=152414&oldid=152078 * Tommyaweosme * (+4)
16:02:17 <esolangs> [[User:Tommyaweosme/common.css]] https://esolangs.org/w/index.php?diff=152415&oldid=142976 * Tommyaweosme * (+91)
16:02:38 <esolangs> [[User:Tommyaweosme/common.css]] https://esolangs.org/w/index.php?diff=152416&oldid=152415 * Tommyaweosme * (-1)
16:02:49 <esolangs> [[User:Tommyaweosme/common.css]] https://esolangs.org/w/index.php?diff=152417&oldid=152416 * Tommyaweosme * (+3)
16:06:42 -!- ais523 has quit (Ping timeout: 252 seconds).
16:08:04 <esolangs> [[Talk:OIIAOIIA]] https://esolangs.org/w/index.php?diff=152418&oldid=152328 * Tommyaweosme * (+349)
16:08:27 <esolangs> [[Talk:OIIAOIIA]] https://esolangs.org/w/index.php?diff=152419&oldid=152418 * Tommyaweosme * (+10)
16:12:58 <esolangs> [[Talk:OIIAOIIA]] https://esolangs.org/w/index.php?diff=152420&oldid=152419 * Tommyaweosme * (+416)
16:13:10 -!- ais523 has joined.
16:14:11 <esolangs> [[User:Tommyaweosme/common.css]] https://esolangs.org/w/index.php?diff=152421&oldid=152417 * Tommyaweosme * (-93) Blanked the page
16:15:51 -!- craigo has quit (Ping timeout: 252 seconds).
16:18:51 <esolangs> [[0]] https://esolangs.org/w/index.php?diff=152422&oldid=151143 * 47 * (+4) /* G# */
16:36:47 <esolangs> [[MoreMathRPN]] https://esolangs.org/w/index.php?diff=152423&oldid=152371 * Calculus is fun * (+86) /* Matrices */
16:37:29 -!- Lord_of_Life has joined.
16:46:44 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
16:51:43 -!- Lord_of_Life has joined.
17:11:42 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
17:12:21 -!- Lord_of_Life has joined.
17:32:22 <esolangs> [[Talk:Bitchanger Busy beaver]] https://esolangs.org/w/index.php?diff=152424&oldid=152412 * C++DSUCKER * (+169)
17:32:36 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
17:33:46 -!- Lord_of_Life has joined.
17:35:48 <esolangs> [[Bitchanger Busy beaver]] https://esolangs.org/w/index.php?diff=152425&oldid=152283 * C++DSUCKER * (+94)
17:52:19 -!- Lord_of_Life has quit (Read error: Connection reset by peer).
17:52:45 <esolangs> [[Bitchanger Busy beaver]] M https://esolangs.org/w/index.php?diff=152426&oldid=152425 * C++DSUCKER * (+0)
17:58:51 -!- Lord_of_Life has joined.
19:19:33 -!- impomatic has joined.
19:22:30 <impomatic> Does anyone know the history of Fungewars, or have an earlier version? It was discussed quite a bit on the Befunge mailing list in the late 90s - other names suggested were Befunge Warriors and Funge Gladiators. https://esolangs.org/wiki/Fungewars
19:23:39 <ais523> I think Fungewars had mostly/entirely died down by the point I became interested in esolangs, and I've been here for much longer than most in this channel
19:24:42 <ais523> because I don't recall discussion about it, and the dates on the linked pages are very old
19:25:28 <ais523> I think it probably even predates the wiki?
19:25:56 <ais523> so you'd have to contact people who were active at that time
19:26:24 <impomatic> I remember Befunge from the 90s, but wasn't too interesthed at that point. I wrote a few programs in Brainfuck though.
19:29:31 <impomatic> The date on Fungewars 0.4.5 is December 2001, but the idea was being discussed 3-4 years before on the mailing list (I found the Befunge Mailing List archive).
19:32:35 <ais523> I think my interest in esolangs started in 2004 or so
19:33:01 <ais523> so it's before the period I remember, and you'll have to track down some people who were around the esolangs community before I was
19:37:16 <impomatic> Thanks, I'll try Chris Pressey, he might remember something.
19:45:19 <Lykaina> i'm having problems with Afth, with something I haven't pushed yet to github
19:47:23 <Lykaina> examples/calc.afth works, but examples/rpncalc.afth doesn't.
19:48:49 <Lykaina> the wiki page refers to 0.1, this is 0.2.
19:50:38 <korvo> Okay. What doesn't work? (The other question I usually start with is "What have you tried?" which you already answered.)
19:52:22 <Lykaina> the example file rpncalc.afth
19:52:48 <Lykaina> well, only addition works in it
19:53:11 <Lykaina> it's based on calc.afth, with everything works in
20:01:03 <int-e> shachaf: Yay. "Max rank reached!"
20:02:09 <Lykaina> the word definitions are in dict.afth
20:02:35 <Lykaina> that's the main difference between 0.1 and 0.2
20:03:03 <Lykaina> 0.1 had a tiny built-in dictionary
20:03:24 <Lykaina> i moved it to an external file
20:03:35 <korvo> int-e: Nice. I only got through the first few levels.
20:04:42 <korvo> Lykaina: It might be time to build some debugging tools. You can either go "white-box" or "clear-box", debugging by accessing the internals of the interpreter, or you could go "black-box" by treating the interpreter as opaque and writing acceptance tests in Afth.
20:05:38 -!- impomatic has quit (Quit: Client closed).
20:05:38 <korvo> Either way, don't worry about complete coverage yet. You have a git commit where everything worked, and so in the worst case, you can redo all of the work from 0.1 to 0.2. Yes, it's laborious, but sometimes it's the only way to find regressions.
20:05:39 <int-e> korvo: Some of the thinking from Bee Magic carries over, though it's quite a different game overall.
20:05:48 -!- impomatic has joined.
20:06:12 <esolangs> [[User:47/common.css]] N https://esolangs.org/w/index.php?oldid=152427 * 47 * (+91) Created page with "* {background-color:black !important; color:white !important;} a {color:purple !important;}"
20:06:27 <int-e> korvo: Also I've done nothing else today :P
20:06:36 <korvo> As you get used to writing smaller commits, tools like git-bisect can become *very* useful. I've bisected Linux and Mesa3D before, and it's actually a little fun since it only takes like five iterations.
20:06:40 <Lykaina> because i wrote it after 0.2
20:07:19 <esolangs> [[User:47/common.css]] https://esolangs.org/w/index.php?diff=152428&oldid=152427 * 47 * (-63)
20:07:20 <korvo> int-e: Good times. Some levels were about as difficult as Bee Magic for me, but some levels were much tougher; I confess that I can't figure out how to use Slide other than to softlock.
20:08:09 <korvo> Lykaina: Oh! Then there's a third possibility: that rpncalc.afth has a bug!
20:09:01 <int-e> korvo: Yeah, the sliding gave me some trouble too.
20:09:01 <Lykaina> then why does calc.afth work before the two diverge?
20:09:37 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=152429&oldid=151337 * 47 * (+7)
20:09:38 <korvo> Well, presumably the divergence introduced a bug.
20:10:26 <ais523> korvo: bisecting Linux sounds painful just because of the compile times
20:10:30 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=152430&oldid=152429 * 47 * (+14) /* Errors */
20:11:03 <ais523> hmm… in a repository that uses lots of parallel commits and does big merges of them, do bisections merge together half the commits to more quickly narrow down which of the branches the bug occurred on?
20:12:00 <korvo> ais523: The trick is to keep a git checkout of the kernel and build-and-boot from that one directory, even if using Apt, RPM, Nix, Portage, etc. for the rest of the system. For subsystems that can be 100% compiled as modules, like DRM/DRI, the build is quite incremental and spends most of its time bzip'ing the image.
20:12:13 <esolangs> [[Hello world program in esoteric languages (D-G)]] https://esolangs.org/w/index.php?diff=152431&oldid=147629 * 47 * (-8) /* G# */
20:12:44 <ais523> korvo: ah, I see, you aren't bisecting the entire kernel but just the files that seem relevant
20:12:52 <korvo> Mesa3D is the one that takes a long time to build, especially since they now use C++.
20:13:51 <ais523> I've done bisections before but don't really enjoy them, they're sufficiently time-consuming that I'd prefer to grep commit messages or reason out the bug instead
20:13:52 <korvo> ais523: Oh yeah, I'd just be diagnosing hardlocks in one piece of hardware. The worst part would be when the boot is fine but a userspace program provokes the hardlock; minutes of booting into X11 per test.
20:16:03 -!- roper has quit (Quit: leaving).
20:16:06 -!- Sgeo has joined.
20:16:46 <korvo> What's cool is that sometimes git-bisect does blame Somebody Else's Code, and usually it's right to do so! Counterfactual reasoning really does work for finding proximate causes of bugs, even if the problem is that somebody else refactored something and changed your invariants.
20:17:15 <korvo> Lykaina: How are things? Do you need more eyes?
20:19:56 <Lykaina> let me try rewriting rpncalc.afth to use relative jumps only instead of both relative and absolute
20:20:16 <ais523> korvo: this is of course an argument for programming languages being better at expressing invariants – they have moved slowly in that direction over time but still aren't really near what they'd need to manage
20:20:48 <ais523> even null-safety wasn't emphasised much until recently, even in relatively high-level languages
20:21:14 <ais523> the functional languages got there before the imperative ones, I think
20:23:34 <korvo> Yep. The trick is having a subobject classifier. In CoC or whatever, that's a type of Propositions. It's not something that imperative languages usually reify or conceptualize.
20:24:54 <korvo> In Cammy, the subobject classifier is 2, implying that everything is total-computable and discrete. Hoare logic could be described for an arbitrary f : X → Y in terms of pre- and post-conditions with types X → 2 and Y → 2.
20:25:20 <korvo> I haven't actually wired all of it up, but there's an obvious route to property-based testing and proofs of invariants and arbitrary properties.
20:26:07 <ais523> it strikes me that even something as simple as "assert on set; assert_unchecked on get" would, in addition to catching bugs, quite possibly improve the performance of the typical imperative program
20:26:20 <ais523> because the asserts on set would usually get optimised out and the asserts on get might be useful
20:27:24 <korvo> Yep. In RPython, checked bounds on arrays are not only usually JIT'd out, but repurposed into JIT guards which jump to not-yet-compiled code on failure. And if a guard fails enough, then its failure gets traced and JIT'd too.
20:28:42 <korvo> In order to make that practical, there's also guards for when exceptions are (not) raised, etc. Every check and assertion is turned into an optimization opportunity.
20:37:56 <Lykaina> i think i may have found where the problem is, but not why the problem is
20:39:47 <korvo> Nice. It might be the case that you can rewrite the code to make it simpler without having to understand the problem. Or it might be the case that the problem is small and can be repaired with surgery.
20:40:18 <Lykaina> problem is when there are two jump instructions on the same line
21:02:30 <esolangs> [[Afth]] https://esolangs.org/w/index.php?diff=152432&oldid=152334 * Lykaina * (-904) Removing "Predefined words" section, as there no longer are any.
21:09:33 <esolangs> [[Mierda]] https://esolangs.org/w/index.php?diff=152433&oldid=82388 * Kaveh Yousefi * (+88) Rectified the Hello, World! program and introduced two further examples in a repeating cat program and a truth-machine.
21:10:28 <esolangs> [[Mierda]] https://esolangs.org/w/index.php?diff=152434&oldid=152433 * Kaveh Yousefi * (+189) Added a hyperlink to my implementation of the Mierda programming language on GitHub and supplemented the Implemented category tag.
21:14:25 <esolangs> [[Afth/Examples]] https://esolangs.org/w/index.php?diff=152435&oldid=152410 * Lykaina * (+646) Updating for current version.
21:15:28 <esolangs> [[Mierda]] M https://esolangs.org/w/index.php?diff=152436&oldid=152434 * Kaveh Yousefi * (+8) Introduced line breaks in two of the example programs for reasons of aesthetics.
21:17:19 <esolangs> [[Afth]] https://esolangs.org/w/index.php?diff=152437&oldid=152432 * Lykaina * (+95) /* Jumping */ Adding notice about bug.
21:23:26 <esolangs> [[Afth/Examples]] https://esolangs.org/w/index.php?diff=152438&oldid=152435 * Lykaina * (+96) /* RPN Calculator */ added a note on how to use.
21:35:43 <esolangs> [[Talk:Bitchanger Busy beaver]] https://esolangs.org/w/index.php?diff=152439&oldid=152424 * Int-e * (+302) Question about accounting for loops.
21:37:20 <esolangs> [[MoreMathRPN]] M https://esolangs.org/w/index.php?diff=152440&oldid=152423 * Calculus is fun * (+1) /* Implicit plotter */
21:38:02 <esolangs> [[Talk:Bitchanger Busy beaver]] M https://esolangs.org/w/index.php?diff=152441&oldid=152439 * Int-e * (+1) indent a reply for better readability
21:38:06 <esolangs> [[MoreMathRPN]] M https://esolangs.org/w/index.php?diff=152442&oldid=152440 * Calculus is fun * (+1) /* Infinity */
21:39:25 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=152443&oldid=152374 * Buckets * (+14)
21:39:37 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=152444&oldid=152362 * Buckets * (+12)
21:40:30 <esolangs> [[V]] N https://esolangs.org/w/index.php?oldid=152445 * Buckets * (+1264) Created page with "V is an Esoteric programming language created by [[User:Buckets]] in 2020. (The 2D grid is of A space of 16 by 16 Containing all extended ASCII in order.) {| class="wikitable" |- ! Commands !! Instructions |- | || Move 1 down. |- | || Move 1 right. |- | <sup>n</sup> || Set
21:43:13 <esolangs> [[A+B Problem]] https://esolangs.org/w/index.php?diff=152446&oldid=150810 * Ractangle * (-57) /* ! */
21:46:10 -!- impomatic has quit (Ping timeout: 240 seconds).
21:47:29 <int-e> korvo: Hmm, when counting Brainfuck steps for BB purposes, do you have ] check the loop condition, or does it jump back to the [? I guess the latter would make +[-] take 5 steps so BBB(4)=4 answers that question...
21:48:51 <korvo> int-e: Oh, I don't recall how it's defined. I'd guess that your reasoning is right. I normally think of Brainfuck as only checking with the [ operation, and the ] is mere syntax; I know that that's not always how it's implemented though.
21:49:42 <korvo> I should clarify that I didn't define the BBB() function but lifted it from one of our myriad Brainfuck sub-pages.
21:50:08 <int-e> Either convention is fine of course, it just doesn't seem to be specified rigorously enough
21:50:50 <int-e> (when looking at http://bbgauge.info/brainfuck.html)
21:51:57 <korvo> Yeah. I should tighten up that entire page. TBH I should write a script to generate/check the first few values of those tables too.
21:52:34 <korvo> Still, I owe the community to do a good job. I'll put it on my task list.
21:54:26 <esolangs> [[Talk:Bitchanger Busy beaver]] https://esolangs.org/w/index.php?diff=152447&oldid=152441 * Int-e * (+107) clarifying the convention would help too.
22:25:11 <esolangs> [[User:RainbowDash]] https://esolangs.org/w/index.php?diff=152448&oldid=145963 * RainbowDash * (+2)
22:26:46 <esolangs> [[User:RainbowDash]] https://esolangs.org/w/index.php?diff=152449&oldid=152448 * RainbowDash * (-1) /* Esolangs I've made. */
22:41:22 <ais523> korvo: so I think the most common way to count cycles in BF is for the loop-test-and-jump to be one cycle regardless of whether the test indicates a jump or no jump, and regardless of how it's split up between the [ and ]
22:41:54 <ais523> it's commonly formulated as "[ jumps to after the ] if the cell is 0; ] jumps to after the [ if the cell is non-0" which is nicely symmetrical
22:42:25 <ais523> (BF Joust, where the timing matters, specifically mandates timing it like that – other implementations often don't specify it because it isn't observable)
22:44:15 <ais523> hmm… suppose you have an entirely unsynchronized multithreaded BF, with the threads sharing a tape but not the tape pointer, and instructions running in an arbitrary sequence (not simultaneously, but there's no constraint on how many times one thread can act before the other one does) – is it possible to write a 100% reliable mutex or semaphore, or will there always be some timing combination that defeats it?
22:45:26 <ais523> there are communication primitives you can write, like "wait for the other thread to reach a certain point in its computation" and message channels, but you can't obviously build mutexes out of those
22:46:40 <esolangs> [[ASCII Code]] https://esolangs.org/w/index.php?diff=152450&oldid=152050 * MihaiEso * (-1)
22:49:18 <b_jonas> ais523: I don't think you can do that with vanilla brainfuck, you need to add some rule for it, either a new command, or defining something that used to be undefined behavior like some underflow/overflow
22:49:54 <ais523> b_jonas: I can't think of a way to do it, but this is the sort of thing where it might be hard to prove that it's impossible
22:52:24 <ais523> actually, I have a promising start of an approach but it doesn't solve the problem on its own: thread 1 locks a mutex by checking it's zero, incrementing it, then checking it's zero – thread 2 does the same but decrements
22:53:17 <ais523> I don't think there's any way for both threads to think they've locked it, but this doesn't solve the problem of recovering if there's contention, because if one thread could discover that the other has tried to lock it without discovering whether the other thread knows about the contention or whether it took the lock
22:53:37 <ais523> * checking it's zero, incrementing it, then checking it's nonzero
23:03:35 <esolangs> [[Fish]] https://esolangs.org/w/index.php?diff=152451&oldid=148427 * MihaiEso * (+165) /* Hello, world! */
23:11:51 <esolangs> [[Fish]] https://esolangs.org/w/index.php?diff=152452&oldid=152451 * MihaiEso * (+11)
23:58:16 <esolangs> [[Fish]] https://esolangs.org/w/index.php?diff=152453&oldid=152452 * MihaiEso * (+235) /* Hello, world! */