00:01:50 [[Talk:ESON]] N https://esolangs.org/w/index.php?oldid=67242 * IFcoltransG * (+185) Created page with "The hex regex looks ambiguous with the quaternary. Are you sure it isn't meant to be 'x'? ~~~~" 00:04:10 -!- LKoen has quit (Remote host closed the connection). 00:06:43 -!- LKoen has joined. 00:08:33 [[XS]] M https://esolangs.org/w/index.php?diff=67243&oldid=46834 * IFcoltransG * (+24) Added 'see also' to XSM 00:08:46 -!- FreeFull has quit. 00:48:26 -!- oerjan has joined. 00:53:14 -!- ArthurStrong has joined. 00:53:20 @messages-gold 00:53:20 fizzie said 14h 51m 15s ago: Updated things, maybe it's a newer version of Mercurial/hgweb. There's a notion of changeset "phases", from secret -> draft -> public. It's maybe showing those, and 00:53:20 counting everything as draft (the default for new changesets) as they're technically never been pushed to a remote repo (the browser shows the real thing). 00:53:48 mhm 00:58:15 `` ls -ld .hg 00:58:16 ls: cannot access '.hg': No such file or directory 00:58:19 hm 00:58:31 `` cat bin/hlnp 00:58:32 cat: bin/hlnp: No such file or directory 00:58:39 `` cat ../bin/hlnp 00:58:40 scowrevs="$(/usr/bin/paste -sd'|' /hackenv/share/scowrevs)"; hg log -r "tip:0 & ! ($scowrevs)" "$@" | sed 's/\(\(^\| \)[ curious. does hg recurse into parent directories to find .hg by default? 00:59:28 I'd assume most VCSes do 00:59:33 i suppose 00:59:41 as it's common to want to VCS from a subdirectory 00:59:46 git won't recurse across filesystems, though 01:00:00 well that explains why that didn't break 01:00:26 heh so git might have broken, since tmp is mounted separately 01:00:33 (or wait, is it) 01:00:44 i suppose it isn't 01:00:59 it was introduced with the .hgignore hack, after all 01:01:16 `` ls -ld .hg* 01:01:17 ls: cannot access '.hg*': No such file or directory 01:01:39 `` ls -ld ../.hg* 01:01:39 drwxr-xr-x 5 1000 1000 4096 Nov 19 01:01 ../.hg \ -rw-r--r-- 1 1000 1000 150 Jul 8 2017 ../.hg_archival.txt \ -rw-r--r-- 1 1000 1000 6 Jul 8 2017 ../.hgignore 01:02:26 hah, I didn't even realise that we created /tmp from inside HackEso, I assumed it was hardcoded 01:03:27 it wasn't, although now there's a hardcoded restore of .hgignore to ensure it doesn't break 01:03:54 hmm, is HackEso technically a codenomic? 01:04:17 I guess not, because of the hardcoded `rever 01:04:19 * `revert 01:04:38 meaning that nothing can ever become permanently disallowed 01:05:06 -!- mniip has quit (Ping timeout: 615 seconds). 01:05:07 that's not really possible anyway since you can run global commands. 01:05:31 except for that evil canary bug that someone once found, but that's been fixed 01:05:44 I'm sure there are permissions bugs left. 01:06:22 it was probably me, I liked doing weird things with the canary just to see what would happen 01:07:01 that said, if we're gradually moving more and more important things to /tmp, the canary probably won't help much 01:07:04 i think maybe it was actually chmod 000 . , but that broke everything because of side effects with the canary 01:07:06 as it won't stop a deletion from there 01:07:32 we're not supposed to move important things to tmp/ 01:07:33 /tmp is a bad name; it's either tmp or /hackenv/tmp. 01:07:55 everything there is in principle ephemeral 01:08:04 `touch /tmp/test 01:08:06 No output. 01:08:13 That's writable too, it's just not persistent. 01:08:13 `ls -l /tmp/test 01:08:14 ls: invalid option -- ' ' \ Try 'ls --help' for more information. 01:08:20 which creates some trouble for le/ which now can be broken 01:08:21 `` ls -l /tmp/test 01:08:21 ls: cannot access '/tmp/test': No such file or directory 01:08:31 ah, I see, it disappears every command 01:08:35 It's a tmpfs inside the per-command kernel, yes. 01:08:49 that means it's probably the best place for files that are genuinely temporary 01:08:55 like ibin/brachylog uses 01:09:29 I switched it to /tmp when fixing the $HACKENV thing. 01:10:16 oerjan: Incidentally, I didn't include misle in tmp yet. 01:10:42 (There's misle/rn and misle/rn_append, the counterparts of the same commands in le/ but for tmflry instead of wisdom.) 01:10:57 whoa 01:11:12 It's really only `foo/bar commands that, in the /hackenv/tmp cwd setup, unfortunately have to have some part inside tmp. 01:11:16 `` doag /hackenv/misle 01:11:17 6804:2016-02-10 undo c58a6174e051 \ 6800:2016-02-10 ` sed -i \'s/| lowercase//\' misle/* \ 6786:2016-02-10 ` sed -i \'s/Learned/Was lied to about/\' misle/* \ 6783:2016-02-10 ` mkdir misle; cp le/* misle; sed -i \'s/wisdom/tmflry/g\' misle/* 01:11:41 i've been misled 01:12:37 I've never really understood the concept of tmflry, TBH. 01:12:49 why doesn't `foo/bar look in /hackenv/bin/foo/bar? 01:13:13 Because it uses a shell to execute the command. 01:13:21 And "foo/bar" is not looked up in $PATH. 01:13:37 I mean, it doesn't need to do that, but that's the immediate reason. 01:13:42 fizzie: well, an actual learndb full of useful information is something many channels benefit from, probably this one would as well; however, nobody seemed inclined to make it and the naming was silly 01:13:49 `? INTERCAL 01:13:50 INTERCAL has excellent features for modular program for the enterprise market. 01:13:55 `? Brachylog 01:13:56 Brachylog? ¯\(°​_o)/¯ 01:13:59 `? Jelly 01:14:00 Jelly? ¯\(°​_o)/¯ 01:14:08 imagine if that give actual summaries of the esolangs 01:14:13 it'd be better for conversation 01:14:24 as it is, though, people just give esowiki links 01:14:28 https://esolangs.org/wiki/INTERCAL etc. 01:14:33 I think the problem is, not all the wisdom entries are foolishness either. 01:14:34 `? COME FROM 01:14:35 COME FROM? ¯\(°​_o)/¯ 01:15:02 `? ¯\(°​_o)/¯ 01:15:04 ​¯\(°​_o)/¯ is a misspelling of ¯\(°_o)/¯ 01:15:14 well that was interesting 01:15:38 I was vaguely considering I might have `!wiki INTERCAL` or some-such make esowiki print out the link plus the first paragraph. 01:16:41 (The convention of using `backtick quoting` for code text doesn't really work for talking about HackEso commands.) 01:16:54 do we at least have a command for linking to the wiki? 01:16:56 `wiki INTERCAL 01:16:57 https://esolangs.org/wiki/tmp/INTERCAL 01:17:08 Whoops, that looks like a bug. 01:17:10 beautiful :-D 01:17:19 `cat bin/wiki 01:17:20 cat: bin/wiki: No such file or directory 01:17:24 `cat /hackenv/bin/wiki 01:17:24 ​#!/usr/bin/env python \ import sys, os.path, urllib \ if len(sys.argv) <= 1: \ print "https://esolangs.org/" \ else: \ f = os.path.abspath(sys.argv[1]) \ if f.startswith('/hackenv/'): f = f[9:] \ print ("https://esolangs.org/wiki/" + \ urllib.quote(f)) 01:17:46 I'm not sure why exactly it treats the argument as a path. 01:18:09 nor am I 01:18:25 ^wiki INTERCAL 01:18:25 https://esolangs.org/wiki/INTERCAL 01:18:33 We also have the befunge equivalent. 01:18:58 Er, brainfuck equivalent. Kind of. 01:19:01 ^wiki /// 01:19:01 https://esolangs.org/wiki//// 01:19:13 ^wiki ;# 01:19:13 https://esolangs.org/wiki/;# 01:19:21 hmm, I don't think it's doing any sort of escaping 01:19:27 No, it's just a ,[.,] 01:20:06 (;# is an esolang, technically, but a really terrible one; it's basically a sub-TC minimalisation of BF to just the + and . commands) 01:20:25 (so in a way I'm glad we dont't have an article on it) 01:21:11 `dobg wiki 01:21:12 11334:2018-01-20 fetch bin/wiki https://hackego.esolangs.org/get/bin/wiki \ 10393:2017-03-11 ` chmod +x bin/wiki \ 10392:2017-03-11 fetch bin/wiki https://hackego.esolangs.org/get/bin/wiki \ 7080:2016-03-05 rm bin/wiki \ 7079:2016-03-05 ` echo "echo \\"http://esolangs.org/wiki/Main_Page\\"" > bin/wiki 01:21:33 `hurl ../bin/wiki 01:21:34 https://hack.esolangs.org/repo/log/tip/bin/wiki 01:22:22 `slbd wiki//6,7d;s/quote(f)/quote(sys.argv[1])/ 01:22:24 wiki//#!/usr/bin/env python \ import sys, os.path, urllib \ if len(sys.argv) <= 1: \ print "https://esolangs.org/" \ else: \ print ("https://esolangs.org/wiki/" + \ urllib.quote(sys.argv[1])) 01:22:26 there is something very weird about a 1 with an umlaut on it :-D 01:22:27 Let's give that a try. 01:22:35 `wiki INTERCAL 01:22:35 https://esolangs.org/wiki/INTERCAL 01:22:36 accented digits isn't something I'd even considered 01:22:54 `wiki ;# 01:22:55 https://esolangs.org/wiki/%3B%23 01:24:43 `hurl ../bin/url 01:24:44 https://hack.esolangs.org/repo/log/tip/bin/url 01:25:33 Right, maybe it was adapted from url and/or suchlike. 01:26:14 Wasn't clearing tmp/ supposed to be supported? 01:26:17 `unicode COMBINING CEDILLA 01:26:18 ​̧ 01:26:30 5 01:26:51 fizzie: i must have done it by i don't remember 01:26:54 I meant ​5̧ 01:27:04 Is the state in tmp/ now required for le/rn operation? 01:27:12 Yes. It is a shame. 01:27:27 hmm my client renders that 5-cedilla pretty well 01:27:36 s/hmm/hmm,/ 01:29:25 Wasn't clearing tmp/ supposed to be supported? <-- yes, but now we have a choice between that and keeping le/rn working. 01:30:57 or fizzie could add a hack to catch /-containing commands 01:32:20 I could make ` in general just do a custom lookup, it's already kind of a non-standard parsing. 01:32:45 In that it splits on first space to form the command and its full argument. 01:38:21 hmm, I assume you can't just hardcode it to run /hackenv/bin/command because you need to be able to run commands like ls too 01:38:23 -!- kspalaiologos has quit (Ping timeout: 250 seconds). 01:46:01 was HackEgo on CaC from the start? i vaguely think otherwise. 01:46:45 hm no it wasn't, there was at least one move that changed stuff 01:46:54 when it colocated with the wiki 01:47:23 The very first join is from codu.xen.prgmr.com. 01:47:54 [[HackEso]] https://esolangs.org/w/index.php?diff=67244&oldid=67233 * Oerjan * (+71) Fix a few errors and mention hurl 01:50:55 The hosts my logs have seen are HackEgo!~HackEgo@162.248.166.242 (CaC, 57k lines), HackEgo!codu@codu.org (who knows where, 12k lines), HackEgo!dlopen@libdl.so (ditto, 5.8k lines) and a few less common ones, including HackEgo!n=HackEgo@codu.xen.prgmr.com, HackEgo!dlopen@64.62.173.65. 01:51:13 Also, the way the command and arguments flow through all the levels is pretty awkward. 01:53:04 * oerjan remembers libdl.so 01:55:04 do you suppose this change is ok? <-- i don't see a rule that it is violating, which is sort of not in the spirit 01:59:05 First, in PRIVMSG/tr_60.cmd (called by multibot for trigger character `) it's split into the command and an optional argument on the first space. Then it calls lib/sandbox with Python subprocess.Popen. That next uses Python subprocess.call to form the umlbox command line: 'nice', '-n10', '/usr/bin/umlbox', ..., '.../limits', 'cmd', 'argument stuff'. Then umlbox shell-escapes all the arguments and 01:59:11 concatenates the results into a 'run' command in the umlbox config file. The umlbox init reads that, and invokes the result using system() -- so passing through a shell at that point. Finally, that triggers the lib/limits script, which sets a few ulimit values and uses bash exec to run the actual command. 02:00:16 `` cat /proc/$PPID/cmdline 02:00:19 sh.-c.'/srv/hackeso-code/multibot_cmds/lib/limits' '`' 'cat /proc/$PPID/cmdline' | cat. 02:00:40 Such a house of cards. 02:01:47 oerjan: Well, maybe subdirectories of tmp/ can be version-controlled. 02:02:05 Or maybe there can be some thing that detects when tmp/ is cleared and puts the things back. 02:05:50 -!- LKoen has quit (Remote host closed the connection). 02:10:33 * oerjan thinks today's schlock mercenary looks a bit inconsistent with the previous claim that most AIs aren't easily copyable 02:50:43 -!- imode has joined. 02:52:49 I think maybe I'm still missing something about non-chronological backjumping. 03:10:27 -!- ais523 has quit (Quit: quit). 03:13:56 `url ../bin/addquote 03:13:57 https://hack.esolangs.org/repo/file/tip/bin/addquote 03:14:29 `url ../bin/delquote 03:14:29 ../hello/oerjan 03:14:30 https://hack.esolangs.org/repo/file/tip/bin/delquote 03:14:53 hi/chaf 03:15:09 thought so 03:15:24 `` ls -l ../share/quotes 03:15:25 lrwxrwxrwx 1 1000 1000 9 Nov 18 10:40 ../share/quotes -> ../quotes 03:15:35 `` rm ../share/quotes 03:15:37 No output. 03:15:59 delquote works in a way that will break if it's a symbolic link 03:17:07 oerjan: ENOENT 03:17:18 did you mean /hackenv/hi/chaf 03:18:37 ENO 03:19:02 You know how it's megaconfusing when executing a file yields ENOENT even though it exists? 03:20:20 b_jonas: ^ 03:20:31 EYESENT 03:20:46 (not really) 03:21:24 `` ls -l program 03:21:25 ​-rwxr-xr-x 1 1000 1000 1576 Nov 19 03:20 program 03:21:28 `` ./program 03:21:28 ​/hackenv/bin/`: line 5: ./program: No such file or directory 03:21:50 `` strace ./program 03:21:51 execve("./program", ["./program"], 0x7fbf90dce0 /* 15 vars */) = -1 ENOENT (No such file or directory) \ strace: exec: No such file or directory \ +++ exited with 1 +++ 03:21:53 * oerjan instantly wanted to `doag that 03:21:57 then remembered 03:22:06 sorry 03:22:11 `` ../tmp/program # hth 03:22:12 ​/hackenv/bin/`: line 5: ../tmp/program: No such file or directory 03:23:40 kmc: puzzle hth 03:23:49 this is a conceptual problem: since files in tmp/ have no repo history, it can be hard to know why they were put there, and therefore whether they're worth saving 03:24:10 I guess it's not a very good puzzle because we've already talked about it. 03:24:22 oerjan: Wasn't the hg repository supposed to solve this problem in the first place? 03:24:26 and the change of pwd encourages people to put things there by accident 03:24:36 The idea was just that no one would care about hg history and it would describe everything. 03:24:36 shachaf: EFULLCIRCLE 03:24:48 So the solution is obvious: Add a second hg repository for tmp/. 03:25:05 EBRILLIANT 03:26:06 As an alternative, I propose something like automatic deletion of tmp/ every day. 03:26:09 Or every hour. 03:26:13 Or maybe just deleting old files automatically. 03:26:28 `` ls 03:26:29 a.c \ a.out \ as-encoding \ asmbf-1.1.1 \ banana.txt \ bfi \ compiled_brachylog.pl \ hexdump.hex \ input.brachylog \ jeval.whatis \ just \ karma \ le \ out \ OUT \ out.a \ out.a.hd \ out.a.xxd \ paste \ program \ single-word-character-names \ spline \ spout \ spout.raw \ temp.b \ test.sh \ tmp-interp \ tmp.txt \ uptime.out 03:28:45 maybe we should warn kspalaiologos before doing it. i think his asmbf workflow isn't quite compatible at the moment. 03:30:02 Also, you can apparently hg add things inside hgignored directories. 03:30:05 fizzie: ☝ 03:30:14 oh that's true 03:30:25 Though that requires superpowers which isn't in the spirit of le/rn 03:30:58 hm 03:31:35 I'm a little worried about the complexity of tmp handling to add version-controlled stuff inside it. I think I'll rather adjust `foo/bar to look for /hackenv/bin/foo/bar (in some shape or form, we'll see), which'll also mean you no longer need even the /hackenv/le, all the binaries can be in bin. 03:32:36 Or maybe we can just get rid of le/rn etc. which are silly commands anyway? 03:32:46 It could be called slashlearn, for instance. 03:32:58 Or lern or lrn or lesrn or le\rn 03:34:00 `` sort -t | tac 03:34:00 sort: option requires an argument -- 't' \ Try 'sort --help' for more information. 03:34:26 `` ls -t | tac 03:34:27 jeval.whatis \ tmp.txt \ out \ out.a \ OUT \ out.a.xxd \ out.a.hd \ a.c \ as-encoding \ single-word-character-names \ a.out \ hexdump.hex \ test.sh \ asmbf-1.1.1 \ just \ banana.txt \ le \ karma \ tmp-interp \ uptime.out \ spout.raw \ spout \ spline \ input.brachylog \ compiled_brachylog.pl \ paste \ temp.b \ bfi \ program 03:34:42 In related news, I would like a config option that can disable .hgignore. Then I could set up .hg/hgrc to point at a read-only ignore file. 03:35:20 Why shouldn't .hgignore belong to the people? 03:35:32 Because it's too hard to make things work sanely. 03:35:42 It doesn't belong to the people any more anyway. 03:35:43 `` ls -t | tac | head -n 12 | xargs rm -v 03:35:44 removed 'jeval.whatis' \ removed 'tmp.txt' \ removed 'out' \ removed 'out.a' \ removed 'OUT' \ removed 'out.a.xxd' \ removed 'out.a.hd' \ removed 'a.c' \ removed 'as-encoding' \ removed 'single-word-character-names' \ removed 'a.out' \ removed 'hexdump.hex' 03:35:46 Is that a goal? 03:35:59 I know it doesn't, but maybe it oughtta. 03:36:02 (compromise) 03:36:03 It's my goal, since I have to pretend to administer that thing. 03:36:17 Hey, you deleted out.a! 03:36:26 what was that for? 03:36:30 get.out.a.here 03:36:43 It was a variant of ./program 03:36:46 `` ./program 03:36:47 ​/hackenv/bin/`: line 5: ./program: No such file or directory 03:36:51 Oh no, ./program is gone too?! 03:36:52 shachaf: well it was OLD 03:37:30 (Incidentally, one way to "disable" .hgignore would be to only mount a subdirectory of the repository as /hackenv.) 03:37:34 (maybe not _that_ old, but i deleted the 12 oldest files) 03:37:48 (But moving every file into a subdirectory would be the mother of all scowrevs.) 03:37:52 (Anyway, sleep mode.) 03:38:20 (Well, I could always rewrite history so that it looked like it always had been like that.) 03:40:44 `` ls -t | tac 03:40:45 test.sh \ asmbf-1.1.1 \ just \ banana.txt \ le \ karma \ tmp-interp \ uptime.out \ spout.raw \ spout \ spline \ input.brachylog \ compiled_brachylog.pl \ paste \ temp.b \ bfi \ program 03:40:57 shachaf: program is still there 03:42:46 (wait that's the joke isn't it) 03:43:16 `cbt sport 03:43:17 cat "${2:-/dev/stdin}" >$HACKENV/tmp/spout.raw; distort $HACKENV/tmp/spout.raw | spore "${1-1}" 03:43:20 `cbt spore 03:43:21 cat "${2:-/dev/stdin}" > $HACKENV/tmp/spout; spam "${1-1}" 03:43:50 hm 03:43:59 -!- hppavilion[1] has quit (Ping timeout: 246 seconds). 03:44:22 `slbd sport s,$HACKENV,,g 03:44:22 usage: sled file//script 03:44:30 `slbd sport//s,$HACKENV,,g 03:44:32 sport//cat "${2:-/dev/stdin}" >/tmp/spout.raw; distort /tmp/spout.raw | spore "${1-1}" 03:44:51 i don't think there's any reason to have that file persistent 03:45:13 `rm spout.raw 03:45:14 No output. 03:45:40 `` rm -v *brachylog* 03:45:40 removed 'compiled_brachylog.pl' \ removed 'input.brachylog' 03:45:55 and fizzie moved those to /tmp as well afaiu 03:46:37 `url ../bin/uptime 03:46:38 https://hack.esolangs.org/repo/file/tip/bin/uptime 03:47:33 `url uptime.out 03:47:34 https://hack.esolangs.org/tmp/uptime.out 03:48:17 seems like debugging output 03:52:17 -!- MDude has quit (Ping timeout: 240 seconds). 03:52:18 ^show 03:52:18 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 03:52:39 ^show bf 03:52:39 (^bf -- evaluates brainfuck)S 03:53:27 ^show def 03:53:27 (hai)S 03:53:42 ^def 03:53:42 hai 03:54:45 ^str 04:20:06 oerjan: That was a sort of joke, yep. 04:26:16 OKAY 04:50:56 -!- imode has quit (Ping timeout: 240 seconds). 05:07:59 helo 05:08:02 what's puzzle 05:08:07 shachaf^ 05:08:32 I had some EtOH 05:08:39 I'm sauzzled 05:54:32 [[User:Zemeckis]] https://esolangs.org/w/index.php?diff=67245&oldid=50152 * Zemeckis * (-98) 05:59:19 `` ls -l program 05:59:20 ​-rwxr-xr-x 1 1000 1000 1576 Nov 19 03:20 program 05:59:23 `` ./program 05:59:24 ​/hackenv/bin/`: line 5: ./program: No such file or directory 05:59:27 `` strace ./program 05:59:28 execve("./program", ["./program"], 0x7fbfc5dce0 /* 15 vars */) = -1 ENOENT (No such file or directory) \ strace: exec: No such file or directory \ +++ exited with 1 +++ 05:59:58 kmc: that hth 06:17:13 [[Zemeckis]] N https://esolangs.org/w/index.php?oldid=67246 * Zemeckis * (+28) Redirected page to [[User:Zemeckis]] 06:25:10 [[JUSTIF]] https://esolangs.org/w/index.php?diff=67247&oldid=62061 * Voltage2007 * (+5) 06:46:43 [[Zemeckis]] https://esolangs.org/w/index.php?diff=67248&oldid=67246 * Zemeckis * (-28) Blanked the page 06:58:02 -!- arseniiv has joined. 07:00:53 -!- ineiros has quit (Remote host closed the connection). 07:03:27 [[4DChess]] N https://esolangs.org/w/index.php?oldid=67249 * Zemeckis * (+3027) Page created. 07:03:55 [[4DChess]] M https://esolangs.org/w/index.php?diff=67250&oldid=67249 * Zemeckis * (-1) 07:06:02 [[Talk:4DChess]] N https://esolangs.org/w/index.php?oldid=67251 * Zemeckis * (+140) Created page with "Feel free to improve anything in any way you see fit. ~~~~" 07:06:52 [[User:Zemeckis]] M https://esolangs.org/w/index.php?diff=67252&oldid=67245 * Zemeckis * (+14) /* Projects */ 07:07:48 [[BurgerFlipper]] https://esolangs.org/w/index.php?diff=67253&oldid=50159 * Zemeckis * (+23) 07:09:02 [[BurgerFlipper]] https://esolangs.org/w/index.php?diff=67254&oldid=67253 * Zemeckis * (-23) Undo revision 67253 by [[Special:Contributions/Zemeckis|Zemeckis]] ([[User talk:Zemeckis|talk]]) 07:18:08 [[4DChess]] M https://esolangs.org/w/index.php?diff=67255&oldid=67250 * Zemeckis * (+60) 07:22:45 It seems Schlock got himself a kind of shoulder angel. 07:22:47 EtOH 07:25:27 [[Special:Log/delete]] delete * Oerjan * deleted "[[Zemeckis]]": Author request: content before blanking was: "#REDIRECT [[User: Zemeckis]]" 07:27:08 [[BurgerFlipper]] M https://esolangs.org/w/index.php?diff=67256&oldid=67254 * Zemeckis * (+0) 07:27:09 int-e: just watch out for the shoulder devil 07:27:27 [[BurgerFlipper]] https://esolangs.org/w/index.php?diff=67257&oldid=67256 * Zemeckis * (+0) Undo revision 67256 by [[Special:Contributions/Zemeckis|Zemeckis]] ([[User talk:Zemeckis|talk]]) 07:27:42 [[BurgerFlipper]] https://esolangs.org/w/index.php?diff=67258&oldid=67257 * Zemeckis * (+0) 07:29:15 oerjan: I'm sure she has the capacity to be both./ 07:31:51 given the neighborhood, i was imagining something more tentacly 07:32:51 we'll see 07:33:18 [[4DChess]] M https://esolangs.org/w/index.php?diff=67259&oldid=67255 * Zemeckis * (+6) 07:35:01 -!- mniip has joined. 07:39:58 9 07:43:50 -!- kspalaiologos has joined. 07:44:03 Greetings 07:44:21 `asmbfx out n.A 07:44:21 No output. 07:44:29 `asmbfx out .A 07:44:30 A 07:44:37 Yeah it works 07:46:22 . o O ( Что EtOH? ) 07:46:59 (Not a real question; I duckduckwent.) 07:48:00 ?? 07:51:37 `asmbfx lbl 1/out .A/jmp 1 07:51:52 I'm curious what happens 07:51:58 It seems like it hanged 07:52:07 Yeah 07:52:13 It's dead 07:52:27 `asmbf 07:52:35 ``` ls 07:52:36 asmbf-1.1.1 \ banana.txt \ bfi \ just \ karma \ le \ paste \ program \ spline \ spout \ temp.b \ test.sh \ tmp-interp \ uptime.out 07:52:57 No output. 07:54:07 `` du -s paste 07:54:09 816paste 08:04:42 kspalaiologos: i cleaned up the tmp directory a bit (mostly older stuff) 08:05:19 `stat le 08:05:20 ​ File: le -> /hackenv/le \ Size: 11 Blocks: 0 IO Block: 1024 symbolic link \ Device: 12h/18dInode: 1206924 Links: 1 \ Access: (0777/lrwxrwxrwx) Uid: ( 1000/ UNKNOWN) Gid: ( 1000/ UNKNOWN) \ Access: 2019-11-16 21:29:43.000000000 +0000 \ Modify: 2019-11-16 21:29:43.000000000 +0000 \ Change: 2019-11-16 21:29:43.000000000 +0000 \ Birth: - 08:05:42 (hmm, perhaps the most spammy way to figure out that's a symlink) 08:06:26 tried to stop before your recent additions, though 08:06:55 (although everything in tmp _is_ in principle temporary) 08:07:50 `1 stat le 08:07:51 1/1: File: le -> /hackenv/le \ Size: 11 Blocks: 0 IO Block: 1024 symbolic link \ Device: 12h/18dInode: 1206924 Links: 1 \ Access: (0777/lrwxrwxrwx) Uid: ( 1000/ UNKNOWN) Gid: ( 1000/ UNKNOWN) \ Access: 2019-11-16 21:29:43.000000000 +0000 \ Modify: 2019-11-16 21:29:43.000000000 +0000 \ Change: 2019-11-16 21:29:43.000000000 +0000 \ Birth: - 08:08:10 hm it wasn't cut off, so you _could_ get longer 08:08:35 yeah, it wasn't really meant as a challenge 08:08:42 (come to think of it, i should have used `2) 08:09:06 anyway 08:09:15 -!- oerjan has quit (Quit: Nite). 08:40:21 " hah, I didn't even realise that we created /tmp from inside HackEso, I assumed it was hardcoded" => it is also hardcoded, since you can access tmp through the web interface directly like https://hack.esolangs.org/tmp/banana.txt 08:43:33 ``` asmbf mov r1, 3 08:43:34 ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>[-]+++<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]<<<[-]>[-]>>]<<] 08:43:37 ? 08:43:50 `asmbf mov r1,2 08:43:51 ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>[-]++<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]<<<[-]>[-]>>]<<] 08:44:13 `asmbfx lbl 1/out 48/jmp 1 08:44:14 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 08:44:18 Works 08:47:32 ``` ./labels.pl <<<"@x1y1/%x1y1" 08:47:33 bash: ./labels.pl: No such file or directory 08:47:50 ``` labels.pl <<<"@x1y1/%x1y1 08:47:51 bash: -c: line 0: unexpected EOF while looking for matching `"' \ bash: -c: line 1: syntax error: unexpected end of file 08:48:01 -!- kspalaiologos has quit (Remote host closed the connection). 08:48:09 -!- kspalaiologos has joined. 08:48:16 My client crashed 08:48:42 ``` labels.pl <<<"@x1y1/%x1y1" 08:48:43 lbl 1 08:48:51 It's bricked 08:49:00 For some bizzare reason 08:49:20 ``` labels.pl <<<"@x1y1/%x1y1" > tmp.s 08:49:21 No output. 08:49:29 ``` cat tmp.b 08:49:30 cat: tmp.b: No such file or directory 08:49:41 ``` cat tmp.s 08:49:42 lbl 1 08:49:53 ``` rm tmp.s 08:49:54 No output. 08:52:54 oerjan: re share/quotes , yeah, I even mentioned that a symlink to the writable file is a bit tricky because something could overwrite it with a regular file. I should have realized that that implies the whole symlink thing is a bad idea and shouldn't exist, because you can't safely change commands over without desyncing it. 08:53:08 so we're better with no symlink, and changing over in an incompatible way if we want 08:53:41 (or change over in a more complex way, but still without a symlink) 08:56:10 oerjan: re tmp history, I just suggested that we could solve that for paste only going forward, by making paste log the filename and the IRC_* environment variables somewhere under tmp 08:58:31 that would let people like me search and clean up their own pastes 09:07:36 -!- b_jonas has quit (Quit: leaving). 09:10:25 -!- tromp_ has joined. 09:12:17 -!- tromp has quit (Ping timeout: 246 seconds). 09:50:01 -!- sprocklem has quit (Ping timeout: 265 seconds). 09:55:32 -!- sprocklem has joined. 10:01:08 -!- wib_jonas has joined. 10:05:58 -!- sprocklem has quit (Ping timeout: 265 seconds). 10:21:33 -!- sprocklem has joined. 10:23:40 -!- Sgeo__ has quit (Read error: Connection reset by peer). 10:24:07 -!- Sgeo__ has joined. 10:27:08 -!- ArthurStrong has quit (Quit: leaving). 10:36:19 ``` echo $$ 10:36:21 55 10:36:22 ``` echo $$ 10:36:23 55 10:36:24 ``` echo $$ 10:36:25 55 10:38:13 I recall when people saved a few bytes in some golf programs on anagol by repeatedly submtiting until the pid became just what they want 10:38:27 that doesn't work easily in HackEso because you always get the same pid 10:39:59 apparently the first process of the command always gets the pid 53, but the triple backtick spawns a few more 10:44:47 the anagol server even has a tool for that 11:03:01 Realized I could make /hackenv/tmp more easily un-mess-uppable and stop playing around with .hgignore by just moving it outside the repository completely, and mounting it separately into the umlbox. Not sure if hg would cross a filesystem boundary when looking up the .hg directory. (Git has that special GIT_DISCOVERY_ACROSS_FILESYSTEM option.) 11:04:19 fizzie: you could make it a symlink to a directory outside /hackenv, then hg surely won't follow it 11:07:00 I meant more that it would be desirable for 'hg' commands inside umlbox to ascend from /hackenv/tmp to /hackenv to find /hackenv/.hg, so that the read-only version control commands work without changing the working directory. 11:07:36 (When executing the actions outside the sandbox, there would be no tmp, so nothing to follow.) 11:09:29 ah 11:09:35 yes, that would make sense 11:10:33 ``` cat /hackenv/bin/lastfiles 11:10:34 hg log --removed -l 1 --template "$HACKENV/{join(files,'\n$HACKENV/')}\n" -- "$@" 11:10:39 ``` lastfiles 11:10:40 ​/hackenv/bin/sport 11:10:44 ``` set -e; cd /; lastfiles 11:10:45 abort: no repository found in '/' (.hg not found)! 11:10:57 we'd have to change those scripts too for robustness 11:11:45 `;` 11:11:45 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ;`: not found 11:11:49 @metar lowi 11:11:50 Oops 11:11:51 LOWI 191050Z 27003KT 230V320 9999 SCT012 BKN080 03/01 Q1015 NOSIG 11:11:52 Well, it might work across a mount point. I couldn't (quickly) find anything saying it doesn't. 11:11:57 @help 11:11:57 help . Ask for help for . Try 'list' for all commands 11:12:04 @list 11:12:04 What module? Try @listmodules for some ideas. 11:12:09 ...? 11:12:14 @listmodules 11:12:15 activity base bf check compose dice dict djinn dummy elite eval filter free fresh haddock help hoogle instances irc karma localtime metar more oeis offlineRC pl pointful poll pretty quote search 11:12:15 slap source spell system tell ticker todo topic type undo unlambda unmtl version where 11:12:30 which commands do something like lastfiles, as in, accessing the whole repository rather than just the working dir? 11:12:45 @bf ,[.,]!stuff 11:12:45 Done. 11:12:59 @dice 11:12:59 unexpected end of input: expecting number, "d" or "(" 11:13:03 ? 11:13:07 @karma 11:13:07 You have a karma of 0 11:13:10 @dice d6 11:13:11 wib_jonas: 5 11:13:26 @pl print "perl?"; 11:13:26 (line 1, column 14): 11:13:26 unexpected ';' 11:13:26 expecting variable, "(", operator or end of input 11:13:30 I would imagine everything to do with history would have issues with it, if it's a problem in the first place. 11:13:39 ^8ball 11:13:40 ...out of time! 11:14:01 Even if they pass a path to a specific file, I imagine the working directory needs to be inside the repository? 11:14:05 Fungot is still broken 11:14:11 ``` set -e; cd /; hg log -T "{date|shortdate}\n" hackenv/wisdom/b_jonas 11:14:14 2019-06-09 \ 2016-01-18 \ 2016-01-17 11:14:18 I'll get my bot sorted out today 11:14:32 fizzie: no, that's how git works. hg and svn work the sane way, searching for the repo starting from the file that you target 11:14:41 Hmm, interesting. 11:15:39 fizzie: for git you need a stupid workaround like specifying the git repository in an env-var directly. mind you, it's a good thing that that's _permitted_, since sometimes you want the repo to be in a place other than the working copy without creating even the workspace .git file that gives just the name of the repo 11:25:57 -!- kspalaiologos has quit (Read error: Connection reset by peer). 11:39:04 Hm, I guess one problem with a /hackenv/tmp without .hgignore is that 'hg' commands inside the box would still think they're new files, so something like "hg status" would contain misleading entries. Don't think that would necessarily break any scripts, but it's still unfortunate. 11:39:48 OTOH moving it out of the tree even inside to something like /hacktmp *would* break `lastfiles and similar, as well as the "../bin" paths people seem to use interactively. 12:04:00 fizzie: um what? why would you have it without .hgignore if it's inside /hackenv/tmp ? 12:04:56 'the "../bin" paths people seem to use interactively' => I use /hackenv interactively, but sure 12:10:06 If the real path is outside /hackenv and I just mount it into /hackenv/tmp in umlbox, I don't need a .hgignore for the commits to ignore it, because it won't even be there. 12:11:01 fizzie: but the .hgignore is used inside the sandbox too, and in there, /hackenv/tmp is there, so I think the .hgignore should mention it 12:11:21 I don't see why you wouldn't put it there. even outside the sandbox, where the directory is not present, it's not a problem to have it in .hgignore 12:12:03 it is a feature that the files listed in .hgignore need not exist, because they're often used for things like compiler output files, which you can clean 12:12:36 Well, the whole reason I was contemplating moving it to a separate mount was to avoid having to rely on .hgignore. 12:13:36 fizzie: would hg even notice that it's on a separate mount if it's bind-mounted? it's quite nontrivial to ask from linux which directories are mount points, so programs use the quick heuristics of just checking the st_dev field of stat, which may fail for a bind mount 12:14:07 It wouldn't be actually bind-mounted. 12:14:28 It would be a separate hostfs mount. 12:14:33 there are better ways, apparently the best is to try to rename the directory to inside itself and checking what error it fails with or some such crazy shit that I don't recall 12:14:54 ok 12:15:03 then maybe the st_dev will differ, let me check 12:16:49 Aaanyway, I might not bother doing it, doesn't seem like it's really all that beneficial. I guess it would stop people from removing the directory completely. 12:17:40 ``` stat -c "%d %n" /lib /usr /hackenv /hackenv/tmp /hackenv/wisdom 12:17:41 15 /lib \ 13 /usr \ 18 /hackenv \ 18 /hackenv/tmp \ 18 /hackenv/wisdom 12:17:59 you're right, the st_dev seems to differ 14:10:56 -!- imode has joined. 15:09:17 -!- imode has quit (Ping timeout: 252 seconds). 15:19:57 -!- kspalaiologos has joined. 15:21:06 Just a couple of minutes and my bot will be hopefully finished 15:21:21 I need someone to help me out testing it 15:37:03 kspalaiologos: I think you should know better than to say things like "just a few minutes ... finished" 15:38:07 I don't seem to understand 15:38:25 can you simplify, what do you mean? 15:38:43 kspalaiologos: when you think it's just a few minutes to finish, it always takes longer than taht 15:38:51 so you shouldn't announce that it's just a few minutes 15:39:02 It's pretty much done now 15:39:17 36-19=17 minutes 15:39:55 bfbot echo gCI_oyKp2bE- 15:40:52 it's not there 15:40:55 it's in the other channel 15:40:57 but I'm testing it now 15:41:01 and I have undefined the echo command 16:10:11 -!- moony has quit (Ping timeout: 246 seconds). 16:13:12 -!- moony has joined. 16:22:26 -!- moony has quit (Ping timeout: 240 seconds). 16:24:03 -!- iczero has quit (Ping timeout: 264 seconds). 16:25:48 -!- lldd_ has joined. 16:27:48 -!- moony has joined. 16:27:55 -!- iczero has joined. 16:54:18 -!- wib_jonas has quit (Remote host closed the connection). 17:01:20 -!- bfbot has joined. 17:01:26 so 17:01:28 bfbot is now live 17:01:35 =help 17:01:36 bfbot is a bot executing brainfuck natively. You may add your very own commands to the bot. 17:01:36 Commands: =str =def =undef =list =plist =doc 17:04:11 [[User talk:Palaiologos]] https://esolangs.org/w/index.php?diff=67260&oldid=66649 * Palaiologos * (+199) 17:18:05 =str 0s Hello 17:18:06 ok 17:28:27 =str 0s ,[.,] 17:28:28 ok 17:28:31 =def 0echo 17:28:31 ok, defined 'echo' 17:28:36 =echo greetings 17:28:37 greetings 17:46:37 -!- sprocklem has quit (Ping timeout: 240 seconds). 17:51:38 -!- b_jonas has joined. 17:53:58 -!- lldd_ has quit (Quit: Leaving). 17:54:51 =msg1 17:54:52 ABCDEFGH 17:55:38 note it's temporarily served from my PC 17:55:47 I'll move it to my VPS soon 17:56:20 =echo foo 17:57:24 =echo foo 17:58:13 what is happening 17:58:14 =help 17:58:23 lol? 17:58:45 `olist 1187 17:58:46 olist 1187: shachaf oerjan Sgeo FireFly boily nortti b_jonas 17:58:53 what is olist 17:58:59 `? olist 17:59:00 olist is update notification for the webcomic Order of the Stick. http://www.giantitp.com/comics/ootslatest.html 17:59:04 `? o 17:59:06 o is a popular comedy fantasy webcomic. It's about a group called the Order of the Stick, as they go about their adventures with minimal competence, and eventually stumble into a plan by an undead sorcerer to conquer the world, and they're out to stop him and conquer their personal problems at the same time. Hopefully not in that order. 17:59:07 fine 17:59:32 I sent the bot some commands in private message, since it's not on the -blah channel, and now it doesn't react 17:59:35 =help 17:59:46 hm 17:59:49 something is screwed 18:00:07 -!- bfbot has quit (Ping timeout: 265 seconds). 18:00:40 -!- bfbot has joined. 18:00:42 =help 18:00:43 bfbot is a bot executing brainfuck natively. You may add your very own commands to the bot. 18:00:43 Commands: =str =def =undef =list =plist =doc. More help at https://esolangs.org/wiki/bfbot 18:00:46 can you reproduce it here? 18:01:15 =list 18:01:16 echo msg1 18:01:20 =msg1 18:01:23 =help 18:01:29 nvm figured it out 18:02:18 -!- Panini has joined. 18:02:19 no idea what's up 18:03:32 -!- bfbot has quit (Remote host closed the connection). 18:03:36 very weird 18:03:48 -!- bfbot has joined. 18:03:52 =msg1 18:03:53 ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 18:04:04 the unprintable characters clogged it up 18:04:43 now it kinda works 18:05:47 . 18:05:51 that doesn't look right. why does the loop end early? 18:05:54 =str 1s++++++++++++++++[->++++<]>[+.] 18:05:55 ok 18:05:56 =def 1msg1 18:05:57 ok, defined 'msg1' 18:05:58 =msg1 18:05:59 ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 18:06:12 non-printables are filtered 18:06:14 from the output 18:06:17 because they clog the bot 18:06:42 what do you mean by "non-printables"? 18:06:51 everything that is non-printable 18:07:09 there are only non-printable bytes on irc, they're \0 \r \n 18:07:15 =str 1s++++++++++++++++[->++++<]>[.+] 18:07:15 ok 18:07:17 =def 1msg1 18:07:18 ok, defined 'msg1' 18:07:19 =msg1 18:07:20 @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 18:07:20 Unknown command, try @list 18:07:29 now it's not trying to print any of those 18:07:32 you could have started a chain lol 18:07:37 I filtered it out 18:07:40 this solved the issue 18:07:46 no idea why but it did 18:07:55 I'll look into that later 18:08:07 but how now how to ask the bot to print more characters? 18:08:21 you're doing incorrect brainfuck 18:08:30 the variable is overflowing 18:08:31 so its set to 0 18:08:34 so the loop is ending 18:08:49 yes, it should end, but only after printing more bytes 18:09:06 how many of them do you expect? 18:09:16 those non-printable are filtered so it doesnt show them 18:09:29 I expect 192 bytes 18:09:32 tr -dc '[[:print:]]' 18:09:35 after which it would overflow and the loop stops 18:09:40 is removing other garbage 18:10:02 or 18:10:08 I could replace a nonprintable char with a dot 18:10:11 this seems more like it 18:10:25 =msg1 18:10:26 @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~............................................................................................................................................................................................................................................. 18:10:26 Unknown command, try @list 18:10:29 yeah 18:10:30 here you go 18:13:33 =list 18:13:33 echo msg1 18:13:37 -!- FreeFull has joined. 18:13:40 =str 1s++++++++++++++++[->++++>++++++>++++++++++++++<<<]>+.>+.>+. 18:13:41 ok 18:13:48 =def 1msg1 18:13:49 ok, defined 'msg1' 18:13:50 =msg1 18:13:51 Aa.. 18:14:33 =list ???? 18:14:34 echo msg1 18:14:41 you can use wildcard 18:14:45 =str 1s++++++++++++++++[->++++>++++++>++++++++++>++++++++++<<<<]>+.>+.>>+++.<+. 18:14:45 ok 18:14:48 =def 1msg1 18:14:48 ok, defined 'msg1' 18:14:49 =msg1 18:14:49 Aa.... 18:15:16 is this thing only willing to output ascii characters now? 18:15:21 nothing else\ 18:15:27 I may change it 18:15:31 but now it seems like yes 18:16:40 that's sad 18:16:52 what else would you like to print 18:18:15 ideally any byte other than the three that can't occur in a message \0\r\n 18:18:26 you can restrict it more, but just ascii printable is quite sever 18:18:33 printing bell may annoy other users 18:18:38 plus I think it should join the -blah channel so that I don't spam this channel 18:18:48 only one of them 18:19:05 well you can experiment with it on p, 18:19:08 *pm 18:19:24 yes, but then you ask "can you reproduce it here" and such 18:19:30 well 18:19:34 I'll get that sorted out 18:19:53 -!- bfbot has quit (Remote host closed the connection). 18:19:59 reload 18:20:08 -!- bfbot has joined. 18:20:12 fine 18:21:18 -!- LKoen has joined. 18:26:39 hello 18:26:40 [[Bfbot]] N https://esolangs.org/w/index.php?oldid=67261 * Palaiologos * (+3375) Created page with "'''bfbot''' is an IRC bot written by [[User:Palaiologos]]. bfbot is capable of executing brainfuck (asm2bf, gisa and tiny-c support will be added later on). It's possible to..." 18:26:55 [[Bfbot]] M https://esolangs.org/w/index.php?diff=67262&oldid=67261 * Palaiologos * (-6) Formatting bricked 18:28:11 -!- Panini has quit (Quit: Leaving). 18:28:40 -!- Panini has joined. 18:28:40 -!- Panini has quit (Client Quit). 18:29:05 -!- Panini has joined. 18:29:18 -!- bfbot has quit (Remote host closed the connection). 18:41:59 -!- FreeFull has quit. 18:43:50 [[Bfbot]] M https://esolangs.org/w/index.php?diff=67263&oldid=67262 * Palaiologos * (-18) Code blocks 18:44:43 -!- bfbot has joined. 18:46:50 -!- FreeFull has joined. 18:52:22 -!- Panini has quit (Quit: Leaving). 19:10:24 -!- bfbot has quit (Remote host closed the connection). 19:27:11 -!- bfbot has joined. 19:27:15 It's alive! 19:27:19 it's running from my vps 19:27:23 =help 19:27:28 crap 19:28:31 -!- bfbot has quit (Remote host closed the connection). 19:28:42 -!- bfbot has joined. 19:28:45 =help 19:28:51 ... 19:28:53 -!- bfbot has quit (Remote host closed the connection). 19:29:53 -!- bfbot has joined. 19:29:54 =help 19:29:55 bfbot is a bot executing brainfuck natively. You may add your very own commands to the bot. 19:29:55 Commands: =str =def =undef =list =plist =doc. More help at https://esolangs.org/wiki/bfbot 19:29:58 =list 19:29:58 echo msg1 19:29:59 =doc 19:29:59 Incorrect usage! Refer to =help doc 19:30:01 it 19:30:04 's instant 19:30:08 perfect 19:30:14 -!- bfbot has quit (Remote host closed the connection). 19:30:23 -!- bfbot has joined. 19:30:25 =help 19:30:26 bfbot is a bot executing brainfuck natively. You may add your very own commands to the bot. 19:30:26 Commands: =str =def =undef =list =plist =doc. More help at https://esolangs.org/wiki/bfbot 19:30:28 yeah it's up and running 19:49:17 [[User:Dtuser1337/Sandbox]] https://esolangs.org/w/index.php?diff=67264&oldid=66594 * Dtuser1337 * (-4369) cleaning up because no longer maintained 19:53:31 -!- bfbot has quit (Remote host closed the connection). 19:53:46 -!- bfbot has joined. 19:53:53 -!- bfbot has quit (Remote host closed the connection). 19:54:21 -!- bfbot has joined. 19:59:45 -!- bfbot has quit (Remote host closed the connection). 20:00:14 -!- bfbot has joined. 20:02:05 -!- bfbot has quit (Remote host closed the connection). 20:02:17 -!- bfbot has joined. 20:02:49 a lot of time later 20:02:54 =8ball will you finally work? 20:02:54 It is certain. 20:03:17 -!- bfbot has quit (Remote host closed the connection). 20:03:41 -!- bfbot has joined. 20:04:35 =set 0d 20:04:36 No such command. Try =help. 20:04:44 =set 0d 20:04:44 No such command. Try =help. 20:05:48 =set 0d 20:05:48 No such command. Try =help. 20:05:55 =str 0d 20:05:55 ok 20:07:07 [[Bfbot]] https://esolangs.org/w/index.php?diff=67265&oldid=67263 * Palaiologos * (+106) Repository link 20:29:07 -!- kspalaiologos has quit (Quit: Leaving). 20:30:14 -!- kspalaiologos has joined. 20:35:37 =8ball works 20:35:37 My reply is no. 20:35:41 Pff 21:00:04 -!- sftp has quit (Excess Flood). 21:00:27 -!- sftp has joined. 21:12:40 -!- LKoen has quit (Remote host closed the connection). 21:14:01 -!- LKoen has joined. 21:16:01 kspalaiologos: oh a new bot! 21:16:10 Yup 21:16:16 =help 21:16:16 bfbot is a bot executing brainfuck natively. You may add your very own commands to the bot. 21:16:16 Commands: =str =def =undef =list =plist =doc. More help at https://esolangs.org/wiki/bfbot 21:18:24 It's very generic 21:18:37 But I hacked it together in ~3h 21:18:42 maybe there is a need for yet another bot? and I could write mine? (but I’m lazy and I don’t know what for) 21:18:57 Depends 21:19:08 You may extend existing bots 21:19:11 leave your suggestions :D 21:19:14 And it's simpler task 21:19:26 yeah I don’t want to read code, I want to write code 21:19:40 You dont need to 21:19:46 I know 21:19:52 better code is no code at all 21:20:10 =str 0s ,[.,] 21:20:10 ok 21:20:18 =def simple 21:20:18 Error: Expected a number. 21:20:26 =def 0simple 21:20:27 ok, defined 'simple' 21:20:38 =simple hello arseniiv 21:20:38 hello arseniiv 21:20:40 though I better finish my constructor analysing thing 21:20:45 haha :D 21:20:51 =undef simple 21:20:51 ok 21:21:26 I'll be preparing wiki page for one of my languages 21:21:39 And I'm seeking for someone willing to help a bit out 21:21:48 kspalaiologos: oh, have you tested the bot so it wouldn’t accidentally call a command of itself? 21:21:58 ^thats the fun part 21:22:03 So you can chain commands 21:22:21 And possibly induce a disaster 21:22:34 And I'm seeking for someone willing to help a bit out => with which tasks? 21:22:47 -!- ArthurStrong has joined. 21:22:47 Proofreading 21:22:49 =simple =simple =help 21:22:50 No such command. Try =help. 21:22:57 I undefined simple 21:22:59 Lol 21:23:04 oops 21:23:06 =def 0simple 21:23:06 ok, defined 'simple' 21:23:08 Try again 21:23:13 as I said I don’t read :P 21:23:19 =simple =simple =help 21:23:19 =simple =help 21:23:29 nno 21:23:40 Well so you can write some sketches now 21:23:47 And I'll glue it tomorrow 21:23:56 There is official documentation about the language 21:24:27 We may try chaining it with fungot 21:24:27 kspalaiologos: when i " compile/ load time anyway, eg. 21:24:37 wait wait I’m confused, sketches? 21:24:44 You know 21:24:46 Umm 21:24:48 I better go sleeping as I don’t parse 21:24:52 :D 21:24:57 The 21:25:10 First version bits? 21:25:10 anyway I could proofread maybe! 21:25:17 That's nice 21:25:30 I'll get it written and ping you when it's done tomorrow 21:25:46 in a basic manner, can’t say I’ll find serious errors if they would occur 21:26:14 Nah I mean comprehensibility of article 21:26:21 Proposed wording changes 21:26:24 kspalaiologos: okay. Also you could @tell me too if you wouldn’t be here 21:26:31 Alright 21:26:38 ah hm comprehensibility 21:26:49 int-e fixed it in my article once 21:27:07 though why not anyway 21:27:21 Hm 21:27:47 I swear I won’t make your article less comprehensible though. I think 21:28:30 =str 0s+[--->++<]>++++++++.+++++++.--.+++++.+++++++.[--->+<]>-----.---[->++++<]>-.-----------.-------.+++++++++++..[++>---<]>--.--[->++++<]>-.[->+++<]>.--[--->+<]>-.++[--->++<]>.+++.------------.++++++++.-[++>---<]>+.+++++++.-[--->+<]>+++.++++++++.---[->+++<]>+.+[-->+<]>. 21:28:30 ok 21:28:52 =def 0f 21:28:52 ok, defined 'f' 21:28:54 =f 21:29:01 Hmm? 21:29:06 What just happened 21:30:39 -!- arseniiv has quit (Quit: gone completely :o). 21:31:58 arseniiv: yes, another bot is always welcome if they behave well 21:33:08 b_jonas: would you like to check the article 21:33:21 I did it a few times but I might have lost a few typos 21:33:26 =help 21:33:27 bfbot is a bot executing brainfuck natively. You may add your very own commands to the bot. 21:33:27 Commands: =str =def =undef =list =plist =doc. More help at https://esolangs.org/wiki/bfbot 21:48:19 b_jonas: Maybe this should also be `smlist? 21:50:20 shachaf: dunno. you decide. 21:51:37 -!- ArthurStrong has left. 21:51:45 I decide not. 22:04:02 -!- kspalaiologos has quit (Ping timeout: 240 seconds). 22:06:31 [[Treesolang]] N https://esolangs.org/w/index.php?oldid=67266 * Baidicoot * (+2793) created 22:07:00 [[Treesolang]] https://esolangs.org/w/index.php?diff=67267&oldid=67266 * Baidicoot * (-15) 22:11:05 [[Treesolang]] M https://esolangs.org/w/index.php?diff=67268&oldid=67267 * Baidicoot * (+207) 22:11:55 [[Treesolang]] M https://esolangs.org/w/index.php?diff=67269&oldid=67268 * Baidicoot * (+10) 22:12:08 [[Treesolang]] M https://esolangs.org/w/index.php?diff=67270&oldid=67269 * Baidicoot * (+2) 22:14:16 [[Language list]] M https://esolangs.org/w/index.php?diff=67271&oldid=67192 * Baidicoot * (+17) Added treesolang 22:22:46 [[Treesolang]] M https://esolangs.org/w/index.php?diff=67272&oldid=67270 * Baidicoot * (-42) /* Program Structure */ 22:28:11 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”). 22:43:45 [[Treesolang]] M https://esolangs.org/w/index.php?diff=67273&oldid=67272 * Baidicoot * (+219) 22:51:52 -!- hkgit03 has joined. 22:52:28 -!- laerling has quit (Quit: ZNC 1.7.3 - https://znc.in). 22:54:25 -!- laerling has joined. 22:55:31 [[Treesolang]] M https://esolangs.org/w/index.php?diff=67274&oldid=67273 * Baidicoot * (+106) /* Program Execution */ 22:55:31 -!- laerling has quit (Client Quit). 22:56:09 -!- laerling has joined. 23:04:50 Weird, I switched umlbox interpreter from Python 2 to 3 (since 2's eventually going to EOL), and even though the part where it does subprocess.call of the UML kernel is reached with exactly the same arguments and config file content, and while the kernel runs exactly the same steps, for some reason the stdout of the executed command is not visible. 23:05:30 Maybe some subtle change in subprocess library's fd handling or something. 23:05:43 -!- laerling has quit (Quit: ZNC 1.7.3 - https://znc.in). 23:06:14 or maybe the Briticolan anthem 23:06:34 sorry, wrong channel 23:06:35 The code's pretty low-level for Python, doing os.open / os.dup, because some of the UML kernel arguments are file descriptor numbers like "fd:4". 23:07:04 -!- laerling has joined. 23:08:14 `python3 -copen(2,"w").write("hello") # explicit file descriptor numbers? yes, surely you need low level calls for that 23:08:15 hello 23:08:23 open does fdopen if you pass a number to it 23:08:48 there's even a parameter to tell whether to close the underlying file description when you close the file handle 23:09:46 Well, that's not really relevant for what this does, since it doesn't write into any of the file descriptors it opens. 23:10:04 fizzie: the same works for reading or other file descriptor operations 23:10:15 open just gives you a file handle 23:10:26 I don't doubt there's a way to use open() and get the file descriptor out of it, but it's not what it does. 23:10:34 And I don't see how it would be any better to, really. 23:10:44 sure, maybe it does something for which that's useful 23:11:02 It's more that it doesn't do anything for which that's not useful. 23:12:27 Oh, I see what the issue is. 23:12:36 "Since Python 3.4, file descriptors created by Python are non-inheritable by default." 23:13:41 ah 23:14:34 (It uses the close_fds=False option to subprocess to pass a file descriptor into UML, but it's apparently a close-on-exec by default, and I need to os.set_inheritable(fd, True) it. Or maybe use the new pass_fds attribute to subprocess, which is probably a better idea. 23:17:29 -!- hkgit03 has left ("Leaving"). 23:20:30 Yep, that did the trick. 23:21:07 Should probably check that mudem works as well. 23:23:57 umlbox has this weird thing where if you want networking, you specify particular Unix domain sockets and TCP ports to forward, and it runs a separate "umlbox-mudem" program that multiplexes it all over a single stream, where that single stream is just pipes that are hooked up to /dev/tty2 inside the UML. It runs one copy of mudem outside, and another inside. 23:25:04 fizzie: can't you use the ethernet tunnel devices instead? 23:25:11 the ones built into linux 23:25:24 I could, though the umlbox wrapper script doesn't support those out of the box. 23:25:34 the ones that you use to connect network namespaces on linux 23:25:36 ok 23:26:14 UML itself has a pretty similar networking scheme (for when you're running it without any special privileges on the host), except it uses Slirp. 23:26:33 I think I actually used to use Slirp for real at one point for internetworking. 23:27:50 what is Slirp? 23:27:53 Definitely had a SLIP connection for my first real ISP, and a PPP one for all the dialup ones after that, but there was also Slirp on some system somewhere. 23:28:53 It's a thing where, if you don't have a real Internet connection, but you do have a shell account you can dial into, you can turn that into an internet connection by running a (regular user) program on the machine you have a shell account on, which talks the SLIP protocol (with extensions, I think) to your computer so that you can use regular Internet programs on it. 23:29:37 You basically just set up the dialer settings for your SLIP connection (which normally provide a username/password login) to log in and execute the slirp command. 23:29:58 a kind of tunnel then. ok. 23:31:17 -!- sprocklem has joined. 23:31:55 Fun fact: EUnet (a Finnish ISP) had two kinds of Internet connections, you either paid 22p/min for the full global Internet, but you could also pay 17p/min if you just needed a connection that allowed connecting to Finnish systems. 23:32:13 ... what 23:32:20 Kind of like the local call / long-distance call distinction, except for the Internet. 23:32:55 Don't think that'd be very convenient these days. 23:33:37 I may be misremembering the prices, it's been a while. 23:35:06 sure