00:17:14 -!- zzo38 has joined. 00:17:30 Now I internet is fixed (although the DNS is not yet updated). 00:29:27 -!- oerjan has joined. 00:34:27 `@ fizzie cat /hackenv/bin/slbd 00:34:28 fizzie: cd bin; sled "$1" | sed '1s/^Rosebud!$/Rosbbud!/' 00:35:12 fizzie: ^ you've been sediting scripts in bin all day and you haven't ran into that, it's sort of funny 00:35:19 looks like maybe we just don't need that command 00:37:19 `cat /hackenv/ibin/1l 00:37:20 ​#!/bin/sh \ . lib/interp \ interp_file ./interps/1l/1l_a.bin 00:37:21 `cat /hackenv/ibin/2l 00:37:21 ​#!/bin/sh \ . lib/interp \ interp_file ./interps/2l/2li.bin 00:37:28 ^ thesse may need editing 00:38:50 ``` set -e; cd "$HACKENV/ibin"; grep -Fl ". lib/interp" * # or maybe all of these 00:38:50 1l \ 2l \ adjust \ asm \ axo \ bch \ befunge \ befunge98 \ bf \ bf16 \ bf32 \ bf8 \ bf_txtgen \ boolfuck \ c \ cintercal \ clcintercal \ cxx \ dimensifuck \ forth \ glass \ glypho \ haskell \ java \ kipple \ lambda \ lazyk \ linguine \ lua \ malbolge \ pbrain \ perl \ qbf \ rail \ rhotor \ sadol \ sceql \ sh \ slashes \ trigger \ udage01 \ underload \ unlambda \ whirl 00:38:54 hmm 00:39:40 `cat /hackenv/bin/karma 00:39:40 ​#!/bin/sh \ echo "$1 has $(lib/karma "$1") karma." 00:39:41 `cat /hackenv/bin/karma+ 00:39:41 ​#!/bin/sh \ echo "$1 now has $(($(lib/karma "$1")+1)) karma." | tee karma 00:39:42 `cat /hackenv/bin/karma- 00:39:43 ​#!/bin/sh \ touch karma \ echo "$1 now has $(($(lib/karma "$1")-1)) karma." 00:40:10 ^ these too probably 00:40:19 yes, I know, I can edit those 00:40:50 `sled /hackenv/bin/slbd//s|cd bin|cd ${HACKENV-/hackenv}/bin| 00:40:51 ​/hackenv/bin/slbd//cd ${HACKENV-/hackenv}/bin; sled "$1" | sed '1s/^Rosebud!$/Rosbbud!/' 00:41:12 It is sort of funny. I even fixed a number of similar "cd bin; ..." things. 00:42:34 The karma thing is pretty clever, though I don't think scalling the full repository log really scales forever. 00:44:02 `slbd karma//s|lib/|${HACKENV-/hackenv}/lib/| 00:44:08 karma//#!/bin/sh \ echo "$1 has $(${HACKENV-/hackenv}/lib/karma "$1") karma." 00:45:55 `slbd karma+//s|lib/|${HACKENV-/hackenv}/lib/| 00:45:57 karma+//#!/bin/sh \ echo "$1 now has $(($(${HACKENV-/hackenv}/lib/karma "$1")+1)) karma." | tee karma 00:46:04 `slbd karma-//s|lib/|${HACKENV-/hackenv}/lib/| 00:46:05 `karma+ fizzie 00:46:16 fizzie now has 1 karma. 00:46:17 karma-//#!/bin/sh \ touch karma \ echo "$1 now has $(($(${HACKENV-/hackenv}/lib/karma "$1")-1)) karma." 00:46:30 `karma fungot 00:46:30 b_jonas: and leave any other messages before that one arrives... fnord?? 00:46:33 fungot has 0 karma. 00:47:16 Looks like the karma system saw most use around 2011. 00:47:48 Hmm, there's a number of increments for fungot. That's odd. 00:47:48 fizzie: ( fnord of some sort, but it has the proper makefiles and such, arcus??! 00:51:37 Oh, right, because the repository history starst from 2012. 00:51:55 that's some p. fancy bash-work 00:53:03 yeah, the $[$(${ is nice 00:54:11 HackEso: doesn't the tee target have to be changed as well? 00:54:13 um 00:54:23 fizzie: doesn't the tee output file have to be changed as well? 00:54:29 it's a relative path 00:55:17 Oh, right. That's there so that the command writes something. Yes. 00:56:09 `` for d in + -; do sed -i -e 's|tee karma|tee ${HACKENV-/hackenv}/karma|' /hackenv/bin/karma$d; done 00:56:12 No output. 00:56:45 `` cd /hackenv/bin; rm '!'; ln -s interp '!' # just merging these two identical files 00:56:47 No output. 00:58:03 `karma+ fizzie 00:58:16 fizzie now has 1 karma. 00:58:35 yep, still 1, previous one didn't count 01:03:30 `dowg bin/! 01:03:32 No output. 01:03:42 `doag bin/! 01:03:44 No output. 01:03:49 argh 01:03:59 `dobg ! 01:04:01 12127:2019-11-17 ` cd /hackenv/bin; rm \'!\'; ln -s interp \'!\' # just merging these two identical files \ 12093:2019-11-16 sled /hackenv/bin/!//s|exec ibin|exec $HACKENV/ibin| \ 11880:2019-07-19 ` ln -s interp bin/\\! \ 11879:2019-07-19 ` mv bin/{\\!,interp} \ 11876:2019-07-17 ` sed -i -e \'s/echo/echo -n/\' \'bin/!\' \ 11875:2019-07-17 ` sed -i -e \'s/ARG"$/ARG$2"/\' \'bin/! 01:04:04 Yeah, it's pretty terribul. 01:04:36 i'm not entirely convinced this is an improvement. 01:04:53 `pwd 01:04:54 ​/hackenv/tmp 01:05:36 `ls 01:05:37 a.c \ a.out \ as-encoding \ asmbf-1.1.1 \ banana.txt \ compiled_brachylog.pl \ hexdump.hex \ input.brachylog \ jeval.whatis \ just \ karma \ le \ out \ OUT \ out.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ test.b \ test.sh \ tmp.txt \ v1.1.1.tar.gz 01:06:38 `ls .. 01:06:39 bin \ canary \ emoticons \ esobible \ etc \ f \ factor \ hw \ ibin \ interps \ karma \ le \ lib \ misle \ paste \ ply-3.8 \ quines \ quinor \ quotes \ share \ src \ stuff \ tmflry \ tmp \ wisdom 01:07:18 `` echo $PATH 01:07:19 ​/hackenv/bin:/usr/bin:/bin 01:07:44 oh you made le a symbolic link 01:07:56 i guess that works, although what if it's removed... 01:08:02 `` ls -dl le 01:08:05 lrwxrwxrwx 1 1000 1000 11 Nov 16 21:29 le -> /hackenv/le 01:08:15 I wasn't sure whether to make it a link or a directory. 01:08:45 Anyway, with the pwd-in-/hackenv/tmp/ setup there really isn't a way to make `foo/bar commands fully revert-able. 01:08:46 `` chmod a-w le 01:08:47 No output. 01:09:03 this should prevent some accidents 01:09:36 what do you mean, fulle revert-able? 01:09:44 *y 01:09:56 `` ls -dl le 01:09:57 lrwxrwxrwx 1 1000 1000 11 Nov 16 21:29 le -> /hackenv/le 01:09:57 Well, in the sense that if someone breaks it, you can't fix it with `revert. 01:10:01 argh 01:10:09 `` ls -dl ../le 01:10:13 dr-xr-xr-x 2 1000 1000 4096 Apr 7 2018 ../le 01:10:18 darn 01:10:32 `` chmod a+w le 01:10:33 No output. 01:11:48 argh, apparently symbolic links cannot be write-protected 01:15:52 Yes, you cannot change the permission of a symbolic link, I don't know why it is like that 01:16:56 [[Joke language list]] https://esolangs.org/w/index.php?diff=67109&oldid=67094 * Quadril-Is * (+42) /* General languages */ 01:17:30 [[IBC]] https://esolangs.org/w/index.php?diff=67110&oldid=67103 * Quadril-Is * (+5) 01:17:43 Yeah, I'm not certain the benefit of having a bit less cruft in the repo is worth the hassle / breaking change. But I'm not sure it's not, either. 01:19:09 [[User talk:Quadril-Is]] N https://esolangs.org/w/index.php?oldid=67111 * Quadril-Is * (+189) Created page with "--~~~~ --~~~~" 01:19:51 [[IBC]] https://esolangs.org/w/index.php?diff=67112&oldid=67110 * Quadril-Is * (+40) 01:19:59 For ibin, I'll address those as an offline commit if we keep this configuration. 01:20:59 (I was thinking of making `interp to just cd /hackenv first, but it seems inconsistent to have those have a separate default cwd. Though you'd only notice when accessing files, which is maybe not that common.) 01:23:41 [[User:Quadril-Is]] https://esolangs.org/w/index.php?diff=67113&oldid=67073 * Quadril-Is * (+437) 01:26:50 Even if we do revert back to /hackenv as the default directory, I'd probably make `fetch (with no output file specified) write to tmp/ by default. 01:26:56 `slbd hello-world-in-any-language//s|hw/|${HACKENV-/hackenv}/hw/|g 01:26:58 hello-world-in-any-language//if [ -z $(tr [A-Z] [a-z] <<< "$1") ]; then echo "Hello, world!"; else if [ -f ${HACKENV-/hackenv}/hw/$(tr [A-Z] [a-z] <<< "$1") ]; then cat ${HACKENV-/hackenv}/hw/$(tr [A-Z] [a-z] <<< "$1"); else echo "Your language does not exist"; fi; fi 01:31:21 [[Stack]] https://esolangs.org/w/index.php?diff=67114&oldid=63100 * Quadril-Is * (+42) /* Usage in esolangs */ 01:34:51 `` rm /hackenv/bin/8$'\x0f'ball # I've no idea what this one was about <-- it was to do a prank 8ball that gives the answer you want hth 01:36:53 Still maintaining a healthy lead, I see. <-- whee 01:40:15 -!- 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:10:20 healthy lead? I haven't met healthy lead since my childhood. mercury, lead, and even tin counts as poisonous now. zinc, copper and iron will follow them in a few years, and the electronics industry will have to make wires from silver. 02:18:47 the thing about magic 8 ball is if you get an answer you dont like, you just ask "but that last answer was wrong/no-ways permanent, right?" 02:19:04 repeat until magic 8 ball blesses you 02:20:32 b_jonas: iron seems unlikely given that it's an essential nutrient 02:22:31 kingoffrance: sorry, but the first answer takes precedence hth 02:22:55 "Four times he had declared that that accursed Lensman, whoever he might be, must be destroyed, and had mustered his every available force to that end, only to have his intended prey slip from his grasp as effortlessly as a droplet of mercury eludes the clutching fingers of a child." 02:23:15 These days, I don't think children play that much with droplets of mercury. 02:23:26 you think 02:23:52 (The quote was from Galactic Patrol, Edward E. Smith, published 1937.) 02:24:30 all i know about lensman is from the tvtropes page on lensman race 02:24:40 It's got that for sure. 02:24:46 *arms race 02:24:54 oerjan, do i have to purchase magic 8 ball, or can i just shake one inside packaging in a store ~20 years ago and have my future foretold? 02:25:04 how does "tithing" work 02:25:06 But the books have some other slightly old-fashioned bits too. 02:25:22 "For eight hours two hundred Rigellians stood at whining calculators, each solving course-and-distance problems at the rate of ten per minute." 02:25:51 "Then for hours bale after bale of cards went through the machine; thousands of records per minute. Occasionally one card would flip out into a rack, rejected." 02:26:40 kingoffrance: there are many free alternatives hth 02:27:41 fizzie: i think i've seen that quoted before 02:29:00 They've got faster-than-light travel, but haven't really invented computers. 02:34:50 well, "each solving..." they were the computers, they had initiated the process of outsourcing at that point 02:38:03 -!- Frater_EST has joined. 02:49:26 oerjan: is it a nutrient in ion form, or in metalic form? 02:49:37 or does that not matter? 02:51:05 fizzie: not play as such, but I broke at least one mercury thermometer as a child by accident, and I think many children have done that 02:51:47 I only have one last mercury thermometer now, if that one breaks then either I'll have to use one of these modern alcohol or electronic thermometers, or buy one from Ukraine or something 02:51:50 i think metallic does not occur naturally 02:53:35 I think EsoPost is a bit similar to 7 02:54:02 "Iron is both necessary to the body and potentially toxic." says wikipedia 02:54:20 ornxka: right, but metalic iron is used in electronic radiation shields and cooking vessels and the like, and it's the metalic mercury, metalic tin, and metalic lead that is toxic and mostly banned 02:54:24 argh 02:54:25 oerjan: ^ 02:54:50 pff i dont believe that for a second 02:55:06 I think many things that are necessary are toxic. 02:55:16 like oxygen 02:55:56 they say the poison makes the dose which is why i only eat very small amounts of lead at any given time 02:58:24 's ok if it's small enough 02:59:18 oxygen is very toxic 02:59:23 mercury accumulates in the body iirc so it has to be small enough in _total_ dose over a lifetime 02:59:36 not sure about lead, it's also a heavy metal 02:59:43 when plants took over earth and filled the atmosphere with oxygen, it killed 90% of species in existence 03:00:14 kmc: [accurate count verification needed] 03:00:54 or a citation to actual science 03:01:03 -!- xkapastel has quit (Quit: Connection closed for inactivity). 03:01:06 dunno 03:01:14 my wife told me that and she usually knows what she's talking about 03:02:12 those people are the worst 03:03:02 let me just check wikipedia, that's infallible 03:04:22 "causing almost all life on Earth to go extinct.[dubious – discuss][5]" checks out 03:05:35 lol 03:05:37 -!- Frater_EST has quit (Read error: Connection reset by peer). 03:06:51 -!- Frater_EST has joined. 03:07:45 from the talk page "The abstract of the paywalled source does not say rise in O2 caused extinctions. Rather, it notes that an extinction is observed in the fossil record, and suggests that hiccups in phosphorous availability was to blame." 03:14:02 okay 03:14:10 well maybe i'm wrong 03:16:32 -!- FreeFull has quit. 03:18:04 [[Whitespace]] https://esolangs.org/w/index.php?diff=67115&oldid=67102 * Quadril-Is * (+68) /* Hello, world! */ 03:18:21 [[Whitespace]] https://esolangs.org/w/index.php?diff=67116&oldid=67115 * Quadril-Is * (-205) /* Cat program */ 03:18:34 [[Whitespace]] https://esolangs.org/w/index.php?diff=67117&oldid=67116 * Quadril-Is * (-225) /* Truth-machine */ 03:22:00 kmc: https://en.wikipedia.org/wiki/Talk:Great_Oxidation_Event#What_exactly_was_the_"catastrophe"_? 03:22:56 with a bit of crank near the end 03:23:21 interesting 03:23:24 thank you for informing 03:25:33 and later they changed the article title not to contain "catastrophe" 03:25:44 [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=67118&oldid=67096 * Quadril-Is * (+22) 03:26:00 [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=67119&oldid=67118 * Quadril-Is * (+95) 03:40:18 [[Whitespace]] https://esolangs.org/w/index.php?diff=67120&oldid=67117 * Quadril-Is * (+269) /* Cat program */ 03:54:12 [[Ecstatic]] https://esolangs.org/w/index.php?diff=67121&oldid=39853 * Quadril-Is * (+81) /* truth machien */ 04:01:34 [[User:Quadril-Is]] https://esolangs.org/w/index.php?diff=67122&oldid=67113 * Quadril-Is * (+131) 04:01:53 [[User:Quadril-Is]] https://esolangs.org/w/index.php?diff=67123&oldid=67122 * Quadril-Is * (+14) /* My esolangs */ 04:06:52 How to improve the keyboard speed in DOSBOX? Also, how to capture the printer output in DOSBOX? Also, the BASIC code "IF VAL("1") = 1" is false when running in DOSBOX (but true on an actual DOS computer); why is that? (If I change it to "IF CINT(VAL("1")) = 1" then it works, though.) 04:16:34 (I only want to capture the data written to LPT1, and not try to interpret it at all.) 04:18:22 I wonder if there is some way of using TSR to do that 04:28:47 [[Quine]] https://esolangs.org/w/index.php?diff=67124&oldid=66690 * Quadril-Is * (+118) /* How to write quines */ corrected what quinify actually does 04:42:01 [[Whitespace]] https://esolangs.org/w/index.php?diff=67125&oldid=67120 * Quadril-Is * (+4) /* Truth-machine */ 05:07:42 Do you know why VAL does that in DOSBOX? 05:13:38 I found out that for key codes, what I could do is in the program that reads them, use INP(96) instead of INKEY$ to read the keyboard during the main game loop (but use still using INKEY$ in menus, and when requesting text entry). It seems that INP(96) sometimes returns 224 instead of the scancode, but that isn't a problem since we can just save the previous scan code and use it if 224 is returned. 05:14:22 [[Quine]] https://esolangs.org/w/index.php?diff=67126&oldid=67124 * Quadril-Is * (-43) /* How to write quines */ 05:17:03 zzo38: I don't know 05:17:06 is that in QBASIC? 05:17:41 [[User:Quadril-Is/secretpagebyquadrilspipp]] N https://esolangs.org/w/index.php?oldid=67127 * Quadril-Is * (+2) Created page with "hi" 05:19:40 kmc: Yes 05:20:19 zzo38: how did you discover that? 05:21:00 I found that port 96 is the keyboard input, and then I tried and saw what happens 05:22:23 I now found that there are a few other programs using "POKE &H41A, PEEK(&H41C)" to clear the keyboard buffer, although I figured it out just by examining memory dumps 05:23:33 (To clear the keyboard buffer in this way, you will need "DEF SEG = 0" at first, unless segment 0 is already selected, which it might be if you want to read the shift states with PEEK(&H417).) 05:25:00 how did you discover the thing about VAL, i mean 05:25:37 By trying it in DOSBOX. Entering a subtraction command shows that there is a difference of approx. 2e-16, which is why it does not compare as equal. 05:25:58 But on a real DOS computer my program worked; I had to change it to work on the emulator. 05:28:10 Do you know why it does that? I don't know why, but at least I know how to fix it 05:29:26 I don't know if that is also what causes some other programs to fail? 05:30:05 so it's a floating point thing? 05:30:38 i think there is a way to attach gdb to dosbox 05:30:43 so you could step through the relevant code 05:30:54 i have also used a freeware version of IDA to reverse engineer DOS programs 05:31:03 Yes, it seems like something to do with floating point 05:32:28 maybe DOSBox does not properly emulate the weird 80-bit x87 floats 05:32:44 i'd be surprised though. dosbox is pretty mature software 05:32:56 and is used to run all kinds of dos programs 05:43:17 I also found that in DOSBOX the functions to adjust the date/time do not work; it is just ignored, and then retrieving the date/time returns the actual date/time instead. 05:43:52 I once tried some program I found to try to capture printer output, but it just caused DOSBOX to crash. 05:44:35 -!- atslash has quit (Ping timeout: 276 seconds). 05:45:51 But I think there would probably be some way to make it work, if the programs use the DOS function calls to make printer output rather than direct I/O. 05:48:19 yaeh 05:48:20 yeah 05:48:26 a TSR should work in that case 05:53:34 -!- Frater_EST has quit (Read error: Connection reset by peer). 06:02:00 `5 \' 06:02:07 1/2:31) i'm my dad's unborn sister \ 492) monqy: help how do I use lambdabot to send messages to people. [...around half an hour later...] @messages quicksilver said 1y 2m 18d 19h 54m 29s ago: you use @tell \ 453) software patents strike again that's got to be at least three times, now are they out yet? \ 881) i fell in love with the first gimmick twitter 06:02:11 `n 06:02:12 2/2: account that i met who could appreciate georges bataille \ 266) elliott: well what i would do if i were omniscient and omnipotent would be to create an immortal woman with perfect tits and bang her for the rest of eternity 06:04:10 int-e: `5 and the like actually default to quote 06:04:14 `5 06:04:16 1/2:481) I keep asking random people for "friendship " and it's crippling \ 202) I need a new desktop background j-invariant: Try http://codu.org/spinners.png (tiled) uhrghoaudp \ 1217) listen. listen. jesus has saved me from talking about undefined behaviour in C with you any more, and He could save you too. \ 121) i think of languages as tools, there is no holy 06:06:09 `n 06:06:10 2/2:grail of languages even if there's no holy grail, that doesn't mean cups of crap is ok \ 847) Yes I am native English speaker, but it is Canadian English, not British English. 06:16:48 [[Unsquare]] N https://esolangs.org/w/index.php?oldid=67128 * Quadril-Is * (+1171) Created page with "'''Unsquare''' was named after Dave Brubeck's [https://www.youtube.com/watch?v=_yExwkQYcp0 Unsquare Dance]. Unsquare Dance is unusual in rhythm, and so is the esolang. ==Instr..." 06:24:40 [[Unsquare]] https://esolangs.org/w/index.php?diff=67129&oldid=67128 * Quadril-Is * (+41) /* Instructions */ 06:25:03 [[Unsquare]] https://esolangs.org/w/index.php?diff=67130&oldid=67129 * Quadril-Is * (+44) /* Hello, world! */ 06:25:25 [[Unsquare]] https://esolangs.org/w/index.php?diff=67131&oldid=67130 * Quadril-Is * (-1) /* Hello, world! */ 06:28:05 [[Unsquare]] https://esolangs.org/w/index.php?diff=67132&oldid=67131 * Quadril-Is * (+52) /* Instructions */ 06:32:15 [[Unsquare]] https://esolangs.org/w/index.php?diff=67133&oldid=67132 * Quadril-Is * (+35) /* Cat program */ 06:34:17 [[User:Quadril-Is]] https://esolangs.org/w/index.php?diff=67134&oldid=67123 * Quadril-Is * (+38) 06:50:31 -!- imode has quit (Ping timeout: 265 seconds). 06:52:37 -!- oerjan has quit (Quit: Nite). 07:01:36 -!- xkapastel has joined. 07:11:24 Have you figured the computational class of EsoPost and how to convert programs to/from it? 07:12:56 I think there are some similarities to 7, but also differences. There is a data stack, a bit like frame in 7, although unlike in 7 you can also hold lists of commands. 07:14:35 A difference is that unlike 7 where the passive commands push the corresponding active commands, in EsoPost the passive commands push themself instead, and a separate command makes them active. 07:35:19 [[EsoPost]] https://esolangs.org/w/index.php?diff=67135&oldid=67072 * Zzo38 * (+1141) EsoPost II variant, and some more explanations and category 07:37:39 zzo38: have you tried running qbasic in bochs instead of dosbox? I used bochs to run DOS programs, and found that it works quite well for all old programs. (not so well for some newer games.) 07:38:05 -!- kritixilithos has joined. 07:38:23 b_jonas: No, I don't have bochs in my computer 07:38:35 I don't think I tried VAL("1") = 1 in particular 07:39:19 You can try typing that (with a question mark at first) in the immediate window to see what happens. 07:40:08 I don't have that set up now either 07:40:10 sorry 07:40:14 OK 07:40:15 bochs that is 07:40:33 that was back when I had the termbot experiment, that one ran DOS in bochs 07:46:16 [[EsoPost]] https://esolangs.org/w/index.php?diff=67136&oldid=67135 * Zzo38 * (+275) 07:49:20 [[EsoPost]] https://esolangs.org/w/index.php?diff=67137&oldid=67136 * Zzo38 * (+4) 07:54:37 [[EsoPost]] https://esolangs.org/w/index.php?diff=67138&oldid=67137 * Zzo38 * (+18) 08:47:31 Do you like ZZ Zero? 08:49:22 Now I implemented dark rooms, and also some other stuff, too 08:50:15 There is the option to use Chebyshev or Manhattan for torch light radius. 08:58:34 [[Unsquare]] https://esolangs.org/w/index.php?diff=67139&oldid=67133 * Quadril-Is * (+24) 09:00:55 [[Unsquare]] https://esolangs.org/w/index.php?diff=67140&oldid=67139 * Quadril-Is * (+24) /* Truth-machine */ 09:01:51 [[Language list]] https://esolangs.org/w/index.php?diff=67141&oldid=67089 * Quadril-Is * (+15) /* U */ 09:25:51 -!- rodgort has quit (Quit: Leaving). 09:37:04 -!- rodgort has joined. 09:52:47 -!- kspalaiologos has joined. 09:53:38 ``asmbf lbl 1/in_ r1/jz_ r1, 0/out r1/jmp 1 09:53:38 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: `asmbf: not found 09:53:53 `asmbf lbl 1/in_ r1/jz_ r1, 0/out r1/jmp 1 09:53:53 ​+>+[>>>+<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>,>>>><<<<<<+>>[<<[-]<+>>>-]<<<[>>>+<<<-]>[<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[-]]>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>.>>>>+<<<<<<<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]<<<[-]>[-]>>]<<] 10:31:12 -!- kspalaiologos has quit (Quit: Quit). 10:31:37 -!- kspalaiologos has joined. 10:31:53 I wonder 10:32:09 should I create an article about my brainfuck toolchain on the wiki? 10:40:38 -!- LKoen has joined. 10:43:34 hi 10:48:03 Hi 10:55:52 -!- arseniiv has joined. 11:11:36 -!- LKoen has quit (Remote host closed the connection). 11:13:19 -!- LKoen has joined. 11:39:16 kspalaiologos: that might help. the asmbf language you input probably counts as an esolang as well, unless you use it for something more practical than writing bf programs 11:39:58 well, unironically I saw a casino using brainfuck just to "secure their stuff" 11:40:04 so it might be practical to use it :p 11:40:16 it's something like Gregor's C2BF 11:40:23 but... kinda better 11:41:02 wait, what 11:42:35 a small digital jewel safe :p 11:44:10 i don't get how you secure anything by using bf. i mean, even if you couldn't reverse engineer what it does, you could just use it? 11:49:13 -!- xkapastel has quit (Quit: Connection closed for inactivity). 12:00:34 what? 12:00:52 do you have a link about that? 12:01:10 or is this a top secret thing that you saw when you broke into their system to get a jackpot so you can't tell us about it 12:11:49 DMM reports that the Irregular Webcomic forums are down and he can't easily bring them up. We'll have to make some replacement somehow, because those forums are too useful. Luckily I downloaded much of the forum content recently, but hosting and moderating a forum is the hard part. 12:12:16 -!- kritixilithos has quit (Ping timeout: 260 seconds). 12:13:45 just google it 12:13:54 i remember the thread popping up on mazonkas' brainfuck computer 12:14:08 on HackerNews obviously 12:17:57 -!- FreeFull has joined. 12:20:30 kspalaiologos: so they're the ones paying you to write the brainfuck disassembler, because they don't have the source code? 12:20:40 haha 12:21:12 I wish someone paid me for that 12:21:36 writing unit tests in brainfuck 12:21:39 going to love that 12:21:54 I need a memory manager tho 12:22:03 I've been scratching my head for good three days 12:22:15 thought about singly linked list, doubly linked list 12:22:32 but the general problem is, I expect big amount of allocations and small block size 12:22:54 so linked list is going to kill the performance a tiny bit 12:23:24 and the global storage won't work 12:23:26 obviously 12:23:45 because small chunk size = a lot of allocation = many entries = need to reserve a lot of space = shitty performance 12:34:30 i believe xored lists you save some space, and easily relocatable, at expense of more complexity. i only say that because might be something space-saving is apropos 12:34:48 (apologies if you are well aware, i dont see them really "taught" but they are simple) 12:35:24 xored lists? 12:35:46 see google/wikipedia/whatever xored linked list. there is probably surely better, im just saying might be a good fit 12:35:47 if this involves xor operation, it's quite hard to implement 12:36:02 well, ive been looking for long time somewhere they would be apropos 12:36:05 because my assembler doesn't quite support XOR 12:36:07 so i am biased towards "want to use" 12:36:47 it's a cool idea, 12:37:03 but #1: it involves bitwise xor - hard to implement in arithmetic-only assembly 12:37:27 but #2: it doesn't solve entirity of problems with doubly linked list 13:04:48 kspalaiologos: you can do xor lists with subtraction (modulo word size) just fine. you just have to get the signs right. not that I specifically endorse xor lists, or working in brainfuck, etc. 13:04:53 -!- kritixilithos has joined. 13:05:05 lol 13:05:11 well it 13:05:14 's tough stuff 13:05:36 to use a subtraction/xor list 13:05:46 I need to improve my algorithm so it keeps track of multiple nodes a time 13:05:56 -!- arseniiv has quit (Ping timeout: 276 seconds). 13:06:03 it's going to take AGES of execution 13:09:32 and by the way, segment adressing is live https://github.com/KrzysztofSzewczyk/asmbf/releases/tag/v1.1.3 13:11:09 -!- LKoen has quit (Remote host closed the connection). 13:12:59 -!- arseniiv has joined. 13:14:01 xor lists are introduced in TAOCP 2.2.5 exercise 18 (this is odd, because that's before doubly linked lists are introduced), and its solution explicitly says that addition and subtraction modulo field size works too 13:14:09 -!- LKoen has joined. 13:32:44 -!- atslash has joined. 13:36:22 -!- LKoen has quit (Remote host closed the connection). 13:37:58 -!- atslash has quit (Ping timeout: 265 seconds). 13:38:20 -!- atslash has joined. 13:39:04 -!- LKoen has joined. 13:50:54 -!- LKoen has quit (Remote host closed the connection). 13:51:54 -!- LKoen has joined. 13:55:20 -!- LKoen has quit (Remote host closed the connection). 13:57:56 -!- LKoen has joined. 13:59:28 -!- atslash has quit (Read error: Connection reset by peer). 13:59:41 -!- atslash has joined. 14:15:23 -!- YamTok has joined. 14:15:29 Quick help! 14:16:06 I have ever wondered editing articles about esolangs with archived webpage's descriptions, such as L33t, and so on. 14:16:36 But first of all anyone knows policy of the wiki? 14:17:49 For example am I allowed to copy and paste (in pretty format) what official page of L33t says to <>? 14:18:12 I mean, bringing its specifications, e.g. commands, back. 14:18:49 Umm, I have to leave now becaus eI gotta go to bed. 14:19:19 Anyone replying to me, I'd like you to reply on my talk page so I can also see your replies. 14:19:30 <> 14:19:34 Goodnight. 14:19:38 -!- YamTok has left. 14:27:24 [[User talk:YamTokTpaFa]] N https://esolangs.org/w/index.php?oldid=67142 * Fizzie * (+750) /* Policies */ new section 14:49:04 -!- kritixilithos has quit (Ping timeout: 260 seconds). 14:51:49 -!- kritixilithos has joined. 15:02:48 oh gosh 15:02:49 I 15:03:01 've been working on the Malbolge interpreter in Brainfuck 15:03:06 using my asm2bf with a few addons 15:03:19 It' 15:03:23 s worse than a painful suicide 15:13:19 maybe it's time to move on 15:14:18 yeah 15:14:21 I'll let it be 15:14:33 somebody eventually will get interested in it and fix it 15:14:35 [[Special:Log/newusers]] create * DiamondKoopa * New user account 15:51:20 [[Special:Log/newusers]] create * Planet * New user account 15:52:47 Just so you know, I'm eyeing upgrading MediaWiki to a post-1.31 version, it might have some user-visible changes. In particular, the (non-default) CologneBlue and Modern skins are no longer shipped with MediaWiki; if I did the database right, 4 and 10 users have those explicitly enabled, respectively. 15:55:29 to be honest 15:55:32 it looks really cool 15:56:39 upgrades? nice! 15:57:56 Well, first I'll need to finally upgrade from stretch to buster. (I mean, that's not literally a dependency, I just want to do them in that order.) 15:59:03 my government's websites run ten years old apache 15:59:17 c'mon even esoteric language wiki's better 15:59:50 the problem could be, people maintaining government-related websites earn ~500$ a month 16:00:53 fizzie: upgrading from stretch to buster is even better 16:01:01 fizzie: does that upgrade HackEso too? 16:01:12 the inside of HackEso that is, the virtual environment in which commands run 16:01:25 Not automatically, but I'll upgrade the container too. 16:01:35 It's probably a lot more straight-forward, because there isn't really much running in it. 16:01:46 sure 16:04:15 fizzie: also, can you install the package libdate-manip-perl inside fungot so I can do date subtractions conveniently? 16:04:15 b_jonas: probably what i'm thinking today about token based languages rather than english from time to time. 16:04:19 um 16:04:23 inside HackEso I mean 16:04:27 sorry, fungot 16:04:27 b_jonas: so everything's a bit hazy on the details of the underlying language for now, if i wanted 16:04:36 Yes, for HackEso. For fungot, I think that'd be a little challenging. 16:04:36 fizzie: i thought it sounded familiar. together they don't ring a bell?! i just wrote 16:04:47 thanks 16:05:14 this bot in befunge 16:05:17 it's amazing 16:06:31 ^show 16:06:31 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 16:06:47 how can one invoke the command 16:06:49 fungot, fib 16:06:49 kspalaiologos: rosemary's baby is by far the most badass character in the field, the " current", and then 16:06:55 ^fib 16:06:55 0.1.1.2.3.5.8.13.21.34.55.89.144.233.377.610.987.1597.2584.4181.6765.10946.17711.28657.46368.75025.121393.196418.317811.514229.832040.1346269.2178309.3524578.5702887.9227465.14930352.24157817.39088169.632459 ... 16:06:59 a ha! 16:07:06 ^show fib 16:07:06 >+10>+>+[[+5[>+8<-]>.<+6[>-8<-]+<3]>.>>[[-]<[>+<-]>>[<2+>+>-]<[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>[-]>+>+<3-[>+<-]]]]]]]]]]]+>>>]<3][] 16:07:19 postfix RLE brainfuck? 16:07:31 Yes, with a bug that runs of >s were not RLE'd. 16:07:54 why not prefix tho 16:07:58 postfix notation is confusing 16:08:11 I guess. FWIW, it doesn't actually support that format as input. 16:08:18 It's just that ^show prints the internal representation. 16:08:19 fungot, I'm quite sure Rosemary didn't have a baby 16:08:19 b_jonas: ( dump " fred" " plugh" " xyzzy" " fnord" " 42") " b" 16:08:44 kspalaiologos: because bfjoust has standardized postfix, so using postfix now would be confusing 16:08:53 in fact I think people were using postfix even before bfjoust 16:08:55 bfjoust? 16:08:58 what is this 16:09:00 see the wiki 16:09:30 Well, bfjoust also uses operators for the encoding. 16:09:33 https://esolangs.org/wiki/BF_Joust 16:10:14 this is 16:10:19 actually dank 16:10:22 I like it 16:12:01 `show 16:12:05 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: show: not found 16:12:05 ^show 16:12:06 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 16:12:15 ^ wc blah blah blah 16:12:20 ^wc blah blah blah 16:12:28 ^show wc 16:12:28 [] 16:12:32 umm 16:12:40 Uh. 16:12:44 Time to fix it! 16:12:47 oh right, fungot's user-defined commands 16:12:48 b_jonas: you _are_ using scheme, not to program! 16:12:56 I should add those to the whatisdb as well 16:13:33 gimme a second 16:13:35 I'll fix this command 16:13:50 -!- HackEso has quit (Remote host closed the connection). 16:14:03 Hmm, I don't think that was entirely intentional. 16:14:23 oops 16:14:54 It should be fine. I just wasn't thinking of it. 16:22:00 ^show 16:22:00 fungot, are you alive? 16:22:00 fizzie, he died 16:22:00 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 16:22:00 kspalaiologos: second variable has 1 in its value, pack those to the registered event handlers. the clients only ever see names, never references, to objects. 16:22:03 oh well 16:22:07 it just took 20 seconds 16:22:27 `show welcome 16:25:40 -!- HackEso has joined. 16:25:49 ^unscramble 10 16:25:49 10 16:26:10 ^unscramble noemy 16:26:10 nyome 16:26:14 hm? 16:26:25 ^scramble something 16:26:25 smtignheo 16:26:30 ^unscramble smtignheo 16:26:30 something 16:26:35 ^unscramble opittnei 16:26:35 oipeintt 16:26:45 It's a letter rearrangement scheme. 16:26:50 ^scramble 12345678 16:26:50 13578642 16:26:57 ah, it’s a fixed one! 16:27:16 ^unscramble 12345678 16:27:16 18273645 16:27:17 I thought it tries to find a word in a dictionary 16:27:26 does fungot have RLE compressor builtin? 16:27:26 kspalaiologos: this little excursion is going to work 16:27:45 In a sense. 16:27:50 ^def tmp bf +++++ 16:27:50 Defined. 16:27:52 ^show tmp 16:27:52 +5 16:27:56 fine 16:28:07 (But it doesn't accept the RLE form as input.) 16:28:40 RLE is a great thing, at least in comparison with mass media 16:28:40 so how do I program it 16:28:43 when program is large 16:29:46 we use str right? 16:29:58 I’m currently steaming because of walking too near a working TV :( 16:30:26 ^str 0 set >+<+[>[>[-]+<-]>[<+>>>>>>>>>>>[-]<[-]<<<<<<<<<-]>>>>>>>>>>>>>[<<<<<<<<<<<<<<+>>>>>>>>>>>>>>-]<<<<<<<<<<<<<<[>[-]+<-]>[<+>>>>>>>>>>>>>,<<<<[-]>>>>[<<<<+<<<<<<<+>>>>>>>>>>>-]<<<<<<<<<<<[>>>>>>>>>>>+<<<<<<<<<<<-]>>>>>>>>>>[-]++++++++++++++++++++++++++++++++<<<[<<<<<<+>>>>>>-]->>>[<<<<<<<<<-<+>>>>>>>>>>-]<<<<<<<<<<[>>>>>>>>>>+<<<<<<<<<<-]>[>>>>>>+<<<<<<[-]]<->>>>>>>[<<<<<<<->>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[>>>>>>+<<<<<<<<<<<<<<< 16:30:26 Set: >+<+[>[>[-]+<-]>[<+>>>>>>>>>>>[-]<[-]<<<<<<<<<-]>>>>>>>>>>>>>[<<<<<<<<<<<<<<+>>>>>>>>>>>>>>-]<<<<<<<<<<<<<<[>[-]+<-]>[<+>>>>>>>>>>>>>,<<<<[-]>>>>[<<<<+<<<<<<<+>>>>>>>>>>>-]<<<<<<<<<<<[>>>>>>>>>>>+<<<<<<<<<<<-]>>>>>>>>>>[-]++++++++++++++++++++++++++++++++<<<[<<<<<<+>>>>>>-]->>>[<<<<<<<<<-<+>>>>>>>>>>-]<<<<<<<<<<[>>>>>>>>>>+<<<<<<<<<<-]>[>>>>>>+<<<<<<[-]]<->>>>>>>[<<<<<<<->>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[>>>>>>+<<<< 16:30:27 ->>>>>>>>>[-]]<<<<<<<<-]<[>[-]+<-]>[<+>>>>>>>>>[-]>>[<<+<<<<<< 16:30:33 oops its a bit too long 16:30:49 hehehe 16:31:00 Yeah. There's a way to put in long programs, it's just very convoluted. 16:31:05 ^help 16:31:05 ^ ; ^def ; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool 16:31:32 ^ str 0 set >+<+[>[>[-]+<-]>[<+>>>>>>>>>>>[-]<[-]<<<<<<<<<-]>>>>>>>>>>>>>[<<<<<<<<<<<<<<+>>>>>>>>>>>>>>-]<<<<<<<<<<<<<<[>[-]+<-]>[<+>>>>>>>>>>>>>,<<<<[-]>>>>[<<<<+<<<<<<<+>>>>>>>>>>>-]<<<<<<<<<<<[>>>>>>>>>>>+<<<<<<<<<<<-]>>>>>>>>>>[-]++++++++++++++++++++++++++++++++<<<[<<<<<<+>>>>>>-]->>>[<<<<<<<<<-<+>>>>>>>>>>-]<<<<<<<<<<[>>>>>>>>>>+<<<<<<<<<<-]>[>>>>>>+<<<<<<[-]]< 16:31:40 I'll move to esoteric blag 16:31:47 because it's going to cause tons of spam 16:31:54 Basically, you'll want to: ^str 9 set abc ^str 9 add def ^str 9 add ghi ^def cmd bf str:9 16:32:13 And you'll have to move to /query fungot, it's not on other channels. 16:32:13 fizzie: stupid " hello, little girly man." :) 16:32:21 fungot: Don't be rude. 16:32:21 fizzie: none of them have published their codes. maybe a more graphical way to program is broken by design, in case anyone cares, gambit 4 threading is implemented on top of x-p 16:32:34 pff 16:34:01 works 16:34:05 ^wc Hello, world. 16:34:05 13 1. 16:34:06 I like fungot more than mass media idiots and jerks 16:34:06 arseniiv: i just started the thing and hey presto, thanks heaps with " malloc" 16:34:22 ^show wc 16:34:22 >+<+[>[>[-]+<-]>[<+>11[-]<[-]<9-]>13[<14+>14-]<14[>[-]+<-]>[<+>13,<4[-]>4[<4+<7+>11-]<11[>11+<11-]>10[-]+32<3[<6+>6-]->3[<9-<+>10-]<10[>10+<10-]>[>6+<6[-]]<->7[<7->7-]<7[>7+<7-]>7[>6+<15->9[-]]<8-]<[>[-]+<-]>[<+>9[-]>2[<2+<7+>9-]<9[>9+<9-]>7+>2[-]<2[>2+<2-]>7+<16->-]>14[<15+>15-]<15[>[-]+<-]>[<+>9[-]>[<+<7+>8-]<8[>8+<8-]>7+>[-]<[>+<-]<8-]>15[<16+>16-]<16[>[-]+<-]>[<+>9[-]>4[<4+<7+>11-]<11[>11+<11-]>10[-]<3[<6+>6-]>3[<9-<+>10-]< 16:34:29 it's fine 16:34:36 looks like chinese to me 16:36:10 oh, so that's what ^str is for? 16:36:17 good to know 16:36:51 kspalaiologos: you could also run bf on HackEso when it comes back of course 16:37:06 sure 16:37:09 I can run my asmbf here too 16:39:09 `? kspalaiologos 16:39:10 kspalaiologos? ¯\(°​_o)/¯ 16:39:29 ha! he doesn't know me 16:42:40 `learn kspalaiologos is addicted to brainfuck, but otherwise completely unknown. 16:42:43 Learned 'kspalaiologo': kspalaiologos is addicted to brainfuck, but otherwise completely unknown. 16:43:01 my nick is too long 16:43:01 lol 16:43:07 No, it's just the plural. 16:43:09 `whoops 16:43:10 `` mv wisdom/kspalaiologo{,s} 16:43:10 I think it should say something about secretly reverse engineering legacy brainfuck and malbolge code for a casino 16:43:11 mv: cannot stat 'wisdom/kspalaiologo': No such file or directory 16:43:12 mv: cannot stat 'wisdom/kspalaiologo': No such file or directory 16:43:26 ha! it got you too 16:43:36 it's $HACKESO/wisdom/ now 16:43:40 I'm pretty sure I fixed 'whoops' for that. 16:43:44 `` mv ../wisdom/kspalaiologo{,s} 16:43:46 No output. 16:43:55 -!- imode has joined. 16:44:01 kspalaiologos: it thinks it's a plural 16:44:06 ah, fine 16:45:19 Hmm, maybe we could have shortcuts $WISDOM and $BIN 16:45:37 (those are the two most common directories we manipulate, I think) 16:45:58 fizzie: whoops gets the filename from lastfiles, and lastfiles prints gets it from hg, so it's relative to repository root 16:46:01 `lastfiles 16:46:04 or... we could make symbolic links 16:46:06 wisdom/kspalaiologo \ wisdom/kspalaiologos 16:46:20 Ah, of course. 16:46:27 `` ln -s ../wisdom ../bin ../quotes . 16:46:27 No output. 16:46:47 NO! 16:46:58 don't do that, that will result in some silent problems 16:47:07 silent bugs 16:47:17 (The repository browser seems to have broken, for the file view portion.) 16:47:19 things that appear to work but don't 16:47:26 especially not for quotes 16:47:35 `url 16:47:36 https://hack.esolangs.org/repo/ 16:47:43 `paste 16:47:50 hmm 16:47:52 `paste quotes 16:47:53 https://hack.esolangs.org/tmp/quotes 16:48:14 https://hack.esolangs.org/tmp/paste/paste.17325 16:48:40 mm 16:48:46 File listing works, but the contents view doesn't. 16:49:13 `` rm wisdom bin quotes # fine. maybe later. 16:49:14 No output. 16:49:36 [[User:Fizzie]] M https://esolangs.org/w/index.php?diff=67187&oldid=53471 * Fizzie * (+0) Post-upgrade edit test for 1.33.1. 16:49:58 Well, that side seems to be working. 16:50:12 There were a lot of new bundled extensions, which I didn't enable but could think of. 16:50:36 Right now the list is: CategoryTree CiteThisPage CodeEditor Gadgets ImageMap InputBox Interwiki LocalisationUpdate MultimediaViewer OATHAuth PdfHandler Poem ReplaceText SpamBlacklist SyntaxHighlight_GeSHi TitleBlacklist 16:50:39 `pwd 16:50:40 ​/hackenv/tmp 16:50:47 All extensions bundled in the MediaWiki distribution that we don't enable. 16:52:00 I've got it sorted out kinda 16:52:01 ,[-------------------------------->[-]+>[-]<<[>>>>+<<<-]>[>>+<<->]<<,]>>>>[[>>+>+<<<-]>>>[<<<+>>>-]<<+>[<->[>++++++++++<[->-[>+>>]>[+[-<+>]>+>>]<<<<<]>[-]++++++++[<++++++>-]>[<<+>>-]>[<<+>>-]<<]>]<[->>++++++++[<++++++>-]]<[.[-]<]<[-]++++[>++++++++<-]>.[-]<<] 16:52:04 this should work 16:52:07 as a smaller version of wc 16:52:23 ^def wc bf ,[-------------------------------->[-]+>[-]<<[>>>>+<<<-]>[>>+<<->]<<,]>>>>[[>>+>+<<<-]>>>[<<<+>>>-]<<+>[<->[>++++++++++<[->-[>+>>]>[+[-<+>]>+>>]<<<<<]>[-]++++++++[<++++++>-]>[<<+>>-]>[<<+>>-]<<]>]<[->>++++++++[<++++++>-]]<[.[-]<]<[-]++++[>++++++++<-]>.[-]<<] 16:52:23 Defined. 16:52:35 ^wc being addicted to brainfuck is cool 16:52:35 30 5 16:53:03 wait a second 16:53:59 ^def wc bf ,[-------------------------------->[-]+>[-]<<[>>>>+<<<-]>[>>+>+<<<->]<<,]>>>>[[>>+>+<<<-]>>>[<<<+>>>-]<<+>[<->[>++++++++++<[->-[>+>>]>[+[-<+>]>+>>]<<<<<]>[-]++++++++[<++++++>-]>[<<+>>-]>[<<+>>-]<<]>]<[->>++++++++[<++++++>-]]<[.[-]<]<[-]++++[>++++++++<-]>.[-]<<] 16:53:59 Defined. 16:54:10 ^wc it should count spaces as characters now 16:54:10 40 6 16:54:48 I wonder where the repo browser's error output ends up in. 16:54:53 kspalaiologos: or you could use the http://www.ioccc.org/years.html#2019_burton entry for word counting. it's shorter. 16:55:20 I have to write it in brainfuck 16:55:30 obviously I could compile it to brainfuck 16:55:38 using my glorious ANSI C89->brainfuck 16:55:44 but it would take ages to enter into fungot 16:55:44 kspalaiologos: they're getting disgusting". quite distinctive. please take it to orkut? sounds kinky. 16:57:06 Oh, there. "AttributeError: 'module' object has no attribute 'importmod'" 16:57:20 ^wc it should count spaces as characters now 16:57:20 40 6 16:57:50 ^wc it should count spaces as characters now 16:57:50 41 6 16:57:54 oh c;mon 16:58:06 ^wc it should count spaces as characters now 16:58:06 40 7 16:58:09 perfect 16:59:27 ^show 16:59:27 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 16:59:35 ^wiki 16:59:35 http://esolangs.org/wiki/ 16:59:39 ^show wiki 16:59:39 +15[>+4>+7>+7>+8<4-]>3-.>-4..<2+7.<-2.-11..>2-3.<+3.>2-5.-3.<-4.>+2.<+6.<.<-.>3+.+3.<.<2+.>+4.>+2.+2.-2.<2.,[.,] 16:59:50 ^wiki Something 16:59:50 http://esolangs.org/wiki/Something 17:00:09 Hmm, it should probably use https://, that's the canonical scheme now. 17:01:05 oh 17:01:15 I'll get that sorted out 17:01:17 wait a second 17:01:45 FWIW, I strongly suspect that string output is from bf_txtgen. 17:02:08 ^show wiki 17:02:08 +15[>+4>+7>+7>+8<4-]>3-.>-4..<2+7.<-2.-11..>2-3.<+3.>2-5.-3.<-4.>+2.<+6.<.<-.>3+.+3.<.<2+.>+4.>+2.+2.-2.<2.,[.,] 17:02:12 wait a second though 17:02:17 `?? brainfuck 17:02:17 why would we use these fancy loop 17:02:17 brainfuck is an esoteric programming language created to make the smallest possible compiler for a Turing-complete language. It is what introduces many people to esolangs, spawning a vast number of derivatives that we pretty much all despise. http://esolangs.org/wiki/Brainfuck 17:02:21 apparently I didn't fix that one 17:03:20 ^def wiki bf +[----->+++<]>+.++++++++++++..----.[-->+<]>++.-----------..[--->+<]>.[--->+<]>----.----.---.-----------.+++++++++++++.-------.++++++++++++.+[++>---<]>.---[----->+<]>.+++.-----------.--[->+++<]>.++[--->++<]>+.+[->+++<]>+.++.--.----[->+++<]>.,[.,] 17:03:20 Defined. 17:03:30 I could use my brainfuck cruncher 17:03:39 but it's way more straightforward :p 17:03:55 btw fizzie, would you like to help me a bit 17:04:08 what I need is basically a brainfuck intepreter in befunge 17:04:14 kspalaiologos: you could define it in unlambda. it's good for printing constant strings in which parenthesis are balanced. 17:04:14 and fungot possibly has it 17:04:15 kspalaiologos: why does that make the program do?" " fubar is an acronym. 17:04:36 fungot doesnt support unlambda I guess 17:04:36 kspalaiologos: scary. a girl with a mac and on bsd 17:04:58 `?? brainfuck 17:04:58 brainfuck is an esoteric programming language created to make the smallest possible compiler for a Turing-complete language. It is what introduces many people to esolangs, spawning a vast number of derivatives that we pretty much all despise. https://esolangs.org/wiki/Brainfuck 17:05:02 better 17:05:22 ^ul (fungot doesnt support unlambda?)S 17:05:22 fungot doesnt support unlambda? 17:05:27 Well, that's Underload. 17:05:32 ^ul (it sure does. ):SS 17:05:32 it sure does. it sure does. 17:05:34 oh yeah 17:05:37 I mean underload 17:05:38 that one 17:05:50 that's the one that's good at printing constant strings 17:06:00 sorry 17:06:26 kspalaiologos: I think I made a standalone copy of the brainfuck interp in fungot for testing, but I can't find it. 17:06:26 fizzie: come now, i settled with the knowledge that foo corresponds to the c library 17:07:39 ^show 17:07:39 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 17:07:44 ^rerere 17:07:46 what is this 17:07:49 ^show rerere 17:07:49 ,.>,.<.>2,[.<.<.>3,]<.<.>. 17:08:01 ^rerere abcdefgh 17:08:01 abacbadcbedcfedgfehgfhgh 17:08:10 ^rerere 123 17:08:10 121321323 17:08:27 what is this 17:08:39 ^pow2 17:08:39 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648 42949672 ... 17:08:49 `show pow2 17:08:49 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: show: not found 17:08:53 ^show pow2 17:08:53 +2[[<+7[-<+7>]>[-<+<+>>]<[->+<]<-2.[-]<]+4[->+8<]>.[-]>>[-[>+2<-[>+2<-[>+2<-[>+2<-[>-8>+>[->+>+<2]+>>[<2->>[-]]<2[>+<-]>[-<+>]<4-[>+2<-[>+2<-[>+2<-[>+2<[-]]]]]]]]]]<[->+<]>+>[-<+>]>>]<3] 17:09:10 ^ me 17:09:11 ^me 17:09:11 * fungot 17:09:20 ^me test 17:09:20 * fungot test 17:09:26 Oh, that's still unfixed. :/ 17:09:33 pff 17:09:36 It's not supposed to allow CTCP. 17:09:48 Just never gotten around to fixing it. 17:10:00 ^eval 17:10:03 ^eval 2 + 2 17:10:06 ^eval + 2 2 17:10:10 ^eval 2 + 2 17:10:15 ^eval 2 2 + 17:10:19 how do you use eval? 17:10:24 it's brainfuck right? 17:10:29 ^show eval 17:10:29 ()! 17:10:47 ^rainbow 17:10:51 ^rainbow test 17:10:51 test 17:11:23 I'm guessing ^eval is nonsense. It's defined in Underload, but it doesn't look useful. 17:11:36 Also I don't understand how the repo browser is configured, the setup is referring to a path that doesn't exist. 17:14:18 * arseniiv thinks the second law of thermodynamics is foreboding and is maybe the root of all evil 17:14:36 kspalaiologos: no, the brainfuck eval command is ^bf 17:15:04 And the code's just from the standard "mercurial-common" package, so it should be compatible with the version of Python installed. 17:15:09 Maybe it needs something to be restarted. 17:16:21 fizzie: have you started upgrading debian yet? 17:16:32 I've upgraded the outer shell, and MediaWiki, but not the container. 17:16:54 fizzie: where does the repo browser run? 17:17:03 it may need some restarts or something after an upgrade 17:17:10 Yes, that's what I said. 17:17:32 -!- kspalaiologos has quit (Read error: Connection reset by peer). 17:17:54 But the weird thing is, it's configured to start /etc/uwsgi/apps-available/hackeso-hgweb.yml and there's no /etc/uwsgi directory at all. 17:18:06 -!- kspalaiologos has joined. 17:18:30 isn't that an optional config file? 17:18:53 Not as far as I know. 17:19:07 I mean, it's the only thing that tells uwsgi what to actually run. 17:19:19 ExecStart=/usr/bin/uwsgi --yml /etc/uwsgi/apps-available/hackeso-hgweb.yml --socket /var/run/uwsgi/hackeso-hgweb.socket 17:19:33 huh 17:20:06 I did upgrade the uwsgi package, but I don't think it would have removed user-written config files. 17:20:11 what just happened 17:20:16 why did I get disconnected 17:20:28 "Read error: Connection reset by peer" is what it looked to us. 17:20:49 kspalaiologos: sometimes the freenode irc servers just throw away connections when they feel like 17:20:50 alright 17:21:12 Oh, the file is there. 17:21:19 I must've been looking for it on a wrong machine or something. 17:21:34 a server might have died 17:21:48 " Cycling to next server in freenode..." 17:21:48 no, they don't often die 17:21:50 oh 17:21:52 then maybe it did 17:21:57 no wait 17:22:00 that's just a client message 17:22:06 yes 17:22:11 that it uses the heuristic to connect to a different server after a disconnect 17:22:20 ah, it's fine then 17:22:21 b_jonas: Yeah, killing the running uwsgi instance made it start working again. 17:22:23 no idea what happened 17:26:31 -!- LKoen has quit (Remote host closed the connection). 17:29:51 I should probably also restart the whole server one of these days. 17:29:53 17:29:14 up 679 days, 18:51, 5 users, load average: 0.99, 0.41, 0.21 17:30:23 fizzie: yes, you should have upgraded debian while it was in single user mode 17:31:33 That seems a little much. They don't recommend that in the upgrade instructions. 17:31:49 they don't? ok 17:32:07 Well, they don't not recommend it either. 17:33:01 nooo don't ruin the uptime 17:33:11 ``` uptime 17:33:12 ​ 17:33:11 up 0 min, 0 users, load average: 0.00, 0.00, 0.00 17:34:13 Looks like there's no "uptime namespace", the container has the same uptime as the system itself. (The UML is obviously a different matter.) 17:35:46 -!- LKoen has joined. 17:36:20 I could make a fake uptime command though that claims that HackEso is up since lots of years ago 17:37:04 though it's tricky because I'd have to modify 17:37:06 `top b 17:37:06 too 17:37:13 top - 17:37:06 up 0 min, 0 users, load average: 0.00, 0.00, 0.00 \ Tasks: 25 total, 1 running, 24 sleeping, 0 stopped, 0 zombie \ %Cpu(s): 0.0 us, 21.1 sy, 0.0 ni, 78.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st \ MiB Mem : 246.7 total, 240.7 free, 3.3 used, 2.7 buff/cache \ MiB Swap: 0.0 total, 0.0 free, 0.0 used. 239.1 avail Mem \ \ PID USER PR NI VIRT RES SHR S %CPU %MEM 17:37:24 and top has lot more command options than uptime 17:38:11 if we fake uptime, we should fake it to show that HackEgo is a reincarnation of HackEso and inherited its uptime 17:38:23 ``` datei; uptime -s 17:38:24 uptime: uptime \ 2019-11-17 17:38:23.519 +0000 UTC November 17 Sunday 2019-W46-7 17:38:30 what? 17:38:50 ``` datei 17:38:50 2019-11-17 17:38:50.590 +0000 UTC November 17 Sunday 2019-W46-7 17:38:52 ``` uptime -s 17:38:53 uptime: uptime 17:38:55 that 17:38:56 makes no sense 17:39:12 ``` type uptime 17:39:13 uptime is /usr/bin/uptime 17:39:20 ``` /usr/bin/uptime -s 17:39:21 uptime: uptime 17:39:26 That's pretty weird. 17:39:50 Incidentally: 17:39:51 `lsb_release -d 17:39:52 Description:Debian GNU/Linux 10 (buster) 17:40:09 ``` cat /etc/debian_version 17:40:14 cat: /etc/debian_version: No such file or directory 17:40:48 Actually, I wonder where lsb_release pulls that from. Clearly not from /etc, which isn't mounted. 17:40:51 yeah, we don't have a proper et 17:42:46 Apparently it reads /usr/lib/os-release 17:43:09 -!- LKoen has quit (Remote host closed the connection). 17:43:10 ``` cat /etc/issue 17:43:11 cat: /etc/issue: No such file or directory 17:43:27 `` cat /proc/uptime 17:43:28 0.26 0.04 17:43:31 `` uptime 17:43:32 ​ 17:43:31 up 0 min, 0 users, load average: 0.00, 0.00, 0.00 17:43:59 `` cat > /proc/uptime <<<"350735.47 234388.90" 17:44:00 ​/hackenv/bin/`: line 5: /proc/uptime: Permission denied 17:44:03 pf :p 17:44:19 fizzie, if you want to change uptime this is probably the way to go 17:44:22 but you need root privs :p 17:44:34 kspalaiologos: I don't think it works even as root 17:44:41 let's check it 17:44:42 together 17:44:47 nope 17:44:51 :p 17:44:58 I have a VM to spare 17:45:01 let's find out 17:45:21 Doesn't look very promising: https://github.com/torvalds/linux/blob/master/fs/proc/uptime.c 17:46:06 the time when the computer booted up is in the sysconf header of every ELF process on linux 17:46:15 if you changed uptime, it would be really hard to change that everywhere 17:46:21 as processes may have read it already 17:46:33 if you want to really fake uptime, you'd have to fake it from boot 17:46:40 but I don't recommend really faking uptime 17:46:52 just changing the output of uptime and top and a few such high-level commands cosmetically 17:47:26 `uptime -p 17:47:27 up 0 minutes 17:47:47 could even fix uptime -s as a side effect 17:48:10 I do wonder what's up with that. It works outside the UML. 17:48:34 fizzie: but the outside is running a different version of debian 17:48:42 any program could be working there and broken inside 17:48:43 or back 17:49:01 Well, not really, because the userland of the UML is the userland of the container. 17:49:04 UPTIME="18738072.28 74817307.16"; mkfifo uptime_fifo; while true; do cat <<<$UPTIME > uptime_fifo; done & mount -obind uptime_fifo /proc/uptim 17:49:09 this may do the terick 17:49:15 but needs root privs too 17:49:24 (It's a different *kernel* version, of course.) 17:49:27 and e was cut at the end 17:49:42 kspalaiologos: but that may confuse programs. that's not the only place where linux tells about the uptime 17:49:58 obviously not 17:50:06 but this one probably is only one available from userland 17:50:33 ok, there is sysinfo() 17:51:29 b_jonas: FWIW, strace shows "uptime -s" reads /etc/localtime (probably to decide how to format the "since" date), that bit at least would fail. 17:51:48 hmm 17:51:58 it works 17:52:01 (Other than that, it looks into /proc/sys/kernel/osrelease, /sys/devices/system/cpu/online, /proc/self/auxv and /proc/uptime. 17:52:01 the bash snippet works 17:52:07 it fakes output of uptime 17:52:09 -!- LKoen has joined. 17:52:16 and of top too 17:52:22 I've just tested it 17:52:26 it sets uptime to around 210 dayas 18:06:00 b_jonas: Heh, it's very amusing. This is why uptime -s fails: https://github.com/mmalecki/procps/blob/master/proc/sysinfo.c#L90 18:07:04 (I couldn't find a line-linkable better source quickly.) 18:07:52 Oh, here's a better link. 18:07:55 https://gitlab.com/procps-ng/procps/blob/master/proc/sysinfo.c#L123 18:08:14 So it's that combined with this: 18:08:16 https://gitlab.com/procps-ng/procps/blob/master/uptime.c#L47 18:08:52 pff 18:09:32 ha! 18:09:38 told you my bash snippet will work 18:09:39 Or tl;dr the sysinfo uptime() function returns the uptime cast to int /* assume never be zero seconds in practice */ and the uptime -s command fails if uptime(...) == 0. 18:09:46 kernel is actually reading a device 18:09:54 to supplement the data to sysinfo() 18:10:24 who makes 0 the error return value for functions like this 18:10:46 I think it should set errno or return -1 18:10:55 *and* 18:11:00 oh that's fun 18:11:23 ergo 18:11:23 Hmm, or maybe I don't care about errno being set all that much. 18:11:26 ``` sleep 2; uptime -s 18:11:27 my bash snippet is perfect for this 18:11:29 2019-11-17 18:11:27 18:11:31 it will fake the uptime 18:11:34 ``` sleep 2; uptime -s; sleep 2; uptime -s 18:11:39 2019-11-17 18:11:34 \ 2019-11-17 18:11:34 18:11:46 But returning -1 for errors seems to be far more appropriate than 0 here. 18:11:52 Yes. 18:12:07 yeah 18:12:11 it even returns int 18:12:16 not unsigned int when not using signed ones 18:12:24 quint of foolishness 18:12:30 int-e: even -1 should be a normal output. it should return an error code separately from the time. 18:12:48 I don't know if any calls actually use the return value for time. 18:12:55 But of course it's nearly impossible to change. 18:13:06 It returns the time with better resolution through the uptime_secs, idle_secs parameters. 18:13:23 kspalaiologos: does that mean that it will fail if the machine has been up for more than 69 years too? that will 18:13:31 fizzie: time does 18:13:33 b_jonas: Maybe, but at least uptime >= 0 is a far more reasonable assumption than uptime > 0. 18:13:44 b_jonas: we don't time travel much 18:14:04 int-e: of course not. we just use incorrect or jumpy time sources 18:14:12 heck, -1 could be just a rounding error 18:15:53 Looks like there's one use of the return value as a time in the procps sources (`seconds_since_boot = uptime(0,0);`). 18:19:56 oh 0 is "good" for code that doesn't care about errors 18:22:26 `? HackBot 18:22:27 HackBot? ¯\(°​_o)/¯ 18:23:41 `? HackEso 18:23:42 HackEso is almost but not quite unlike HackEgo. 18:24:08 ^show 18:24:08 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 18:24:15 I feel like adding a few commands to fungot 18:24:15 kspalaiologos: hard rock fnord :d 18:24:17 [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=67188&oldid=66579 * PaniniTheDeveloper * (-145) 18:24:23 anything needed? 18:24:45 kspalaiologos: I wanted to install a 7z decompressor at one point. I failed. 18:24:58 7z decompressor? 18:24:59 but we can decompress zip, tar.gz, tar.xz 18:25:00 into fungot? 18:25:00 kspalaiologos: it is usually better to ask such questions are the way to define the recursions better, too, 18:25:08 so it's not a big problem 18:25:16 wait a second 18:25:17 no 18:25:20 how do you want to use it 18:25:20 into HackEso 18:25:22 ah, well 18:25:25 it's easy then 18:25:27 I don't add commands to fungot 18:25:27 b_jonas: it could mean that without an intermediate sql translation phase, since that's what all fnord/ 1 f(a) b if b then greet else undefined 18:25:32 but I'm aiming at fungot 18:25:32 kspalaiologos: just write a chef implementation in bf? if so, then yes. ( define ( p x))? :p ( heh, guess not. 18:25:45 that 18:25:47 's a nice idea 18:25:54 a chef implementation in bf 18:26:02 thanks, fungot! 18:26:02 kspalaiologos: maybe a combination of 2 and 5 18:26:11 ^8-ball 18:26:13 ^8ball 18:26:13 No. 18:26:27 a magic 8-ball command might be useful 18:26:34 8-ball command? 18:26:35 what would it do 18:26:37 `slwd HackEso//s/almost/&,/;s/quite/&,/;s/unlike/entirely &/ 18:26:37 Roswbud! 18:26:40 `8-ball 18:26:41 As I see it, yes. 18:26:54 print one of the 20 standard replies of the magic 8-ball at random 18:27:03 and accept a question as an argument 18:27:04 like 18:27:12 `8-ball should fungot have an 8-ball command? 18:27:12 b_jonas: a module system in mit scheme, but not esoteric. malbolge is included too. :p 18:27:13 You may rely on it. 18:27:26 see Wikipedia for the 20 responses 18:27:31 I dont get what is magic 8-ball 18:27:37 it's a toy 18:27:37 it just shows the billard game 18:27:43 Oh, right, lowercase. 18:27:47 it helps you make decisions 18:27:49 `slwd hackeso//s/almost/&,/;s/quite/&,/;s/unlike/entirely &/ 18:27:51 ah yeah 18:27:51 hackeso//HackEso is almost, but not quite, entirely unlike HackEgo. 18:27:58 ok I get it 18:27:59 you shake it, it has a dice that tells you yes or no or maybe 18:28:03 but more often yes than no 18:28:21 There's a coin-flip command already, by the way. 18:28:26 ^bool Is it any good? 18:28:32 fizzie: what was HackBot? 18:28:36 ^show bool 18:28:39 @dice 1d2 18:28:39 int-e: 2 18:28:41 ??? 18:28:48 ^show bool 18:28:50 what happened 18:28:55 ^fib 18:28:55 0.1.1.2.3.5.8.13.21.34.55.89.144.233.377.610.987.1597.2584.4181.6765.10946.17711.28657.46368.75025.121393.196418.317811.514229.832040.1346269.2178309.3524578.5702887.9227465.14930352.24157817.39088169.632459 ... 18:28:57 fungot is working 18:28:57 kspalaiologos: do you work? :) 18:29:00 but bool isempty 18:29:02 yes I do 18:29:06 b_jonas: HackBot was HackEso 18:29:10 's predecessor 18:29:17 no, that's HackEgo 18:29:19 `? `! 18:29:20 ​`! emulates the ! command of our former bot EgoBot. You write `! then the name of the language then a program, and it runs the program you give and returns the result. We used to use it to test out esoprograms in-channel all the time, but the set of included esolangs is fairly old now and so it's rarely used. 18:29:32 and HackEgo's predecessor is EgoBot according to that 18:29:37 Hrm. 18:29:40 Well, spiritual predecessor in that case. 18:29:55 "HackBot" is the name of the code, however. 18:30:00 oh 18:30:02 Isn't EgoBot is the IRC bot framework that HackEgo used. 18:30:05 So both HackEgo and HackEso were instances of HackBot. 18:30:13 Hrm 18:30:14 so that's like how jevalbot is the name of the code for j-bot ? 18:30:17 `source j-bot 18:30:20 Sources for HackEso can be found at https://github.com/fis/hackbot + https://github.com/fis/multibot + https://github.com/fis/umlbox . 18:30:24 j-bot, source: 18:30:25 b_jonas, jevalbot source is https://github.com/FireyFly/jevalbot (originally http://www.math.bme.hu/~ambrus/pu/jevalbot.tgz) 18:30:29 Okay, I'm obviously confused about this. 18:30:55 int-e: I am too 18:31:09 int-e: HackEso and HackEgo are both instances of HackBot, which is the glue tying together multibot and UMLBox. 18:31:09 Ah "multibot" is another ingredient of the confusion. 18:31:39 EgoBot, on the other hand, was a different bot, I think also running on top of multibot but not involving umlbox or custom Linux commands at all. 18:31:43 Is multibot the generic IRC thing, and hackbot the specific variant that wraps umlbox? 18:31:51 Yes, multibot is a generic IRC thing. 18:32:06 I can't be 100% sure if EgoBot also used it as a base, but I think it did. 18:32:28 -!- kritixilithos has quit (Quit: 1). 18:32:51 Ugh, I really know how to ask questions that have just been answered. 18:33:26 EgoBot and HackEgo were both GregorR's, HackEso is my replacement when the HackEgo machine finally went away. 18:33:43 fizzie: is GregorR the same as Gregor ? 18:34:07 hmm 18:34:10 maybe there's no Gregor 18:34:15 Hah, I have not checked whether CaC is still around in quite some time. 18:34:18 `? Gregor 18:34:19 Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible. 18:34:20 `? GregorR 18:34:21 GregorR? ¯\(°​_o)/¯ 18:34:26 there is 18:34:31 Yes, they're the same. 18:35:21 "GregorR" is the bitbucket/github username, I don't remember which of the IRC nicks was first. 18:35:47 And they still run the scam where they advertise a one-time payment without mentioning the annual service fee. 18:35:56 Yeah. 18:36:01 "Pay One Time! Never again." 18:36:57 Of course the real scam is that they just reduce the QoS over time until everybody leaves. 18:37:15 did you get your money back? 18:37:26 I didn't ask for any money back. 18:38:16 Why did you remove the skins again? 18:38:31 (But maybe the question was for fizzie? Personally, I got a CaC server to see how bad it would be. I wasn't disappointed.) 18:38:36 zzo38: MediaWiki stopped supporting them in the newer version 18:38:59 (So I felt, in the end, that I got my money's worth of entertainment out of the whole (or)deal.) 18:40:05 b_jonas: But Wikipedia still has the Cologne Blue skin 18:41:22 fizzie: Actually I'm disappointed... where's the permanent 80% off deal? 18:43:01 Without that they are not even cheap anymore. 18:44:47 I'm in the process of literally raping fungot 18:44:47 kspalaiologos: is there a complement function :) that parses an expresion like this ' otstatd' of mine than anything visual. 18:44:49 sent over around 15 kilobytes of brainfuck 18:44:53 for the 8ball 18:44:55 it works quite nicely tho 18:44:57 50% transferred 18:44:59 just a couple lines more 18:45:01 it's taking 4 minutes to transfer it 18:45:19 wait... how do you get random numbers in brainfuck? 18:45:26 magic 18:45:32 my very sophisticated algorithm 18:45:34 ok 18:45:38 ^8ball crap 18:45:39 ...out of time! 18:45:43 pffffffffffffffffffff 18:45:55 you must be kidding me fungot 18:45:55 kspalaiologos: number42, jivera? iterative macros?' token is also used before the corresponding structures are defined in sets from within a function, 18:46:14 fizzie, what is the execution time limit? 18:46:42 feel free to check the source tho: https://pastebin.com/raw/1jf09niH 18:46:48 it has an easter egg too :p 18:47:16 kspalaiologos: I hope you didn't add extra answers besides the 20 standard ones. someone did that to HackEso at one point. I reverted it at least once. 18:47:23 nope 18:47:28 only 20 standard ones 18:47:33 from wikipedia 18:47:33 there's also an 8-ball macro in perlbot 18:47:41 but I added my own easter egg 18:47:43 zzo38: They stopped bundling them in the distribution, so I need to install it separately if you still want it back. 18:47:51 that fires only when a certain condition is met 18:47:58 fizzie, what is the execution time limit for fungot? 18:47:58 kspalaiologos: cannot remove ' /proc/ irq/ 9': operation not permitted, although the arguments may be arbitrary. 18:48:16 rather trivial, since it can evaluate perl, which has a built-in pseudo-random source 18:48:32 well my algorithm is amazing 18:48:42 fizzie: Well, I do want back any skins that anyone has configured. (I don't know if anyone other than myself does, but you should check.) 18:48:42 :p 18:49:15 kspalaiologos: It's not really in terms of time, it's something like 1M cycles, where one cycle is one operation. 18:49:21 t 18:49:27 that's too small amount :p 18:49:30 zzo38: fizzie gave numbers about how many users set up each removed theme earlier in the channel 18:49:33 can you increase it a tiny bit? 18:49:47 [[EsoPost]] https://esolangs.org/w/index.php?diff=67189&oldid=67138 * Zzo38 * (+2) 18:50:45 Only if a tiny bit would be helpful. 18:50:55 well it runs instantly on my pc 18:51:00 b_jonas: OK, I found that. I think you should reinstall Cologne Blue and Modern 18:51:02 I'll measure the cycle count in a second 18:52:50 fizzie, well 18:52:57 it takes 40M cycles 18:53:03 i'll need to work on it :p 18:53:45 kspalaiologos: is that with multiple adjacent + or - commands counting as one cycle? because I think that's how the interpreter counts 18:53:53 ^ good point 18:54:02 give me a second 18:54:08 1 18:55:37 1 ⟵the second one 18:55:51 12M cycles 18:55:56 [ ^0 18:55:57 b_jonas: 1 18:56:25 fizzie, it's not that much tho :p 18:57:00 in 1M of cycles, you can clear a cell just 1300 times 18:57:24 and add two cells only 1000 times 19:02:34 I'd say brainfuck-in-befunge is more of a toy than a "serious" brainfuck implementation. 19:03:47 it's not in befunge tho 19:03:50 it's externalk 19:06:12 What? 19:06:35 fungot's brainfuck interpreter is certainly in Befunge. 19:06:35 fizzie: think about the data 19:06:40 is it? 19:06:44 well 19:06:46 zzo38: CologneBlue should be back, if you want to check. 19:07:04 but extending the limit to 20M isn't that much isn't it 19:07:39 It's approximately lines 298-310 and 355-376 of https://github.com/fis/fungot/blob/master/fungot.b98 19:07:39 fizzie: oh it's posix 2001 and the channel) to beat him to welcoming me. we've battled over it since forever 19:08:37 And it'd be a 20x increase. I'd need to check how slow that is. 19:08:44 Right now fiddling with MediaWiki instead. 19:09:07 well it's instant for me 19:09:21 I'll compare that to dbfi\ 19:14:08 Aaand Modern is back as well. Hopefully. 19:15:50 -!- ArthurStrong has joined. 19:16:09 `fetch bin/uptime https://hack.esolangs.org/get/bin/uptime 19:16:10 ​/hackenv/tmp/bin/uptime: No such file or directory 19:16:17 fizzie: Yes, thank you it is fixed 19:16:19 `fetch /hackenv/bin/uptime https://hack.esolangs.org/get/bin/uptime 19:16:20 2019-11-17 19:16:20 URL:https://hack.esolangs.org/get/bin/uptime [1551/1551] -> "/hackenv/bin/uptime" [1] 19:16:31 fizzie: I think the `edit webpage prints the wrong fetch command now 19:16:34 `uptime 19:16:35 ​ 19:16:34 up 0 min, 0 users, load average: 0.00, 0.00, 0.00 19:16:36 `uptime -s 19:16:36 Yes, I noticed. 19:16:36 uptime: uptime 19:16:37 `uptime -p 19:16:37 up 0 minutes 19:16:41 hmm 19:16:47 ``` chmod a+x /hackenv/bin/uptime 19:16:48 No output. 19:16:49 `uptime 19:16:50 ​/srv/hackeso-code/multibot_cmds/lib/limits: /hackenv/bin/uptime: python3: bad interpreter: No such file or directory \ /srv/hackeso-code/multibot_cmds/lib/limits: line 5: /hackenv/bin/uptime: Success 19:17:11 I found now they have some "mystery" cards with some similar ideas than what I had, including that non-card objects on the stack that enter the battlefield become tokens. 19:17:14 `fetch /hackenv/bin/uptime https://hack.esolangs.org/get/bin/uptime 19:17:14 2019-11-17 19:17:14 URL:https://hack.esolangs.org/get/bin/uptime [1560/1560] -> "/hackenv/bin/uptime" [1] 19:17:15 ``` chmod a+x /hackenv/bin/uptime 19:17:16 No output. 19:17:18 `uptime 19:17:19 ​ 19:17:18 up 3802 day, 3:46, 0 users, load average: 0.00, 0.00, 0.00 19:17:21 `uptime -s 19:17:22 2009-06-20 15:30:22 19:17:22 `uptime -p 19:17:23 up 3802 day, 3 hours, 47 minutes 19:17:25 there 19:17:35 but top b gives it away 19:18:12 `` date --date=@1245511822 19:18:13 Sat Jun 20 15:30:22 UTC 2009 19:18:25 `datei @1245511822 19:18:25 2009-06-20 15:30:22.000 +0000 UTC June 20 Saturday 2009-W25-6 19:18:26 Oh, I guess you already printed -s. 19:18:38 -!- xunil has joined. 19:18:46 fizzie: there could be a bug in the code, so it's reasonable to check 19:19:05 do you use gut feeling when coding? 19:19:10 fizzie: that's the earliest I figured HackEgo existed 19:19:17 it's probably not its birthday, but a reasonable bound 19:19:17 like intuitive code 19:20:31 [[Bitwise Cyclic Tag]] https://esolangs.org/w/index.php?diff=67190&oldid=55514 * Ais523 * (-7) add see also to [[cyclic tag]]; change the Wikipedia link to our usual (non-potholed) notation for Wikipedia interwikis 19:21:00 The initial import to the hackbot repo is 19 Jun 2009, though of course the code might have existed before that. 19:21:25 Oh, I guess that's where it's from. 19:21:48 Yeah, I think that's a reasonable value. 19:21:56 ok 19:24:00 the code is a collection of mental rays 19:24:12 sent to compiler :) 19:24:54 mental rays that force computer mind to produce code 19:25:37 whenever i have a problem i just rub magic 8 ball and wait for genius 19:25:49 you can't rub magic 8 ball 19:25:58 because fungot is constraining me 19:25:58 kspalaiologos: isn't that somehow the idea of starting with fnord, but that has its lifeblood still in it 19:27:22 `8ball Or can you? 19:27:23 Signs point to yes. 19:30:08 Incidentally, there *was* an '8ball' command in fungot already, though one that answers just "Yes." or "No.". 19:30:08 fizzie: i'll keep that in mind. 19:30:15 we can program mind to produce raw binary code 19:30:21 (Deterministically, based on the parity of the question.) 19:32:40 https://reverseengineering.stackexchange.com/questions/4642/automatically-convert-x86-assembly-to-c 19:35:53 [[Special:Log/newusers]] create * PGZSmarki * New user account 19:37:06 fizzie, so, what about extending cycles limit? 19:37:17 be patient 19:37:24 well 19:37:28 my stuff is installed already 19:38:18 i once waited a billion years 19:38:24 and then said 19:41:40 Spellmorph is also same idea I had. The rules they have about it are same as mine, too. 19:42:35 spellmorph? 19:42:38 what's this? 19:42:42 I may implement it for fungot 19:42:42 kspalaiologos: i plan ircot to be a 19:42:59 kspalaiologos: it's a keyword from the new pseudo-silver-bordered cards that M:tG is about to release 19:43:27 not an Un-set this time, a different set of 121 cards that aren't legal in vintage or any other serious format 19:43:35 You can cast it face down, and while in the battlefield you can cast it from there face-up for its spellmorph cost. 19:43:53 the cards 19:44:20 you are painted on a card 19:50:09 They don't describe what happens when a card is both a instant and a creature, but I have thought of what it will do before: it is a creature card, but is cast and resolves as an instant, and cannot enter the battlefield. 19:50:37 zzo38: there's a release notes that describes it I think 19:52:59 I read the release notes. It doesn't seems to say. 19:53:50 fungot's interpreter is 8bit, right? 19:53:50 kspalaiologos: right, but there was no replacement to the dictionary, say ' fnord'. 19:54:14 ^show 19:54:14 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 8ball rreree rerere botsnack bf 19:55:09 -!- Sgeo__ has quit (Read error: Connection reset by peer). 19:55:15 ^bf ++++++++[>++++++++<-]>[<++++>-]+<[>-<[>++++<-]>[<++++++++>-]<[>++++++++<-]+>[>++++++++++[>+++++<-]>+.-.[-]<<[-]<->]<[>>+++++++[>+++++++<-]>.+++++.[-]<<<-]] >[>++++++++[>+++++++<-]>.[-]<<-]<+++++++++++[>+++>+++++++++>+++++++++>+<<<<-]>-.>-.+++++++.+++++++++++.<.>>.++.+++++++..<-.>>-[[-]<] 19:55:15 8 bit cells 19:55:20 duh 19:55:22 I'm screwed 19:55:29 why? 19:55:35 -!- Sgeo__ has joined. 19:55:41 so well 19:55:42 put simply 19:55:50 if I wanted to use my asmbf for it instead of the other compiler 19:55:59 I'd need to take on the account the fact that I need to store all the strings 19:56:09 and their length eventualy exceeds 255 bytes total 19:56:13 so I can't adress them anymore 19:56:31 but 19:56:39 I may use bconv from the toolchain to overcome that 19:56:49 but, I may run to the problem as above with the program timing out 19:57:09 so essentially I'm screwed 19:58:28 yeah, 447 bytes total 19:59:11 do you need to store the strings? 19:59:21 in a lookup table 19:59:26 otherwise I run into exact same problem as before 19:59:38 as opposed to just have a function that prints a particular string, for each string 19:59:52 branches are very expensive 20:00:00 inside a bracket conditional 20:00:16 what? brainfuck isn't bad at branching 20:00:23 I'm talking about asmbf 20:00:28 not brainfuck 20:00:32 look: 20:00:40 `asmbf lbl 1/jmp 1 20:00:41 ​+>+[>>>+<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>+<<<<<<<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]<<<[-]>[-]>>]<<] 20:01:29 so yeah I think the 8ball will stay as is until fizzie makes up his mind 20:01:35 or i could use underload 20:02:01 underload is deterministic too, no random source 20:03:09 doesn't matter 20:03:12 think out of the box 20:03:52 `show 8ball 20:03:52 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: show: not found 20:03:56 ^show 8ball 20:03:56 >+<+[>[>[-]+<-]>[<+>9[-]>2[-]<2[>2+<2-]<8-]>14[<15+>15-]<15[>[-]+<-]>[<+>9,>3[-]<3[>3+<3-][-]>2[<2+<7+>9-]<9[>9+<9-]>8[-]>2[<2+<8+>10-]<10[>10+<10-]>8[<+<7+>8-]<8[>8+<8-]>9[-]<2[>2+<2-][-]>3[<3+<7+>10-]<10[>10+<10-]>8[-]+10<[<6+>6-]->[<7-<+>8-]<8[>8+<8-]>[>6+<6[-]]<->7[<7->7-]<7[>7+<7-]>7[>6+<15->9[-]]<8-]<[>[-]+<-]>[<+>9[-]>2[<2+<7+>9-]<9[>9+<9-]>8[-]-8<[<6+>6-]->[<7-<+>8-]<8[>8+<8-]>[>6+<6[-]]<->7[<7->7-]<7[>7+<7-]>7[>7+<16-> 20:04:01 yeaaah 20:04:05 It's quite large 20:04:19 -!- LKoen_ has joined. 20:05:23 I can get it down to 10M though 20:05:28 and that's it 20:06:22 fizzie: tell me when you upgraded debian inside HackEso. I'll have to update the version number of procps that uptime lies itself to be 20:06:26 -!- LKoen has quit (Ping timeout: 240 seconds). 20:06:30 i have downloaded tens of thousands of pdfs :D 20:06:33 I guess I could make it run uptime for that 20:07:16 the super uptime that is 20:08:24 so 20:08:37 any doable ideas of programs to implement into fungot? 20:08:37 kspalaiologos: quoted lists are a crappy data structure if you intend to join the altparty cruise thing. i think 20:08:47 -!- LKoen has joined. 20:11:17 -!- LKoen_ has quit (Ping timeout: 240 seconds). 20:11:31 ;';'p[';;'';;'''';;;;;;;;;;;';';';;';'';''''''''''''''''''''';'''';''';'';';';';''';';'';';';';';';'''''''''''''''';'''''''''''';;'''''''''';'';''''';''''';''''';';';';';;;';';'''';';';'';''' 20:11:39 `fetch /hackenv/bin/uptime https://hack.esolangs.org/get/bin/uptime 20:11:40 2019-11-17 20:11:40 URL:https://hack.esolangs.org/get/bin/uptime [1560/1560] -> "/hackenv/bin/uptime" [1] 20:17:50 `fetch /hackenv/bin/uptime https://hack.esolangs.org/get/bin/uptime 20:17:51 2019-11-17 20:17:51 URL:https://hack.esolangs.org/get/bin/uptime [1624/1624] -> "/hackenv/bin/uptime" [1] 20:17:53 never mind, I fixed it 20:18:14 ``` chmod -c a+x /hackenv/bin/uptime 20:18:15 No output. 20:18:18 ``` uptime 20:18:19 bash: /hackenv/bin/uptime: python3: bad interpreter: No such file or directory 20:18:21 hmm 20:18:22 oh 20:18:32 `fetch /hackenv/bin/uptime https://hack.esolangs.org/get/bin/uptime 20:18:32 `` 8ball 20:18:33 2019-11-17 20:18:32 URL:https://hack.esolangs.org/get/bin/uptime [1633/1633] -> "/hackenv/bin/uptime" [1] 20:18:34 It is certain. 20:18:35 sorry 20:18:36 `uptime 20:18:37 ​ 20:18:36 up 3802 day, 4:48, 0 users, load average: 0.00, 0.00, 0.00 20:18:38 `uptime -V 20:18:39 uptime from procps-ng 3.3.15 20:18:46 should work even after upgrade 20:19:15 https://archive.org/details/encyclopaediaofo1920spen i didnt see any immediate explanation of magic 8 ball, but close enough for me Salagrama, The 20:19:15 : An Indian stone, credited with possessing 20:19:15 magical properties, and worn as an amulet. 20:19:15 This stone is 20:19:15 black in colour, about the size of a billiard ball, and pierced 20:19:17 with holes. 20:23:35 fungot, are potatoes your favourite vegetable? 20:23:35 b_jonas: the point is that you trust yourself to play by the old program probably doesn't need any changes. it does 20:29:13 `` 8ball should I continue with mode. 20:29:14 My sources say no. 20:29:30 probably a wise idea. 20:30:41 `fetch /hackenv/bin/uptime https://hack.esolangs.org/get/bin/uptime 20:30:42 2019-11-17 20:30:42 URL:https://hack.esolangs.org/get/bin/uptime [1696/1696] -> "/hackenv/bin/uptime" [1] 20:30:44 `uptime 20:30:45 ​ 20:30:44 up 3802 day, 5:00, 0 users, load average: 0.00, 0.00, 0.00 20:30:58 I added a head comment just to confuse people if they run into this in the future 20:36:23 `? uptime 20:36:24 uptime? ¯\(°​_o)/¯ 20:36:29 you can add it here 20:36:50 nope, it's a development command, you need to know about it only if you read the implementation and wonder why I did it that way 20:37:05 s/development command/developer comment/ 20:37:44 though I should add a command to edit the whatis database, to make that easy 20:44:57 [[BIX Queue Subset]] N https://esolangs.org/w/index.php?oldid=67191 * Ais523 * (+13224) new languages 20:45:11 -!- kspalaiologos has quit (Quit: Leaving). 20:45:36 [[Language list]] https://esolangs.org/w/index.php?diff=67192&oldid=67141 * Ais523 * (+23) /* B */ +[[BIX Queue Subset]] 20:45:50 -!- laerling has quit (Quit: ZNC 1.7.3 - https://znc.in). 20:45:59 [[User:Ais523]] https://esolangs.org/w/index.php?diff=67193&oldid=66956 * Ais523 * (+22) + [[BIX Queue Subset]] 20:49:37 -!- laerling has joined. 20:51:26 -!- ArthurStrong has quit (Quit: leaving). 20:51:42 [[I/D machine]] M https://esolangs.org/w/index.php?diff=67194&oldid=55703 * Ais523 * (+8) /* Two-command view */ typo fix 20:56:45 [[Flow of Holes]] M https://esolangs.org/w/index.php?diff=67195&oldid=57552 * Ais523 * (+0) /* Data storage */ grammar 20:57:07 -!- ais523 has joined. 21:00:07 hello ais523. fizzie went on a rampange with HackEso, changed the default working directory to /hackenv/tmp , edited many programs to not assume that the wd is /hackenv 21:00:36 although now there are also some symlinks in tmp that may make some programs appear to work at first but then silently fail 21:01:00 I'm still confused many times when I type a command 21:02:13 fizzie: I'd be tempted to set $HACKENV to a path with a space in it, just to break all the new scripts. 21:02:27 shachaf: I put double quotes in many of them 21:02:47 shachaf: mind you, if you manage to make a version of HackEso that runs on native windows, that might confuse everyone 21:02:49 -!- kspalaiologos has joined. 21:03:02 I'd probably be able to mostly deal with it, because I use windows at work 21:03:05 but still 21:03:10 HackEso isn't really the focus of my #esoteric experience, I'm more interested in the esolangs (with HackEso mostly being interesting for the implementation of them) 21:03:18 `! brachylog 2+₂w 21:03:19 ​/hackenv/ibin/brachylog: 2: /hackenv/ibin/brachylog: cannot create tmp/input.brachylog: Directory nonexistent \ /hackenv/ibin/brachylog: 3: cd: can't cd to interps/brachylog/brachylog/Brachylog-master/src \ ERROR: Prolog initialisation failed: \ ERROR: source_sink `'brachylog.pl'' does not exist 21:03:28 yeah, ibin is not fixed yet 21:03:36 ibin is the only important part :-( 21:03:42 fizzie: ^ 21:03:59 we'll fix it, this is just a temporary hickup 21:06:00 anyway, I recently discovered a set of languages that contains multiple different languages that have unclear Turing-completeness for different reasons, so I added it to the wiki 21:06:02 fizzie changed hackeso recently, we didn't have time to fix everything yet 21:06:57 ais523: I had discovered one of those as well. Amycus (my buggy version) with some of the builtins removed 21:07:10 oh, interesting 21:07:30 but I didn't write everything that I found about it down 21:07:47 I also haven't written down a proper proof for Blindfolded Arithmetic with 3 variables 21:07:55 which is clearly turing-complete 21:08:11 yes, I know you have a proof for 2 variables 21:08:18 -!- ais523 has quit (Quit: sorry for my connection). 21:08:31 -!- ais523 has joined. 21:08:33 fizzie: have you figured what we should do with the ibin interpreters? 21:08:42 anyway, now I have an additional 120 esolangs with procedurally generated names; "a c fd td" is probably the most interesting, being closer to the TC line than most of them (none are proven TC yet but there are many better candidates for TC than that one) 21:11:29 -!- imode has quit (Ping timeout: 276 seconds). 21:11:30 ais523: how do you call a language only powerful enough to represent functions from finite sets to finite sets? Seems like a weakest class I met, but that’s the case when a generalized Minsky Machine is not TC 21:11:58 machine* 21:12:05 arseniiv: a finite function? 21:12:18 that's basically just a lookup table, right? 21:12:30 arseniiv: well it's isomorphic to total functions from natural numbers to natural numbers? 21:12:32 b_jonas: it doesn’t look like a good name for a class 21:12:35 ais523: yeah 21:12:35 for batch processes, lookup table vs. finite-state machine vs. bounded-storage machine is all a matter of opinion, really 21:12:41 -!- LKoen has quit (Remote host closed the connection). 21:13:01 the differences only arise when you add I/O 21:13:21 int-e: hm I don’t see 21:13:33 (even then, a bounded-storage machine is just "a finite-state machine with an obvious generalisation to larger finite numbers of states, which is TC in the limit") 21:13:38 arseniiv: oh, finite sets of what... 21:14:49 -!- LKoen has joined. 21:14:52 int-e: I meant a function has elements of a finite set as arguments and (from another one) as values, not sets themselves, that would be too good! 21:15:32 arseniiv: Oh. Not a type of finite sets, but finite sets as types. 21:15:57 -!- xunil has quit (Ping timeout: 240 seconds). 21:17:09 arseniiv: So basically the same as boolean circuits. 21:17:53 int-e: yes 21:18:38 So I guess that's the name I'd use, with a footnote that we also consider circuits which disallow certain inputs and outputs. 21:19:27 int-e: what's wrong with finite functions, or functions with a finite domain if you prefer 21:19:54 b_jonas: boolean circuits come with established theory 21:20:02 b_jonas: other than that, no reason 21:20:07 finite sets come with establish theory too 21:20:13 maybe I was too strit 21:20:18 strict* 21:20:34 b_jonas: and by theory I mean complexity theory. 21:23:59 ``` cat /hackenv/ibin/brachylog # this one doesn't use that lib/interp framework, so we can fix it in a custom way without worrying about how we fix the old stuff 21:24:00 ​#!/bin/sh \ echo "$1" > tmp/input.brachylog \ (cd interps/brachylog/brachylog/Brachylog-master/src; swipl -g 'run_from_file("../../../../../tmp/input.brachylog", _, _), write(" \ true."), !, halt; write(" \ false."), !, halt' brachylog.pl) 21:24:24 b_jonas: You don't need to; I've included it in my out-of-band fix commit, which I'm building. 21:24:32 ok 21:25:06 ais523: ! brachylog will be fixed 21:25:24 `! brachylog 2+₂w 21:25:25 ​/hackenv/ibin/brachylog: 2: /hackenv/ibin/brachylog: cannot create tmp/input.brachylog: Directory nonexistent \ /hackenv/ibin/brachylog: 3: cd: can't cd to interps/brachylog/brachylog/Brachylog-master/src \ ERROR: Prolog initialisation failed: \ ERROR: source_sink `'brachylog.pl'' does not exist 21:25:35 "Will be", not "is". 21:25:38 ah right, not fixed yet 21:25:47 and there'll be little lemon-soaked napkins too 21:26:01 please don't delay the fix until the napkins are available ;-) 21:27:24 `? cake 21:27:26 The Enrichment Center is required to remind you that you will be baked, and then there will be cake. 21:28:12 I replayed Portal recently. Still good :) 21:28:59 int-e: how about Portal 2 single-player? 21:31:44 oh, is there a big story behind lemons on the wiki logo? 21:31:49 b_jonas: Good story, missed the puzzles. 21:32:03 int-e: what story or puzzles? 21:32:27 arseniiv: there was some story I think, probably not very relevant, but I don't remember what it was 21:32:30 Portal 2 tells a story of the history of Aperture Science. 21:32:39 oh right, Portal 2 21:33:04 [[User:PythonshellDebugwindow]] N https://esolangs.org/w/index.php?oldid=67196 * PythonshellDebugwindow * (+99) Created page with "I am currently working on BrainStack, a stack-based esolang with some influence from [[Brainfuck]]." 21:33:05 sorry, I forgot the context even though it was just a few lines before 21:33:10 Portal 1 has less of a story, but more satisfying puzzles. 21:33:31 b_jonas: lemon-soaked napkins unhibernated me 21:33:38 (Portal 2 has multiplayer puzzles but since I don't do multiplayer I'm missing out on those.) 21:35:54 arseniiv: they're limes, not lemons; IIRC it was originally just a stock image but we kept it for the mystery, there probably isn't a deeper meaning behind it but who knows? 21:35:57 `? napkin 21:35:58 A complement of small lemon-soaked paper napkins is essential for the comfort, refreshment, and hygiene of the passengers during the journey. 21:36:30 int-e: IIRC there are some people who play Portal 2 multiplayer by controlling both players themselves 21:36:43 but you're not missing out on much story content by missing out the multiplayer, only puzzles really 21:36:45 ais523: yes, but those are crazy speedrunners 21:36:56 and int-e complained about puzzles 21:36:58 ais523: Yeah but I like puzzles. 21:37:08 right 21:37:12 if you wanted the story, you could just watch someone else's multiplayer playthrough 21:37:23 but that would spoil the puzzles 21:39:47 sure, but if you won't play it anyway, then does the spoiler matter? 21:40:29 Why don't you do multiplayer? 21:40:35 `! brachylog 2+₂w 21:40:36 4 \ true. 21:40:47 ais523: ah! Thanks 21:41:03 b_jonas: It's funny though... even though the first Portal game has less of a story, it seems to be richer on memorable quotes. 21:41:09 It's so odd that you can't `doag f where f is directly in hackenv anymore. 21:41:20 I guess dowg and dobg and so on are finally useful? 21:41:25 and I did know they are limes but for some reason I wrote about lemons, maybe because of those napkins mentioned… 21:41:28 int-e: I don't think so. I think Portal 2 has memorable quotes too 21:41:48 or maybe not, I dunno 21:41:48 shachaf: Yes, and maybe "dorg" could be relative to /hackenv (r for root). 21:42:23 And crlprits? And crt? 21:42:41 why "root"? root is / 21:43:03 hopefully HackEso gets well soon! :D 21:43:06 Well, logical root. Alternatively, "h", but that's probably just as confusing. 21:43:37 e for env 21:43:53 well, I don't really care, because I don't use cbt or slbd or [dh]oag 21:44:21 I just use cat, /bin/sed or perl, hg directly 21:45:19 `! befunge 0"gnitset tsuj">:#,_@ 21:45:20 just testing 21:45:34 (It's likely some things are still broken.) 21:46:36 `! c int main(void) { printf("oFQOtCD75OCP"); return 0; } 21:46:38 oFQOtCD75OCP 21:47:06 OTOH, I think it's highly likely some of the ibin commands were already broken, due to missing bits and pieces. 21:47:09 `! bf_txtgen testing 21:47:12 72 +++++++++++++[>+++++++++>++++++++>><<<<-]>-.>---.<-.+.>++++.<------.>--. [356] 21:47:14 `! perl for ("a".."dz") { print "$_ "; } 21:47:15 a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df dg dh di dj dk dl dm dn do dp dq dr ds dt du dv dw dx dy dz 21:50:37 ``` swipl -g 'T is 7**8 + 1, display(T), halt.' 21:50:38 5764802 21:50:39 this still works 21:51:58 `! cxx #include \ int main() { std::cout << "cwnRPfoBPzhY"; return 0; } 21:52:09 No output. 21:52:16 `! cxx int main() { std::cout << "cwnRPfoBPzhY"; return 0; } 21:52:18 Does not compile. 21:52:26 `! cxx #include \n int main() { std::cout << "cwnRPfoBPzhY"; return 0; } 21:52:29 No output. 21:52:40 how do I use `! cxx ? 21:54:25 Hmm, the middle one should have worked, there's one of those implicit wrappers with a try-both-ways logic. 21:54:59 Well, actually -- the wrapper includes the main as well. 21:55:01 fizzie: how do I explicitly add an include? 21:55:09 `! cxx std::cout << "cwnRPfoBPzhY"; return 0; 21:55:12 cwnRPfoBPzhY 21:55:53 Not sure. Can't quite figure out how to express a newline. 21:56:31 hmm 21:56:40 would be useful for defines and includes 21:57:13 Yes, it would. It auto-includes and 'using namespace std;'. 21:58:11 I heard a suspicious claim every endo bijection is a composition of two endo involutions. I think I almost got why this should be wrong 22:00:30 is there digraph/trigraph thingy for newline? 22:00:37 * kingoffrance ducks and covers and rolls 22:03:05 kingoffrance: no, but geordi, which used to be a bot that evaluated C++, used backslash to represent newlines in code you give in irc 22:03:06 ah, I was wrong myself, it works even for infinite orbits 22:03:11 so we can follow that convention 22:03:23 of course they only represent a newline when it's outside of a string/character literal 22:15:50 -!- arseniiv has quit (Ping timeout: 276 seconds). 22:33:56 backslash-space makes a good way to represent newlines without worrying about parsing 22:34:02 as it won't appear in a string or character literal 22:34:10 (or even space-backslash-space, which is what I normally use to represent them on IRC) 22:34:29 kingoffrance: Java supports the hexagraph \u000A for a newline 22:34:34 but C doesn't have one 22:35:10 it should, really, it'd be more useful than most of the trigraphs (and not all character encodings have a newline) 22:37:55 ais523: yes, but you have to be able to tokenize for that 22:38:29 ais523: and mind that you have to know about C++ numeric literals with new style digit separators to do enough of the tokenization to recognize character literals correctly 22:38:53 oh wait 22:38:57 you said backslash-space 22:38:57 hmm 22:39:14 well, the easiest solution IMO is #include ; /* <----- magical semicolon */ int main(void) { ... } 22:39:32 kingoffrance: how does that work if you want to allow macros? 22:39:38 null declarations aren't legal anyway 22:39:40 macro defines too I mean 22:39:49 ais523: they are legal in C++ now 22:40:10 I think null declaration should be legal, since sometimes a macro might expand to make such thing 22:40:42 well, i wasnt concerned about macros or anything practical, except chatting to HackEso via one-lined IRC 22:41:46 i guess my someday esoteric lang the 8 pictograph will, in reverence, return a random integer 22:44:24 let me see that thing then 22:44:37 `? ! 22:44:38 ​! is a syntax used in Haskell and Prolog for solving evaluation order problems. 22:44:38 `? ibin 22:44:39 ibin? ¯\(°​_o)/¯ 22:44:42 `? `! 22:44:43 ​`! emulates the ! command of our former bot EgoBot. You write `! then the name of the language then a program, and it runs the program you give and returns the result. We used to use it to test out esoprograms in-channel all the time, but the set of included esolangs is fairly old now and so it's rarely used. 22:44:46 `? interps 22:44:47 interps? ¯\(°​_o)/¯ 22:45:04 is the interface for ibin documented anywhere? that is, what does a new script in ibin have to do to work with ! ? 22:46:22 I mean I could make a script that calls gcc or g++ with the appropriate options to compile a program and then run, interpreting backslash escapes and even command line options starting with hyphe at the start 22:46:28 but I don't know how to put it in ibin 22:58:38 You might look into improving the existing system. 22:58:56 https://hack.esolangs.org/repo/file/tip/interps/gcccomp/gcccomp is what `! c and `! cxx feed into. 23:00:16 The whole thing isn't documented, though. But the tl;dr is you put a wrapper in ibin like https://hack.esolangs.org/repo/file/tip/ibin/c which typically uses one of interp_stdin / interp_file from https://hack.esolangs.org/repo/file/tip/lib/interp depending on what the called program expects. 23:01:37 (interp_stdin passes the contents of the `! x ... command line to the program as stdin, interp_file as a path to temporary file.) 23:02:03 Do you like vpternlog? 23:02:14 All in all, it may be overly complicated. It did have a nice benefit that it made all `! programs capable of reading source from the web, but that part's now commented out because there's no networking. 23:03:00 Ooh, funky. 23:04:19 [[Daft]] https://esolangs.org/w/index.php?diff=67197&oldid=39053 * B jonas * (+118) link "da f t" 23:05:13 fizzie: ok 23:06:59 [[Da f t]] N https://esolangs.org/w/index.php?oldid=67198 * B jonas * (+30) Redirected page to [[BIX Queue Subset]] 23:08:24 -!- ais523 has quit (Quit: quit). 23:08:29 I don't think ibin scripts necessarily need to use the lib/interp functions; as we saw, branchylog doesn't, and 7 doesn't either. Or k, but that doesn't actually do anything. 23:09:58 OTOH, if you're not using lib/interp, maybe it should be just a regular `command instead of a `!-wrapped command. On the third hand, it makes some sense for all (especially eso)language things be in the same thing. On the fourth hand, there's a number of non-! language tools, like `forth, `js. 23:10:23 And `perl-e. These tend to be smaller-scale wrappers. 23:12:31 ok, so I just make a script in interps that reads code from stdin, and put a wrapper in ibin that uses interp_stdin 23:14:18 https://esolangs.org/logs/2012-03-19.html talks about the lime slices a bit 23:14:35 https://esolangs.org/logs/2012-03-19.html#lId 23:16:01 It's called the trilime. 23:20:51 -!- 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:52:02 -!- kspalaiologos has quit (Ping timeout: 240 seconds). 23:54:13 -!- heroux has quit (Ping timeout: 265 seconds). 23:54:54 -!- heroux has joined. 23:57:14 -!- hppavilion[1] has joined.