←2019-11-17 2019-11-18 2019-11-19→ ↑2019 ↑all
00:19:46 -!- imode has joined.
00:25:06 <esowiki> [[HackEso]] N https://esolangs.org/w/index.php?oldid=67199 * B jonas * (+7073) Created page with "'''HackEso''' is an IRC bot used by the esoteric languages community [[Esolang: Community portal #.23Esoteric| in the #esoteric IRC channel on the freenode network]]. It runs..."
00:25:30 <esowiki> [[HackEgo]] N https://esolangs.org/w/index.php?oldid=67200 * B jonas * (+21) Redirected page to [[HackEso]]
00:25:38 <esowiki> [[HackBot]] N https://esolangs.org/w/index.php?oldid=67201 * B jonas * (+21) Redirected page to [[HackEso]]
00:27:00 <esowiki> [[EgoBot]] https://esolangs.org/w/index.php?diff=67202&oldid=35038 * B jonas * (+166)
00:31:41 <esowiki> [[Fungot]] https://esolangs.org/w/index.php?diff=67203&oldid=66102 * B jonas * (+645)
00:32:52 -!- FreeFull has quit.
00:34:58 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67204&oldid=67199 * B jonas * (+18)
00:36:39 <zzo38> Now the mass in xyzabcde2 game is measured in grams, and the player characte is 100 pounds and can carry 100 pounds of stuff while walking or 20 if flying.
00:46:57 <zzo38> Some television shows have good captions and some the caption writers are not doing a good job, sometimes writing words which I am sure is not the word they meant, or sometimes they just wrote "unintelligible" (but that is why I turned on the caption!!!)
00:49:26 <esowiki> [[Lambdabot]] N https://esolangs.org/w/index.php?oldid=67205 * B jonas * (+3335) Created page with "'''HackEso''' is an IRC bot used [[Esolang: Community portal #.23Esoteric| in the #esoteric IRC channel and several other channels on the freenode network]]. Its most notable..."
00:51:52 <kingoffrance> if they are good sometimes they have cut dialog, or tell you name of a song, etc. i am pro-caption
00:52:41 <zzo38> Yes, sometimes there is the name of a song in the captions; I like that, since then I will know what that song is called.
00:53:51 <zzo38> I always watch television with the captions turned on when I have a choice. Also, I always make the captions translucent if I have that choice.
00:58:08 <esowiki> [[Myndzi]] N https://esolangs.org/w/index.php?oldid=67206 * B jonas * (+1063) Created page with "'''Myndzi''' is an utility IRC bot whose main feature is drawing the lower two lines of ascii stick figures if someone else draws the upper line. Myndzi is used by the esoter..."
00:58:18 <esowiki> [[Myndzi]] https://esolangs.org/w/index.php?diff=67207&oldid=67206 * B jonas * (+4)
01:02:47 <b_jonas> j-bot: source
01:02:47 <j-bot> b_jonas: |value error: source
01:03:12 <b_jonas> j-bot, source:
01:03:13 <j-bot> b_jonas, jevalbot source is https://github.com/FireyFly/jevalbot (originally http://www.math.bme.hu/~ambrus/pu/jevalbot.tgz)
01:03:51 <esowiki> [[Esolang:Community portal]] https://esolangs.org/w/index.php?diff=67208&oldid=66636 * B jonas * (+139) /* #Esoteric */
01:06:40 <b_jonas> j-bot source:
01:06:41 <j-bot> b_jonas, jevalbot source is https://github.com/FireyFly/jevalbot (originally http://www.math.bme.hu/~ambrus/pu/jevalbot.tgz)
01:06:55 <b_jonas> j-bot echo: foo
01:06:56 <j-bot> b_jonas, pong: foo
01:14:40 <esowiki> [[J-bot]] N https://esolangs.org/w/index.php?oldid=67209 * B jonas * (+1477) Created page with "'''j-bot''' is an IRC bot that evaluates the APL-like [https://www.jsoftware.com/ J programming language]. j-bot can be found in the #jsoftware and Esolang: Community porta..."
01:15:05 <esowiki> [[Jevalbot]] N https://esolangs.org/w/index.php?oldid=67210 * B jonas * (+19) Redirected page to [[J-bot]]
01:16:06 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67211&oldid=67204 * B jonas * (+18)
01:17:34 <b_jonas> kspalaiologos: I started a manual, but there's still much more to write there. hopefully I'll continue writing it later, but anyone should feel free to help.
01:19:13 <b_jonas> I also created stub entries for some of the other bots.
01:44:09 <esowiki> [[GolfScript]] https://esolangs.org/w/index.php?diff=67212&oldid=56192 * Hppavilion1 * (+149) /* List of built-ins */ Put in rowspans so that the table looks a little nicer.
01:53:54 <esowiki> [[BIX Queue Subset]] https://esolangs.org/w/index.php?diff=67213&oldid=67191 * Ais523 * (-290) simplify the Core rules; due to symmetry, half the languages were trivially equivalent to the other half, these changes remove one of these halves without losing any actual content
01:54:37 -!- ais523 has joined.
02:03:09 -!- oerjan has joined.
02:07:59 <esowiki> [[BIX Queue Subset]] https://esolangs.org/w/index.php?diff=67214&oldid=67213 * Ais523 * (+836) /* a vd vt */ this is TC
02:09:05 <esowiki> [[BIX Queue Subset]] https://esolangs.org/w/index.php?diff=67215&oldid=67214 * Ais523 * (-31) /* Computational class */ core is also TC
02:10:41 <ais523> b_jonas: https://esolangs.org/wiki/Lambdabot appears to be a mix of a description of Lambdabot and of HackEso
02:11:06 <ais523> I'm assuming something went wrong while writing it (maybe a copy-paste mistake)?
02:11:25 <esowiki> [[HackEso]] M https://esolangs.org/w/index.php?diff=67216&oldid=67211 * Fizzie * (+848) Minor copyedits.
02:16:40 <b_jonas> ais523: which part is a description of HackEso? it mentions `dontaskdonttelllist , but that's because it's the list of users who don't want to get messages through lambdabot's message service
02:16:49 <ais523> b_jonas: intro paragraph
02:17:01 <b_jonas> oh, the title
02:17:02 <ais523> in at least two places, unless fizzie actually maintains lambdabot
02:17:12 <esowiki> [[Lambdabot]] https://esolangs.org/w/index.php?diff=67217&oldid=67205 * B jonas * (+2)
02:17:28 <b_jonas> I think fizzie hosts lambdabot
02:17:38 <b_jonas> he might not be maintaining its code, I don't know
02:17:41 <b_jonas> but he's hosting the instance
02:17:44 <b_jonas> isn't he?
02:18:08 <ais523> I thought int-e ran lambdabot, I'm not sure though
02:18:38 <b_jonas> `? kspalaiologos
02:18:39 <HackEso> kspalaiologos is addicted to brainfuck, but otherwise completely unknown.
02:19:24 <b_jonas> `learn kspalaiologos is addicted to brainfuck. His current work is disassembling brainfuck code for a casino that lost the source code.
02:19:27 <HackEso> Learned 'kspalaiologo': kspalaiologos is addicted to brainfuck. His current work is disassembling brainfuck code for a casino that lost the source code.
02:19:57 <b_jonas> `? Hooloovo0
02:19:58 <HackEso> Hooloovo0? ¯\(°​_o)/¯
02:20:01 <b_jonas> `? kmc
02:20:03 <b_jonas> `? Lykaina
02:20:09 <HackEso> kmc did not run the International Devious Code Contest of 2013. She is her own grandpa.
02:20:11 <HackEso> Lykaina? ¯\(°​_o)/¯
02:20:50 <b_jonas> `learn Hooloovo0 is a calculator brain surgeon.
02:20:52 <HackEso> Learned 'hooloovo0': Hooloovo0 is a calculator brain surgeon.
02:20:58 <b_jonas> `? kspalaiologos
02:20:59 <HackEso> kspalaiologos is addicted to brainfuck, but otherwise completely unknown.
02:21:03 <b_jonas> `? Hooloovo0
02:21:04 <HackEso> Hooloovo0 is a calculator brain surgeon.
02:21:07 <b_jonas> hmm
02:21:15 <b_jonas> argh
02:21:28 <b_jonas> ``` mv -v /hackeso/kspalaiologo{,s}
02:21:28 <HackEso> mv: cannot stat '/hackeso/kspalaiologo': No such file or directory
02:21:34 <b_jonas> ``` mv -v /hackeso/wisdom/kspalaiologo{,s}
02:21:35 <HackEso> mv: cannot stat '/hackeso/wisdom/kspalaiologo': No such file or directory
02:22:23 <b_jonas> ``` mv -v /hackenv/wisdom/kspalaiologo{,s}
02:22:24 <HackEso> renamed '/hackenv/wisdom/kspalaiologo' -> '/hackenv/wisdom/kspalaiologos'
02:22:29 <b_jonas> `? kspalaiologos
02:22:30 <HackEso> kspalaiologos is addicted to brainfuck. His current work is disassembling brainfuck code for a casino that lost the source code.
02:23:07 <b_jonas> it would be nice to have some better wisdoms for users, but I'm not good at making them
02:25:40 <esowiki> [[Lambdabot]] https://esolangs.org/w/index.php?diff=67218&oldid=67217 * B jonas * (-9)
02:25:51 <b_jonas> ok, let's make it not misleading then
02:26:37 <oerjan> i see the pwd move is working well /s
02:29:09 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67219&oldid=67216 * B jonas * (+269) /* Core IRC usage */ environment
02:31:43 <oerjan> `cat bin/whoops
02:31:44 <HackEso> cat: bin/whoops: No such file or directory
02:31:56 <oerjan> `cbt whoops
02:31:56 <HackEso> OLD="$HACKENV/wisdom/$1"; [ -z "$1" ] && OLD="$(lastfiles)"; NEW="${OLD}s"; if [ -f "$NEW" ]; then echo "«${NEW}» already exists"; exit 1; fi; mv "$OLD" "$NEW" && echo "«${OLD}» -> «${NEW}»"
02:32:25 <oerjan> `lastfiles
02:32:26 <HackEso> wisdom/kspalaiologo \ wisdom/kspalaiologos
02:33:51 <oerjan> `slbd whoops//s,[(],HACKENV$(,
02:33:53 <HackEso> whoops//OLD="$HACKENV/wisdom/$1"; [ -z "$1" ] && OLD="$HACKENV$(lastfiles)"; NEW="${OLD}s"; if [ -f "$NEW" ]; then echo "«${NEW}» already exists"; exit 1; fi; mv "$OLD" "$NEW" && echo "«${OLD}» -> «${NEW}»"
02:34:03 <oerjan> oops
02:34:08 <oerjan> `revert
02:34:10 <HackEso> Done.
02:34:11 <b_jonas> oerjan: sedlast may also have to be fixed for the same reason
02:34:17 <oerjan> `slbd whoops//s,[(],HACKENV/$(,
02:34:19 <HackEso> whoops//OLD="$HACKENV/wisdom/$1"; [ -z "$1" ] && OLD="$HACKENV/$(lastfiles)"; NEW="${OLD}s"; if [ -f "$NEW" ]; then echo "«${NEW}» already exists"; exit 1; fi; mv "$OLD" "$NEW" && echo "«${OLD}» -> «${NEW}»"
02:34:42 <b_jonas> and possibly before and now
02:34:56 <oerjan> hum
02:35:02 <oerjan> `revert
02:35:04 <HackEso> Done.
02:35:09 <b_jonas> ``` head "${HACKENV}/bin/"{sedlast,before,now}
02:35:10 <HackEso> ​==> /hackenv/bin/sedlast <== \ files="$(lastfiles)"; sed -i "$1" "$files" \ \ ==> /hackenv/bin/before <== \ lastfiles "$@" | while read f; do echo -n "$f//"; hg cat -r "$(hg log --removed --template '{rev}\n' "$f" | tail -n+2 | head -n1)" "$f"; done \ \ ==> /hackenv/bin/now <== \ lastfiles "$@" | while read f; do echo -n "$f//"; cat "$f"; done
02:37:17 <oerjan> `cbt lastfiles
02:37:17 <HackEso> hg log --removed -l 1 --template "{join(files,'\n')}\n" -- "$@"
02:38:06 <oerjan> `` lastfiles | cat -v
02:38:09 <HackEso> bin/whoops
02:38:47 <oerjan> `` lastfiles | cat -E
02:38:48 <HackEso> bin/whoops$
02:38:52 <oerjan> ic
02:38:59 <oerjan> oh wait
02:39:17 <oerjan> i think i hate this move already
02:40:11 <oerjan> `before
02:40:17 <HackEso> bin/whoops//bin/whoops: no such file in rev 627b52c6b2cb
02:40:56 <oerjan> `edit ../bin/lastfiles
02:40:56 <HackEso> https://hack.esolangs.org/edit/bin/lastfiles
02:42:32 <oerjan> `fetch ../bin/lastfiles https://hack.esolangs.org/get/bin/lastfiles
02:42:33 <HackEso> 2019-11-18 02:42:32 URL:https://hack.esolangs.org/get/bin/lastfiles [82/82] -> "/hackenv/bin/lastfiles" [1]
02:42:39 <oerjan> `lastfiles
02:42:40 <HackEso> ​/hackenv/bin/lastfiles
02:42:44 <oerjan> `before
02:42:46 <HackEso> ​/hackenv/bin/lastfiles//hg log --removed -l 1 --template "{join(files,'\n')}\n" -- "$@"
02:43:32 <oerjan> `after
02:43:32 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: after: not found
02:43:40 <oerjan> `now
02:43:41 <HackEso> ​/hackenv/bin/lastfiles//hg log --removed -l 1 --template "$HACKENV/{join(files,'\n$HACKENV/')}\n" -- "$@"
02:44:23 <oerjan> `cbt sedlast
02:44:24 <HackEso> files="$(lastfiles)"; sed -i "$1" "$files"
02:44:41 <oerjan> should work
02:45:07 <oerjan> `whoops test
02:45:09 <HackEso> ​«/hackenv/wisdom/test» -> «/hackenv/wisdom/tests»
02:45:13 <oerjan> `? test
02:45:14 <HackEso> test? ¯\(°​_o)/¯
02:45:21 <oerjan> `? tests
02:45:22 <HackEso> test failed. HackEgo-JUnit is not available.
02:45:29 <oerjan> curious
02:45:32 <oerjan> hum
02:45:44 <oerjan> oh
02:45:48 <oerjan> `revert
02:45:49 <HackEso> Done.
02:46:10 <oerjan> `lastfiles
02:46:12 <HackEso> ​/hackenv/wisdom/test \ /hackenv/wisdom/tests
02:46:38 <oerjan> `sedlast s,Ego,Eso,
02:46:40 <HackEso> ​/bin/sed: can't read /hackenv/wisdom/test \ /hackenv/wisdom/tests: No such file or directory
02:46:48 <oerjan> wat
02:46:50 <oerjan> oh
02:47:06 * oerjan was hoping it would sed both
02:47:24 <oerjan> `cat bin/sedlast
02:47:24 <HackEso> cat: bin/sedlast: No such file or directory
02:47:30 <oerjan> `cat ../bin/sedlast
02:47:31 <HackEso> files="$(lastfiles)"; sed -i "$1" "$files"
02:47:39 <oerjan> HATE I SAID
02:48:02 -!- user24 has joined.
02:49:02 <oerjan> oh well that never worked with multiple files anyway
02:50:12 <oerjan> fizzie: what's with all the "draft" notes suddenly showing in the repo browser
02:50:24 <oerjan> not that they seem to do anything
02:50:47 <shachaf> oerjan: cbt hth
02:50:53 <oerjan> shachaf: HATE
02:51:45 * oerjan gets a truly ridiculous idea
02:51:54 <oerjan> unfortunately it won't work for plain `cat
02:52:01 <kingoffrance> my guess is "$file" remove quotes, but then you have to worry about spaces, difference between $* and $@ i believe
02:52:12 <kingoffrance> its basically shell quoting issue i believe
02:52:34 <kingoffrance> (i mean, the $* $@ difference is similar issue)
02:52:49 <kingoffrance> (one does things as one giant arg, the other separate args)
02:53:18 <kingoffrance> "$files" i mean of course
02:54:12 <oerjan> kingoffrance: it's not entirely clear what sedlast _should_ do with more than one file anyway. it's a very corner case.
02:54:53 <user24> Does anyone like recursion? :) http://34.77.241.183/
02:58:38 <imode> user24: what is this?
02:58:55 <user24> imode: confusing, apparently :)
02:59:00 <user24> hint: wasd is not all that is possible
03:00:12 <imode> Q is "nuke" apparently.
03:00:25 <user24> in some way, yes, but not exactly :)
03:00:50 <user24> haha, I'm so happy to have a first user, thank you :)
03:01:17 -!- ais523 has quit (Quit: quit).
03:01:35 <user24> your orange will stay there for quite some time
03:04:18 <imode> nice, I've made my mark.
03:04:39 <user24> :)
03:05:49 <user24> maybe I should a key hint (wasd qe) below the canvas, but i like to keep it mysterious
03:06:31 <imode> inspecting the source kinda destroys the mystery.
03:07:33 <user24> gotta obfuscate it
03:11:39 <user24> ok, I'm gonna restart it in a few minutes, got a domain
03:14:24 <oerjan> ^wiki Test
03:14:25 <fungot> http://esolangs.org/wiki/Test
03:14:30 <oerjan> huh
03:14:35 <oerjan> ^wc test ho
03:14:35 <fungot> 027.
03:14:43 <oerjan> argh tabs
03:15:14 <zzo38> I wrote a PostScript code to calculate the left and right edges on each scanline of a monotone polygon. This way the data can be used by an external program to typeset text into the specified area (it is not useful to typeset text into a non-monotone area).
03:15:47 <oerjan> ^show wiki
03:15:47 <fungot> +[-5>+3<]>+.+12..-4.[-2>+<]>+2.-11..[-3>+<]>.[-3>+<]>-4.-4.-3.-11.+13.-7.+12.+[+2>-3<]>.-3[-5>+<]>.+3.-11.-2[->+3<]>.+2[-3>+2<]>+.+[->+3<]>+.+2.-2.-4[->+3<]>.,[.,]
03:16:05 <oerjan> why replace it with a _longer_ program?
03:16:08 -!- hppavilion[1] has quit (Ping timeout: 276 seconds).
03:16:34 <zzo38> However, how can you then vertically center the text into a non-rectangular area?
03:19:51 <Lykaina> did someone ping me?
03:20:33 <oerjan> ^bf ++++++++++++++++[>+++++>++++++++>++++++++>+++++++++<<<<<-]>>>>-.>-----..<<<++++++++.<---.------------..>>>----.<++++.>>>------.----.<-----.>+++.<+++++++.<.<-.>>>>+.++++.<.<<<+.>+++++.>+++.+++.---.<<<.,[.,]
03:20:33 <fungot>
03:20:44 <oerjan> oh duh
03:21:35 <oerjan> ^bf +++++++++++++++[>++++>+++++++>+++++++>++++++++<<<<-]>>>-.>----..<<+++++++.<--.-----------..>>---.<+++.>>-----.---.<----.>++.<++++++.<.<-.>>>+.+++.<.<<+.>++++.>++.++.--.<<.,[.,]
03:21:35 <fungot> http://esolangs.org/wiki/
03:22:42 <oerjan> ^bf +++++++++++++++[>++++>+++++++>+++++++>++++++++<<<<-]>>>-.>----..<<+++++++.+++.<--.-----------..>>---.<+++.>>-----.---.<----.>++.<++++++.<.<-.>>>+.+++.<.<<+.>++++.>++.++.--.<<.,[.,]
03:22:43 <fungot> https://evolangv.org/ziki/
03:23:38 <oerjan> ^bf +++++++++++++++[>++++>+++++++>+++++++>++++++++<<<<-]>>>-.>----..<<+++++++.+++.<--.-----------..>>---.<.>>-----.---.<----.>++.<++++++.<.<-.>>>+.+++.<.<<+.>++++.>++.++.--.<<.,[.,]
03:23:38 <fungot> https://esolangs.org/wiki/
03:23:56 <oerjan> ^def wiki bf +++++++++++++++[>++++>+++++++>+++++++>++++++++<<<<-]>>>-.>----..<<+++++++.+++.<--.-----------..>>---.<.>>-----.---.<----.>++.<++++++.<.<-.>>>+.+++.<.<<+.>++++.>++.++.--.<<.,[.,]
03:23:56 <fungot> Defined.
03:24:00 <oerjan> ^wiki Test
03:24:00 <fungot> https://esolangs.org/wiki/Test
03:24:40 <oerjan> fizzie: fixed the http
03:25:45 <imode> what language is the `wiki` command written in?
03:27:01 <zzo38> Does it have the latest version of SQLite, GCC, LLVM, Ghostscript, Node.js, and C-INTERCAL?
03:33:04 <oerjan> imode: brainfuck
03:33:54 <imode> ^show wiki
03:33:54 <fungot> +15[>+4>+7>+7>+8<4-]>3-.>-4..<2+7.+3.<-2.-11..>2-3.<.>2-5.-3.<-4.>+2.<+6.<.<-.>3+.+3.<.<2+.>+4.>+2.+2.-2.<2.,[.,]
03:33:59 <oerjan> most of the program itself, other than the couple places i changed, was produced with the bf_txtgen text converter.
03:34:31 <oerjan> ^show happens to show to internal RLE encoding fungot uses for compression.
03:34:36 <oerjan> *the
03:34:42 <imode> ah!
03:34:46 <imode> that explains it.
03:34:56 <Lykaina> b_jonas: did you want my attention?
03:42:26 <oerjan> ^bf ,+++++++++++++++++++++++++++++++++.,+++++++++++++++++++++++++++++++++.
03:42:26 <fungot> !!
03:44:09 <user24> imode: https://qewasd.com/ :)
03:47:41 <imode> q and e swap to different rooms, huh.
03:54:50 <oerjan> <b_jonas> a magic 8-ball command might be useful <-- ... you said that right after fungot confirming it had one.
03:54:50 <fungot> oerjan: i don't know much more
03:55:49 <imode> 'hello world' in readable mode bytecode: ,$48:.,$65:.,$6c:.,$6f:.,$2c:.,$20:.,$77:.,$6f:.,$72:.,$6c:.,$64:.,$21:.,:$[':$]
03:56:31 <oerjan> i suppose it's not quite a full implementation, but fungot cannot do true randomness in ^def'ed commands anyway.
03:56:31 <fungot> oerjan: s/ first/ top/ computers/ callcc.html that one too.
03:56:49 <imode> is it possible to add new interpreters to fungot?
03:56:49 <fungot> imode: so. what causes an ioexception in a bufferedreader?
03:56:54 <user24> imode: indeed!
04:01:26 <oerjan> imode: not on the same level as ^ul or ^bf, unless fizzie writes one in befunge
04:01:49 <imode> heh.
04:02:30 <oerjan> but you could make a ^bf-based command that was an interpreter for something. i recall ^ul started that way, although it was terribly slow/timing out
04:03:16 <oerjan> ^show ul
04:03:16 <fungot> (^ul -- evaluates Underload)S
04:03:27 <imode> hm. I have an interpreter for Mode in C... wonder if I could transpile that to bf and define it.
04:03:31 <oerjan> oh, it was updated like that.
04:03:52 <imode> that'd be an absurdly large file, though.
04:03:55 <oerjan> imode: ^bf has a number-of-cycles limit. it's unlikely you'd get anything that complicated to run.
04:04:10 <imode> yeah..
04:04:22 <oerjan> (which was why the original ^ul tended to time out on anythng non-trivial.)
04:05:06 <oerjan> HackEso is the bot intended for that kind of stuff, anyway.
04:05:29 <imode> ah.
04:05:31 <oerjan> even though it's rarely used for that purpose, it was the original one.
04:13:00 <oerjan> ^8ball so they broke this?
04:13:01 <fungot> ...out of time!
04:13:04 <oerjan> it seems.
04:13:23 <oerjan> fizzie: at this rate fungot commands need revision control too
04:13:23 <fungot> oerjan: and there's the fact that it's in the ides now even.
04:13:45 <oerjan> i suppose you may not have ^saved yet.
04:21:01 <zzo38> Make the questions what your character might do in the situation (according to the player). I think the answer will likely to be "it depends on details which have not been given", because there is often the circumstances which can affect things variously.
04:21:37 <zzo38> Therefore, further elaboration may be needed, or the conditions
04:22:07 <imode> webassembly is just fancy brainfuck.
04:22:15 <imode> I wish I was kidding.
04:22:34 <oerjan> `uptime -p
04:22:35 <HackEso> up 3802 day, 12 hours, 52 minutes
04:22:40 <oerjan> sheesh
04:22:53 <oerjan> `url ../bin/uptime
04:22:53 <HackEso> https://hack.esolangs.org/repo/file/tip/bin/uptime
04:22:57 <imode> 10 years?!
04:23:27 <imode> jesus!
04:23:56 <imode> oh.
04:23:59 <oerjan> imode: uptime is fake, b_jonas made it today
04:24:01 <imode> boottime is hardcoded.
04:24:03 <imode> ah.
04:24:08 <imode> why 10 years?
04:24:17 <zzo38> Is there a macro assembler for WebAssembly?
04:24:24 <oerjan> and as usual for hungarians, he messed up the plurals after numbers :P
04:24:50 <zzo38> Also, is there a C library to execute WebAssembly programs without requiring a JavaScript interpreter or web browser?
04:25:01 <imode> zzo38: iirc yes there is a standalone WASM interpreter.
04:25:02 <oerjan> and the real uptime splits into weeks as well, looking at another long-time server
04:25:07 <oerjan> (don't know about years)
04:25:13 <imode> zzo38: and I believe there is a macro assembler for it...
04:25:17 <shachaf> Is WebAssembly actually good for non-web things?
04:26:03 <zzo38> shachaf: It seems that it should be, as good as other VMs would be
04:26:11 <imode> who knows. honestly I'm intending on building Mode as a competitor or companion to it.
04:26:26 <shachaf> zzo38: Well, a lot of web things are scow.
04:26:30 <shachaf> And a lot of VMs are scow.
04:26:47 <shachaf> I don't think WebAssembly gets great performance compared to a native compiler.
04:27:29 <zzo38> I think that for text adventure games, Z-machine and Glulx and TAVERN are good.
04:27:31 <imode> that right there is why I have a mode-to-C transpiler.
04:28:17 <zzo38> (I have partially made a text adventure game in Glulx. But, it is difficult to think of what rooms to put and such stuff like that. Programming it is the easier part.)
04:28:26 <shachaf> zzo38: I want something for real software, though.
04:28:58 <shachaf> I think text-based adventure games use so little computation resources that it doesn't matter.
04:29:02 <imode> WASM's concurrency primitives aren't strong enough IMO. isolation of subprocesses is something you should get for free.
04:32:57 <user24> imode: Have a look at this and click on "Hierarchical Accounts Example"
04:32:59 <imode> I wanna be able to manage process trees and treat processes as first-class values that can be persisted.
04:33:04 <user24> YASSSS
04:33:21 <imode> which is why Mode now has concurrency primitives that do just that.
04:33:25 <user24> And if you are interested in this, here some keywords: GNOSIS, KeyKOS, Joule, E, Stackless Python (https://stackless.readthedocs.io/en/latest/library/stackless/pickling.html)
04:33:32 <user24> also my projects: https://esolangs.org/wiki/RarVM
04:33:37 <user24> https://esolangs.org/wiki/KeyVM
04:33:44 <zzo38> Some text adventure games do use more resources than others, I think. (Such as, those written using Inform7)
04:34:09 <user24> Here's Joule: http://www.erights.org/history/joule/index.html
04:34:24 <zzo38> (I don't really like such read-only programm language as Inform7 so much, so I use assembly language, is better.)
04:35:39 <imode> user24: you might be interested in my Mode spec. it's a specification for a language that's brainfuck-like and involves only a few core commands, with a set of derived commands providing additional functionality.
04:36:22 <imode> there's also a binary format that's based on typed segments, but it's not ready yet.
04:36:51 <imode> concurrency got added recently but hasn't been implemented (mainly because I just started a new position at Amazon).
04:37:18 <user24> imode: Definitely! Do you have a wiki page?
04:38:09 <imode> not yet. it's all on my harddrive but I plan on posting it to the wiki once I 1. implement a first pass of concurrency features in the Python interpreter or 2. get fed up, submit the spec + existing python interpreter and C transpiler.
04:38:55 <imode> let's see if I have any useful examples kicking around..
04:39:14 <user24> Aye! I'm still a bit scared by concurrency, and I like determinism, so my VMs are all single-threaded
04:40:29 <imode> all of my concurrency operations are actually pretty simple. anything between { and } is treated as a subprocess. when encountering a {, you create a new process, push the handle to that process to the parent process, jump to the matching }, and then you can send data to and get data from the child process by send and receive operators.
04:40:56 <imode> sends and receives are blocking, so the VM just checks to see if the target process is in a blocking receive state on send.
04:41:01 <imode> otherwise it just goes dormant.
04:41:24 <esowiki> [[Special:Log/newusers]] create * Darthalex314 * New user account
04:42:09 <user24> yeah, that sounds cool
04:42:50 <imode> https://repl.it/repls/DefinitiveColossalEngineer
04:43:14 <imode> program.h is the output of the C transpiler, which is just a glorified preprocessor.
04:43:15 <user24> with my VMs, I want replicable computation, so if i run a subprocess for n steps, copy it's image, and then run these two images for the same number of steps, they arrive at the exactly same state
04:43:43 <user24> this is also possible with concurrency
04:43:49 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=67220&oldid=67107 * Darthalex314 * (+227)
04:43:49 <user24> but very difficult to implement
04:44:13 <user24> so I'm specifying a VM and build a language on top of it
04:44:15 <imode> why difficult? do these subprocesses have I/O access?
04:44:25 <user24> this way i can have single-instruction resource accounting and control granularity
04:44:36 <user24> not directly, they can only access their own memory
04:44:50 <imode> aye.
04:45:07 <esowiki> [[User:Darthalex314]] N https://esolangs.org/w/index.php?oldid=67221 * Darthalex314 * (+29) Created page with "Hi. Learning about Brainf***."
04:45:20 <esowiki> [[User talk:Darthalex314]] N https://esolangs.org/w/index.php?oldid=67222 * Darthalex314 * (+5) Created page with "What."
04:45:23 <user24> with your type of concurrency, deterministic process suspension would only be possible at the {} boundaries
04:45:46 <user24> (without a deterministic scheduler at least)
04:45:58 <imode> not really, actually. within Mode, the world can be stopped and persisted at any time.
04:46:09 <imode> in fact that's the basis of a database engine that I'm working on within it.
04:46:29 <imode> your data values are just long-running processes that can be wrapped up and thrown to disk or over a network with a really slim execution state.
04:46:31 <esowiki> [[Brainfuck implementations]] https://esolangs.org/w/index.php?diff=67223&oldid=65848 * Darthalex314 * (+77) /* Normal implementations */
04:46:52 <imode> literally just an instruction pointer and a queue.
04:47:59 <user24> ah, so there is no parallelism, just some form of message passing concurrency like in Javascript?
04:48:17 <zzo38> Should you add a category for IRC bots into the wiki?
04:48:21 <user24> my VM process formats trying to be slim was inspired by this Smalltalk project: http://netjam.org/spoon/viz/movie/
04:48:42 <user24> also by Stackless Python as linked above
04:49:18 <user24> with Stackless, I wrote a network node once that executed a process for a few thousand steps and then sent it to another random node it was connected to :)
04:49:39 <imode> there is parallelism. just not explicitly defined. I don't care how you accomplish the concurrency.
04:49:42 <user24> if stuff like this is built into the language, things like these become very easy to implement
04:50:13 <imode> for instance, in the Golang interpreter for this, I'm spawning goroutines-per-process and using channels to communicate with the larger "core".
04:51:56 <user24> Are you familiar with capabilities/keys?
04:52:04 <imode> if you choose to be single-threaded, you'd just do a round-robin scheduler, where you run through all of the spawned processes and step them one instruction at a time.
04:52:07 <imode> yeah.
04:52:13 <user24> amazing
04:52:51 <user24> a few months ago it felt like nobody knew, or was even interested in all of this
04:53:14 <user24> Yeah
04:54:04 <user24> Somehow my brain prevents me from considering making my systems (optionally) multi-threaded, because instruction level execution control and process persistence allow all of this to be built "on top"
04:54:19 <imode> tbh it's not even needed.
04:54:24 <user24> so the scheduler can be implemented in the system itself
04:54:55 <imode> if you can present a concurrent environment you shouldn't care how that concurrency is handled, just that "these two processes are doing something and can only know about what the other is doing via synchronous message passing and protocols".
04:55:27 <user24> yeah
04:56:01 <user24> But do you think it's advantageous to have a concurrent system at the lowest level everything else is built on top on?
04:56:16 <user24> this is the argument the E language creators made
04:56:19 <imode> well, let me show you mode's working spec.
04:56:25 <user24> but I'm still not convinced
04:56:32 <user24> ok :)
04:56:38 <imode> https://hatebin.com/mlaoebywpa
04:56:43 <imode> ignore syntax highlighting.
04:57:05 <imode> 'Core' is the minimum theorized that you need to be turing complete.
04:57:21 <imode> everything on top of that is convenience.
04:58:55 <user24> reminds me of Zot a bit :) http://www.nyu.edu/projects/barker/Iota/zot.html
04:59:10 <imode> that was definitely an inspiration. instruction minimization is nice.
04:59:13 <imode> but doing useful work is also nice.
04:59:28 <imode> all of these single-character codes have forth-like mnemonics as well.
04:59:47 <oerjan> myndzi: congratulations, you've now got a wiki page https://esolangs.org/wiki/Myndzi
04:59:57 <imode> I'm not unconvinced that basing everything off of something like the pi calculus wouldn't be a good way to go.
05:00:11 <imode> but there's so much implicit state that it's hard to wrap your head around. bound names, etc.
05:00:27 <imode> I can at least reason about Mode from an imperative standpoint and work up to concurrent processes.
05:00:46 <imode> forming a loop in the pi calculus is a painful endeavor unless you just plan on translating lambda calculus to it.
05:01:17 <user24> there's also Urbits' Nock if you like trees https://urbit.org/docs/tutorials/nock/definition/
05:01:34 <imode> so, w.r.t concurrency as a basis... not unconvinced, but don't buy it unless there's a "concurrent automaton".
05:01:45 <imode> that looks nice and feels nice to work with. which is kind of what I'm trying to make..
05:02:15 <imode> yeah I looked at Nock... don't like the author or the writings. way too obscure.
05:02:41 <user24> aye, agreed
05:02:43 <imode> if I can't explain to you what I'm working on in simple enough terms I don't think it's worth working on.
05:02:44 <user24> i kind of just want to have an "execute this subprocess/instruction block for n instructions with these memory constraints" instruction
05:03:58 <imode> I could do that by saying the `{` command consumes two values, the step limit and queue size.
05:04:04 <user24> yeah :)
05:04:36 <imode> "run this block for 64 cycles with 8 queue elements" could be ,$40,$8;{...}
05:04:40 <user24> :D
05:05:15 <oerjan> `celebrate
05:05:15 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: celebrate: not found
05:05:31 <user24> Have you heard of the Agoric papers: https://e-drexler.com/d/09/00/AgoricsPapers/agoricpapers.html ?
05:05:40 <imode> have not, will look now.
05:05:54 <user24> also, this: https://esolangs.org/wiki/File:Screenshot_from_2019-04-09_04-20-58.png :)
05:06:49 <imode> you'd like my python interpreter. planning on having it estimate max/average memory usage along with runtime.
05:07:11 <user24> yass :D
05:07:35 <user24> i'll dm you my email and stuff, please notify me, show me everything, i love this stuff
05:08:00 <user24> someone created this which is also along the lines we are talking about: https://www.youtube.com/watch?v=7vn6aGgLKfQ
05:08:26 <user24> it just emits a geiger counter click when the attached program allocates memory
05:08:33 <oerjan> ^celebrate
05:08:33 <fungot> \o| c.c \o/ ಠ_ಠ \m/ \m/ \o_ c.c _o/ \m/ \m/ ಠ_ಠ \o/ c.c |o/
05:08:46 <imode> hah!
05:08:57 <imode> that's actually really interesting. a bit like an HDD light for memory.
05:10:37 <esowiki> [[Myndzi]] https://esolangs.org/w/index.php?diff=67224&oldid=67207 * Oerjan * (+13) Fix some conceptual errors
05:33:18 <zzo38> Are you able to access my computer using the domain name "zzo38computer.org" now?
05:34:03 <imode> am I supposed to see "please use the gopher service"?
05:34:16 <zzo38> Also, how to purge the DNS cache? (I suspect there may be a problem with it)
05:34:35 <zzo38> imode: If you try to access the root page of the HTTP service, then that message will be displayed, so it works.
05:34:41 <imode> kool.
05:36:45 -!- kspalaiologos has joined.
05:38:20 <kspalaiologos> I'll try setting up my own bot
05:44:20 <kspalaiologos> I'll need to pay for my vps soon tho
05:55:46 <zzo38> (HTTP is not the only service I run. I also have Gopher, NNTP, SMTP, and QOTD.)
06:08:44 -!- user24 has quit (Quit: Leaving).
06:18:48 <zzo38> Do you know how to do vertical centering text in a non-rectangular area? Perhaps I will just not allow vertical stretching/shrinking in non-rectangular areas, or else have some rsetrictions on it (such as, if vertical glue is present in a non-rectangular area, any paragraphs must come before the vertical glue).
06:42:23 -!- tromp_ has quit (Read error: Connection reset by peer).
06:44:05 -!- tromp has joined.
06:45:03 -!- kspalaiologos has quit (Ping timeout: 265 seconds).
06:52:41 <oerjan> martellus likes to live dangerously
06:58:22 <zzo38> gsave [ matrix setmatrix clip pathbbox cvi exch pop exch cvi 3 -1 roll pop dup 1 3 index { clipsave 0 exch 65535 1 rectclip clippath pathbbox pop exch pop cvi exch cvi cliprestore } for ] grestore % That is the code to make a monotone path into the list of the boundary per scanline.
06:59:53 -!- kritixilithos has joined.
07:00:04 -!- tromp has quit (Read error: Connection timed out).
07:02:53 -!- user24 has joined.
07:04:06 -!- user24 has quit (Client Quit).
07:04:58 -!- tromp has joined.
07:12:19 <zzo38> The typesetting algorithm can then split it into text lines based on the current font, and then subtract the largest left boundary in each group from the smallest right boundary in each group in order to find the width of that line. I think this will not work in the presence of vertical glue above the paragraph (unless the area is rectangular), though.
07:14:51 <zzo38> This is to make an alternative program to Magic Set Editor for typesetting cards. Although the code is PostScript (actually, my program uses a combination of PostScript and SQL), it uses TeX fonts rather than PostScript fonts, and the TeX method of typesetting (although a simple mode might also be available). Do any card games use vertically centered multi-line text in a non-rectangular area?
07:15:31 <zzo38> Also, do any use a non-monotone area for text?
07:20:58 -!- oerjan has quit (Quit: Nite).
07:34:56 -!- tromp has quit (Ping timeout: 240 seconds).
07:36:21 -!- tromp_ has joined.
07:41:58 -!- tromp has joined.
07:44:35 -!- tromp_ has quit (Ping timeout: 276 seconds).
07:49:08 -!- Frater_EST has joined.
07:58:02 -!- imode has quit (Ping timeout: 265 seconds).
08:03:34 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67225&oldid=67219 * B jonas * (+56) pedantic about newlines
08:24:33 <b_jonas> `? rules of wisdom
08:24:34 <HackEso> unless essential for the entry‘s humor, \ they should: be understandable without the lookup key, be single spaced and end in a newline with no space before that, and use proper capitalization and punctuation
08:24:45 <b_jonas> do you suppose this change is ok?
08:27:06 <zzo38> It violates its own rule, but maybe it is supposed to be, so then that is OK. Also, I think there is a improper open mark in "entry's"
08:29:51 <b_jonas> ``` hg cat -r 11268 "/hackenv/wisdom/rules of wisdom"
08:29:52 <HackEso> unless essential for the entry‘s humor, they should: be understandable without the lookup key, be single spaced and end in a newline with no space before that, and use proper capitalization and punctuation
08:30:02 <b_jonas> I'm mostly asking about just the latest chanfe
08:30:50 <b_jonas> althoguh I can also be blamed for the part about trailing whitespace
08:32:41 <zzo38> O, you added a break (in the wrong place)
08:33:37 <esowiki> [[Cyclic tag system]] https://esolangs.org/w/index.php?diff=67226&oldid=51402 * B jonas * (+43) /* Related articles */ link BIX Queue Subset
08:34:44 <b_jonas> zzo38: almost
08:35:19 <b_jonas> I actually added just a space backslash space, because that doesn't break the rules, and breaking the rules with an actual newline is not essential for the humor of the entry
08:35:40 <zzo38> OK, but it is still in the wrong place
08:36:06 <b_jonas> yes, although I don't think there's a right place, except at the end
08:36:37 <b_jonas> I wonder if I should make the entry mention that the entries really shouldn't contiain \r or \0
08:38:27 <zzo38> I don't know; maybe
08:49:12 <b_jonas> nah, probably no, that's not a rule that I've seen anyone break
08:51:11 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67227&oldid=67225 * B jonas * (+183) /* Core IRC usage */ invisible prefix to output
08:52:22 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67228&oldid=67227 * B jonas * (+88) /* Core IRC usage */ headings
08:54:17 <zzo38> OK
08:56:11 <esowiki> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=67229&oldid=67188 * PaniniTheDeveloper * (+32)
09:02:57 -!- b_jonas has quit (Remote host closed the connection).
09:15:24 -!- Frater_EST has quit (Remote host closed the connection).
09:37:39 -!- kspalaiologos has joined.
09:38:16 <kspalaiologos> `asmbf @hello/out 48/ret/@main/psh %hello1/jmp %hello/@hello1
09:38:17 <HackEso> ​+>+[>>>+<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>++++++++++++++++++++++++++++++++++++++++++++++++.[-]<<<<<<<<<[-]>[-]>>>>>>>>>>>>>>>[-]>[>>]<<->[<<<[<<]>+>[>>]>-]<<<[<<]>[<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>-]<<<<<<<[-]<<<<<<]>++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>+++++++++++++++++++
09:38:21 <kspalaiologos> Dang
09:38:38 <kspalaiologos> ``` asmbf @hello/out 48/ret/@main/psh %hello1/jmp %hello/@hello1 > temp.b
09:38:39 <HackEso> No output.
09:38:49 <kspalaiologos> ``` cat temp.b
09:38:50 <HackEso> ​+>+[>>>+<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>++++++++++++++++++++++++++++++++++++++++++++++++.[-]<<<<<<<<<[-]>[-]>>>>>>>>>>>>>>>[-]>[>>]<<->[<<<[<<]>+>[>>]>-]<<<[<<]>[<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>-]<<<<<<<[-]<<<<<<]>++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>+++++++++++++++++++
09:39:00 <kspalaiologos> ``` egobfi8
09:39:01 <HackEso> bash: egobfi8: command not found
09:39:11 <kspalaiologos> ``` ls
09:39:12 <HackEso> OUT \ 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.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ temp.b \ test.b \ test.sh \ tmp-interp \ tmp.txt \ uptime.out \ v1.1.1.tar.gz
09:39:28 <kspalaiologos> ``` ls asmbf-1.1.1
09:39:29 <HackEso> AUTHORS \ INSTALL \ LICENSE \ Makefile \ NEWS \ README \ TODO \ VERSIONING \ bconv.c \ bfasm.asm \ bfasm.b \ bfasm.c \ bfasm.rs \ bfi.c \ bfintd.c \ bfmake \ bfpp \ bin \ doc \ examples \ labels.pl \ strip.pl \ test \ test.pl
09:39:52 <kspalaiologos> ``` gcc asmbf-1.1.1/bfi.c -o bfi
09:39:54 <HackEso> No output.
09:40:18 <kspalaiologos> ``` ./bfi temp.b
09:40:19 <HackEso> 0Access Violation, ip=304
09:40:23 <kspalaiologos> Dang
09:44:41 <kspalaiologos> ``` asmbf psh 2/mov r2, r1/mod r2,r1/ne_ r2,0/pop r1/out r1
09:44:41 <HackEso> ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>++[<<<<<+>>>>>>>>>>>>+<<<<<<<-]<<<<<[>>>>>+<<<<<-]>>>>>>>>>>>>>[>>]+<<[<<]>[>[>>]<+<[<<]>-]<<<<<<<[-]<<<[-]<[>+<<+>-]<[>+<-]>>[->>>>>>>+<<<<<<<]<[->>>>>>>>>+<<<<<<<<<]>>>>>>>>[>->+<[>]>[<+>-]<<[<]>-]>>[-<<<<<<<<<+>>>>>>>>>]<[-]>[-]<<<<<<<<<[<<<+>>>-]>>>[<<<<<<->+>>>>>-]<<<<<[>>>>>+<<<<<-]<[>>>+<<<[-]]>>>>>>[-]<<<<[-]>>>>>>>>>>>[-]>[>>]<<->[<<<[<<]>+>[>>]>-]<<<[<<]>[<<<<<<<<<<<+>>>>>>>>>>>-]<<<<<<<<
09:59:39 -!- arseniiv has joined.
10:02:04 <fizzie> @tell oerjan 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 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).
10:02:04 <lambdabot> Consider it noted.
10:03:29 <fizzie> @tell b_jonas int-e does run lambdabot, as far as I know. It's definitely not me.
10:03:29 <lambdabot> Consider it noted.
10:07:25 <int-e> @tell b_jonas I do run and host lambdabot.
10:07:25 <lambdabot> Consider it noted.
10:07:41 -!- wib_jonas has joined.
10:07:59 <int-e> @tell wib_jonas b_jonas has messages ;)
10:07:59 <lambdabot> Consider it noted.
10:08:57 <esowiki> [[Lambdabot]] https://esolangs.org/w/index.php?diff=67230&oldid=67218 * B jonas * (-7) int-e hosts
10:09:07 <wib_jonas> `? kspalaiologos
10:09:08 <HackEso> kspalaiologos is addicted to brainfuck. His current work is disassembling brainfuck code for a casino that lost the source code.
10:09:25 <wib_jonas> kspalaiologos: ^ please complain if you don't like that
10:09:29 <wib_jonas> or change it
10:09:50 <int-e> `complain Nobody likes this.
10:09:51 <HackEso> Complaint filed. Thank you.
10:10:16 <wib_jonas> `? revert
10:10:19 <HackEso> ​`revert <rev>" can be used to revert to a revision. See <https://hack.esolangs.org/repo/>. It is a builtin command so cannot be called from other commands.
10:12:57 <wib_jonas> `url
10:12:58 <HackEso> https://hack.esolangs.org/repo/
10:13:04 <wib_jonas> `paste
10:13:34 <HackEso> https://hack.esolangs.org/tmp/paste/paste.12292
10:14:31 <fizzie> I wonder if I should make the stdin just /dev/null instead of the "blocking but never reads anything" weirdness it now is.
10:15:38 <fizzie> Candide (the former ##c bot) used to write a random 'fortune' to stdin.
10:16:03 <wib_jonas> fizzie: in https://hack.esolangs.org/repo/file/tip with a web browser, why is "etc/ luarocks" in one line?
10:16:55 <fizzie> It's a hgweb feature, it collapses directories that only have one file.
10:16:57 <int-e> wib_jonas: because etc/ is otherwise empty
10:17:33 <fizzie> Same with "brachylog/ brachylog" in https://hack.esolangs.org/repo/file/tip/interps
10:17:43 <wib_jonas> I see
10:17:49 <fizzie> (You can click either the directory or the file.)
10:18:30 <fizzie> Arguably, it should be "etc/ luarocks/" because the 'file' is actually a subdirectory.
10:18:46 <Lykaina> hi
10:18:54 <fizzie> Or even "etc/ luarocks/ config.lua". But anyway.
10:19:06 <int-e> fizzie: it doesn't do it for files though
10:19:22 <int-e> (as can be observed in https://hack.esolangs.org/repo/file/tip/wisdom)
10:19:29 <wib_jonas> fizzie: you may have to edit these commands: before now sedlast
10:19:37 <wib_jonas> because of the wd change
10:20:08 <wib_jonas> oh, the le directory has three files
10:20:09 <int-e> fizzie: but I agree that a trailing / would be desirable
10:20:15 <wib_jonas> `? le/rm
10:20:17 <wib_jonas> `? le//rm
10:20:18 <HackEso> le/rm? ¯\(°​_o)/¯
10:20:21 <HackEso> le//rm? ¯\(°​_o)/¯
10:21:17 <wib_jonas> ah, le/rm deletes wisdoms
10:21:21 <int-e> le/rm seems a bit silly
10:21:30 <int-e> so perfectly normal for HackEso.
10:21:54 <wib_jonas> ``` ls -dl /hackenv/le/rm # it's actually a symlink
10:21:55 <HackEso> lrwxrwxrwx 1 1000 1000 13 Jul 8 2017 /hackenv/le/rm -> ../bin/forget
10:22:34 <wib_jonas> by the way, did you know that you can't (easily) clone the repository to windows, the clone command actually dies because of a case-insensitive filename clash
10:23:01 <kspalaiologos> wib_jonas, it's perfect lol
10:23:09 <wib_jonas> I've seen source tarballs that you can't quite decompress that way, but the decompressors that I've tried only give a warning and don't unpack that one file. hg seems to actually die.
10:23:18 <wib_jonas> as in, abort the rest of the checkout.
10:23:36 <wib_jonas> there are almost certainly workarounds, but it's strange behavior from hg
10:29:38 <kspalaiologos> ``` asmbf-1.1.1/bfi temp.b
10:29:38 <HackEso> bash: asmbf-1.1.1/bfi: No such file or directory
10:29:41 <kspalaiologos> ?
10:29:45 <kspalaiologos> ``` ls
10:29:46 <HackEso> OUT \ 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.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ temp.b \ test.b \ test.sh \ tmp-interp \ tmp.txt \ uptime.out \ v1.1.1.tar.gz
10:30:02 <kspalaiologos> ``` ls asmbf-1.1.1
10:30:07 <HackEso> AUTHORS \ INSTALL \ LICENSE \ Makefile \ NEWS \ README \ TODO \ VERSIONING \ bconv.c \ bfasm.asm \ bfasm.b \ bfasm.c \ bfasm.rs \ bfi.c \ bfintd.c \ bfmake \ bfpp \ bin \ doc \ examples \ labels.pl \ strip.pl \ test \ test.pl
10:30:38 <kspalaiologos> ``` ./bfi test.b
10:30:39 <HackEso> 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 A0 A1
10:30:43 <kspalaiologos> Whoa what
10:30:59 <kspalaiologos> ``` ./bfi temp.b
10:30:59 <HackEso> 0Access Violation, ip=304
10:32:11 <kspalaiologos> ``` asmbf <<<"psh r3/
10:32:11 <kspalaiologos> mov r2, r1/
10:32:11 <kspalaiologos> mod r2, 64/
10:32:11 <kspalaiologos> ne_ r2, 0/
10:32:11 <kspalaiologos> pop r3" > temp.b
10:32:13 <HackEso> bash: -c: line 0: unexpected EOF while looking for matching `"' \ bash: -c: line 1: syntax error: unexpected end of file
10:32:24 <kspalaiologos> Noo
10:32:26 <kspalaiologos> Sorry
10:35:26 <wib_jonas> fizzie: stupid question. together with the wd change, why not break things further by moving the quotes database from /hackenv/quotes to /hackenv/share/quotes ?
10:36:50 -!- kspalaiologos has quit (Ping timeout: 240 seconds).
10:36:58 -!- kspalaiologos has joined.
10:38:01 <kspalaiologos> ``` asmbf <<<"psh 48/mod r1, 64/ne_ r1, 0/pop r2/out r2" > test.b
10:38:05 <HackEso> No output.
10:38:14 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67231&oldid=67228 * B jonas * (+1804) web interface
10:38:20 <kspalaiologos> ``` ./bfi test.b
10:38:20 <HackEso> 0
10:38:24 <kspalaiologos> Dang
10:38:26 <kspalaiologos> It works
10:38:31 <kspalaiologos> Issue's invalid
10:38:40 <fizzie> wib_jonas: I don't have a particularly strong opinion on that.
10:39:30 <wib_jonas> I guess wisdom is directly in /hackenv too, and we use it often as well
10:40:19 <wib_jonas> I'll add symlinks under share though
10:40:46 <wib_jonas> ``` ln -sv ../wisdom ../quotes /hackenv/share/
10:40:48 <HackEso> ​'/hackenv/share/wisdom' -> '../wisdom' \ '/hackenv/share/quotes' -> '../quotes'
10:41:16 <wib_jonas> ``` grep -RF wob_jonas /hackenv/share/{wisdom,quotes}
10:41:17 <HackEso> ​/hackenv/share/wisdom/wob_jonas:wob_jonas is b_jonas in disguise, so that he can do magic tricks. \ /hackenv/share/quotes:<wob_jonas> and at least don't put Hofstadter next to the time cube guy without at least a semicolon, that's insulting Hofstadter \ /hackenv/share/quotes:<wob_jonas> that real-world complexity doesn't fit my simple model of English <wob_jonas> must be that darned Higgs-boson or some other symmetry-breaking mechani
10:41:36 <wib_jonas> that will help forwards compatibility in case we decided to make that move in the future
10:41:43 <fizzie> wib_jonas: Looks like oerjan changed lastfiles to output absolute paths, which I think has made before / now / sedlast work.
10:41:53 <wib_jonas> ok
10:41:53 <fizzie> `lastfiles
10:41:54 <HackEso> ​/hackenv/share/quotes \ /hackenv/share/wisdom
10:41:55 <kspalaiologos> ^8ball stuff
10:41:56 <fungot> ...out of time!
10:42:44 <wib_jonas> of course we have to be careful with the quotes link, it's too easy to accidentally overwrite it with a regular file when you edit it
10:47:04 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=67232&oldid=67105 * Keymaker * (+107) Acyclic Tag...
10:51:01 <zzo38> Do you have some ideas relating to typesetting text for card games such as Magic: the Gathering? I have some ideas about it, but there may be others, including some things which is not applicable to Magic: the Gathering but might be applicable in other card games.
10:51:47 <zzo38> And, I don't know what to do about holographic cards. Maybe a later version of my software (other than the first version) might support separations, which might be usable for such thing.
11:16:33 <wib_jonas> TODO: rewrite bin/rnooodl to pass its input through as soon as possible, rather than waiting for an eol or eof
11:17:59 <wib_jonas> fizzie: does HackEso tell the command somehow when the time limit for that command expires? this could be useful if a command wants to do cleanup shortly before that, to print or save partial results.
11:24:20 <esowiki> [[HackEso]] https://esolangs.org/w/index.php?diff=67233&oldid=67231 * B jonas * (+2) typoes
11:24:26 <esowiki> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=67234&oldid=67229 * Quadril-Is * (+387)
11:28:12 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=67235&oldid=67232 * Quadril-Is * (+30) /* Unsquare */
11:29:58 <esowiki> [[Lambdabot]] https://esolangs.org/w/index.php?diff=67236&oldid=67230 * B jonas * (+0) typo
11:30:23 <esowiki> [[Fungot]] https://esolangs.org/w/index.php?diff=67237&oldid=67203 * B jonas * (+0) typo
12:03:46 <esowiki> [[BIX Queue Subset]] https://esolangs.org/w/index.php?diff=67238&oldid=67215 * Ais523 * (-805) rv 2 revisions: the TC proof is wrong, because avd doesn't invert if the queue starts with a 0, thus throwing off the parity argument
12:15:18 <fizzie> wib_jonas: No, it's a straight SIGKILL at the timeout time. But I could make it, say, SIGTERM at timeout, SIGKILL five seconds later.
12:17:31 <int-e> wib_jonas: I guess lambadbot is lambdabot's evil twin.
12:19:33 <wib_jonas> fizzie: if you want a signal, consider SIGALARM, but I was thinking more of an env-var that gives the time when the program will be terminated relative to some linux timer
12:35:20 <fizzie> I guess. It's just that TERM + KILL is the standard systemd process termination method. Could have both, of course.
12:36:01 <fizzie> ("Processes will first be terminated via SIGTERM. If then, after a delay (configured via the TimeoutStopSec= option), processes still remain, the termination request is repeated with the SIGKILL signal.")
12:38:01 <wib_jonas> yeah, TERM may be better
12:38:44 <wib_jonas> note that you can get linux to generate SIGALARM with setitimer, then the processes can read the timer easily with getitimer
12:43:07 <fizzie> Termination is the standard action for SIGALRM as well, so that would probably work in practice.
12:45:45 <wib_jonas> oh yeah, you're right, it's spelled SIGALRM, perhaps because it's an old unix thing and they were stingy with identifier length
12:48:37 <fizzie> Right now the way it works is, after running the command, if a timeout has been set, umlbox init will start a second program that does `sleep(timeout); exit(0);`, and if that process terminates first, the actual command process is sent SIGKILL.
12:49:16 <wib_jonas> mind you, I realize that this isn't actually necessary for the rnooodl reimplementation at all
12:49:41 <fizzie> (I think that means the timeout might fire early if the sleep(3) call gets interrupted, but I guess in practice it isn't.)
12:49:58 <wib_jonas> but other programs could care
12:50:49 <fizzie> I could enable the GitHub issue tracker for the 'hackbot' repo to keep track of ideas like this, otherwise I'll never remember them.
12:52:13 <wib_jonas> fizzie: or we could collect ideas on https://esolangs.org/wiki/Talk:HackEso or somewhere in /hackenv
12:52:49 <fizzie> The HackEso talk page is maybe most logical, yes.
12:53:23 <fizzie> Incidentally, I was wondering whether that stuff should be outside the main namespace. But I guess it doesn't matter so much.
12:53:46 <fizzie> "Articles should be on the subject of esoteric programming languages, or about subjects relevant to these, for example computation theory." With a wide enough of definition of "relevant", it's fine.
12:54:12 <wib_jonas> other random idea to myself: modify the paste command so that when it creates a new paste file, log the filename, the $IRC_NICK and $IRC_TARGET to somewhere under tmp, to make it easier to clean up large pastes that I created and that are no longer needed
12:54:45 <wib_jonas> as for namespacing or categories, I don't know, feel free to figure out whatever about them
13:09:02 <wib_jonas> `apt-get moo
13:09:03 <HackEso> ​ (__) \ (oo) \ /------\/ \ / | || \ * /\---/\ \ ~~ ~~ \ ..."Have you mooed today?"... \ W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (2: No such file or directory)
13:09:23 <wib_jonas> ^ why does it have to read /etc after it's already completed the command?
13:12:59 -!- kspalaiologos2 has joined.
13:14:42 <int-e> wib_jonas: https://hack.esolangs.org/tmp/paste/paste.22976 suggests that the actual read attempt comes before the cow
13:14:47 -!- kspalaiologos has quit (Ping timeout: 276 seconds).
13:17:10 <wib_jonas> oh right. stdout and stderr
13:17:16 <wib_jonas> ``` apt-get moo >/dev/null
13:17:17 <HackEso> W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (2: No such file or directory)
13:18:33 <int-e> `` strace -eopenat,write,stat apt-get moo 2>&1 | paste
13:18:34 <HackEso> https://hack.esolangs.org/tmp/paste/paste.30284
13:19:00 <int-e> Sorry, this one is better... the code uses `stat` before opening files.
13:19:21 -!- kspalaiologos2 has quit (Read error: Connection reset by peer).
13:25:35 <int-e> So, apparently, apt-get collects errors in some buffer and prints them later.
13:26:06 <int-e> (or at least warnings)
13:26:15 -!- kspalaiologos has joined.
14:21:40 -!- kritixilithos has quit (Ping timeout: 260 seconds).
14:26:02 -!- kritixilithos has joined.
14:54:16 -!- arseniiv_ has joined.
14:57:29 -!- arseniiv has quit (Ping timeout: 276 seconds).
15:50:29 <kspalaiologos> I finished the memory manager for asm2bf I suppose
15:50:29 <kspalaiologos> https://pastebin.com/9VEvgUbn
15:50:35 <kspalaiologos> It's quite simple one
15:50:39 <kspalaiologos> but it's doing the job
15:50:54 <kspalaiologos> I'll try porting it now to my malbolge assembler to get it all covered
15:51:05 <kspalaiologos> I was expecting a lot more
15:51:16 <kspalaiologos> but I guess this is everything I can do in this amount of space
15:56:06 <kspalaiologos> the brainfuck code is very short
15:56:07 <kspalaiologos> https://pastebin.com/jVjBMAdZ
15:56:20 <kspalaiologos> RLE doesn't help much because the code isn't about constants
16:03:57 <kspalaiologos> I wonder will it run on bfasm in hackeso
16:04:09 <kspalaiologos> it's v1.1.1 iirc
16:04:27 <kspalaiologos> ``` asmbf <<<"seg 0\org 0\lbl 1\psh r2\clr r2\lbl 2\rcl r1,r2\add r2,16\jnz r1,2\sub r2,16\sto r2,1\mov r1,r2\pop r2\ret\lbl 3\sto r1,0\ret\lbl 4\psh r2\clr r2\lbl 5\rcl r1,r2\add r2,16\jnz r1,5\mov r1,r2\add r1,0\pop r2\asl r1\ret">temp.b
16:04:28 <HackEso> No output.
16:04:36 <kspalaiologos> ``` cat temp.b
16:04:37 <HackEso> ​+>+[#
16:04:39 <kspalaiologos> doesn't :/
16:04:43 <kspalaiologos> ``` rm -f temp.b
16:04:44 <HackEso> No output.
16:04:49 <kspalaiologos> ``` ls
16:04:49 <HackEso> OUT \ 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.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ test.b \ test.sh \ tmp-interp \ tmp.txt \ uptime.out \ v1.1.1.tar.gz
16:04:57 <kspalaiologos> ``` rm bfi
16:04:57 <HackEso> No output.
16:05:06 <kspalaiologos> ``` rm test.b
16:05:08 <HackEso> No output.
16:05:16 <kspalaiologos> ``` rm v1.1.1.tar.gz
16:05:17 <HackEso> No output.
16:05:23 <kspalaiologos> it's my stuff I'm cleaning it up as it's no longer needed
16:05:56 <esowiki> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=67239&oldid=67234 * PaniniTheDeveloper * (+314)
16:13:02 -!- atslash has quit (Quit: Leaving).
16:17:59 -!- imode has joined.
16:20:03 <kspalaiologos> `asmbf mov r1,0/sto r1,3/db_ 1/rcl r1,0/out r1
16:20:08 <HackEso> ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>[-]>>>>+++<<<<[<+>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<-]<[>+<-]>>>>>[<<<<<+>>>>>>>>>>>>>>+<<<<<<<<<-]<<<<<[>>>>>+<<<<<-]>>>>>>>>>>>>>>>[[>>]+[<<]>>-]+[>>]<[-]<[<<]>[>[>>]<+<[<<]>-]>[>>]<<[-<<]><<<<<<<<<[-]>>>>>>>>>>>+<<<<<<<<<<<<<<<[-]>>>>[<<<<<+>>>>>>>>>>+>>>>>+<<<<<<<<<<-]<<<<<[>>>>>+<<<<<-]>>>>>>>>>>>>>>>[[>>]+[<<]>>-]+[>>]<[<[<<]>+<<<<<<<<<<<<<+>>>>>>>>>>>>>>[>>]<-]<[<<]>[>[>>]<+<[<<]>-]>[>>]<<[-<<]><<<<<
16:20:21 <kspalaiologos> ``` asmbf <<<"mov r1,0/sto r1,3/db_ 1/rcl r1,0/out r1"
16:20:22 <HackEso> ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>[-]>>>>+++<<<<[<+>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<-]<[>+<-]>>>>>[<<<<<+>>>>>>>>>>>>>>+<<<<<<<<<-]<<<<<[>>>>>+<<<<<-]>>>>>>>>>>>>>>>[[>>]+[<<]>>-]+[>>]<[-]<[<<]>[>[>>]<+<[<<]>-]>[>>]<<[-<<]><<<<<<<<<[-]>>>>>>>>>>>+<<<<<<<<<<<<<<<[-]>>>>[<<<<<+>>>>>>>>>>+>>>>>+<<<<<<<<<<-]<<<<<[>>>>>+<<<<<-]>>>>>>>>>>>>>>>[[>>]+[<<]>>-]+[>>]<[<[<<]>+<<<<<<<<<<<<<+>>>>>>>>>>>>>>[>>]<-]<[<<]>[>[>>]<+<[<<]>-]>[>>]<<[-<<]><<<<<
16:20:26 <kspalaiologos> ``` asmbf <<<"mov r1,0/sto r1,3/db_ 1/rcl r1,0/out r1" > temp.b
16:20:27 <HackEso> No output.
16:20:41 <kspalaiologos> ``` gcc asmbf-1.1.1/bfi.c -o bfi
16:20:43 <HackEso> No output.
16:20:48 <kspalaiologos> ``` ./bfi temp.b
16:20:48 <HackEso>
16:52:29 <esowiki> [[Post-preprocessor]] M https://esolangs.org/w/index.php?diff=67240&oldid=57213 * PaniniTheDeveloper * (+0)
16:57:48 -!- wib_jonas has quit (Remote host closed the connection).
17:16:35 -!- imode has quit (Ping timeout: 250 seconds).
17:48:23 -!- bfbot has joined.
17:48:50 <kspalaiologos> a ha!
17:49:00 <kspalaiologos> probably I should move to esoteric-blah with my bot
17:49:05 -!- bfbot has quit (Remote host closed the connection).
17:49:33 <kspalaiologos> it takes forever for it to join tho
17:50:54 -!- kritixilithos has quit (Quit: quit).
17:56:35 -!- LKoen has joined.
18:27:49 -!- b_jonas has joined.
18:51:10 -!- FreeFull has joined.
18:54:27 <b_jonas> `whatis !
18:54:28 <HackEso> ​!(1hackeso) - run snippet in esoteric languages emulating the ! command of EsoBot
18:54:37 <b_jonas> there was a typo in that line, which is why it wasn't found previously. I fixed it now
20:12:24 <esowiki> [[Acyclic Tag]] https://esolangs.org/w/index.php?diff=67241&oldid=66807 * Keymaker * (+6678) Added a quine.
20:18:27 -!- ais523 has joined.
20:18:56 <ais523> Keymaker: neat, it's obvious how it works once you see it but I'm not sure I'd have thought of that design
20:19:08 -!- dnm has joined.
20:21:10 <ais523> hmm, now I'm disappointed that there doesn't seem to be a simple TC construction for a Core BIX Queue subset
20:21:26 <ais523> I still think many of them are likely to be TC but I worry that the construction will have to be quite complex or inefficient
20:27:25 <dnm> Every now and then I randomly come across something -- usually not specifically about esolangs -- that re-triggers the itch in my brain to sit down and actually hack one together, which although I've thought about from time to time, I have yet to do. This weekend it was stumbling across this: http://www.bhk.com/make/closures.html
20:28:39 <dnm> (The source code [and accompanying tools/assets] to that article are even better...)
20:35:25 -!- ais523 has quit (Remote host closed the connection).
20:36:37 -!- ais523 has joined.
20:41:10 -!- kspalaiologos has quit (Quit: Leaving).
20:57:23 -!- kspalaiologos has joined.
20:59:55 <kspalaiologos> Hello, can someone who knows how to do it add a command using one ` that will run asmbf and then it's output?
21:00:07 <kspalaiologos> I needed it today to quickly check some snippets
21:00:33 <kspalaiologos> But I had to build my interpreter beforehand
21:00:42 <kspalaiologos> And deal with my crappy phone keyboard
21:03:56 <ais523> how does the command look with two `?
21:04:06 <ais523> or do you not have that working yet either?
21:05:42 -!- hppavilion[1] has joined.
21:37:28 <arseniiv_> . o O ( are “golden ratio in art and nature” issues sufficiently esoteric to discuss? )
21:37:39 -!- arseniiv_ has changed nick to arseniiv.
21:38:26 <arseniiv> (as a quick summary, I think these things are hugely overrated and at least half of them are selection bias and wishful thinking)
21:40:53 <kmc> agreed
21:48:17 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
22:00:35 <lf94> +1
22:04:27 <arseniiv> glad to see I’m not mad :D
22:23:33 <fizzie> `asmbfx @hello/out 48/ret/@main/psh %hello1/jmp %hello/@hello1
22:23:34 <HackEso> 0
22:23:58 <fizzie> kspalaiologos: I don't know how `asmbf works, but I just plumbed the output into a egobfi8.
23:06:26 -!- arseniiv has quit (Ping timeout: 240 seconds).
23:42:21 -!- hppavilion[1] has joined.
←2019-11-17 2019-11-18 2019-11-19→ ↑2019 ↑all