←2019-10-22 2019-10-23 2019-10-24→ ↑2019 ↑all
00:08:38 -!- sprocklem has quit (Ping timeout: 246 seconds).
00:16:57 -!- hppavilion[2] has quit (Ping timeout: 252 seconds).
00:23:36 -!- xkapastel has joined.
00:29:28 -!- sprocklem has joined.
00:50:34 -!- MDude has quit (Read error: No route to host).
00:51:39 -!- imode has quit (Ping timeout: 264 seconds).
00:55:28 -!- ArthurStrong has quit (Ping timeout: 252 seconds).
00:57:31 -!- MDude has joined.
01:19:43 -!- imode has joined.
01:27:30 -!- shachaf has quit (Quit: ?).
01:29:03 -!- shachaf has joined.
03:03:22 -!- xkapastel has quit (Quit: Connection closed for inactivity).
03:15:55 -!- xkapastel has joined.
04:22:50 -!- imode has quit (Ping timeout: 240 seconds).
05:41:38 -!- sprocklem has quit (Ping timeout: 240 seconds).
06:12:34 -!- arseniiv has joined.
06:32:35 -!- sprocklem has joined.
06:40:44 -!- sprocklem has quit (Ping timeout: 265 seconds).
06:53:23 -!- xkapastel has quit (Quit: Connection closed for inactivity).
07:06:05 -!- Phantom_Hoover has joined.
07:09:19 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
07:11:38 -!- sprocklem has joined.
07:12:52 -!- xkapastel has joined.
07:21:17 -!- sprocklem has quit (Ping timeout: 240 seconds).
07:32:35 -!- sprocklem has joined.
10:13:23 -!- xkapastel has quit (Quit: Connection closed for inactivity).
12:31:50 -!- int-e has quit (Quit: leaving).
12:33:25 -!- int-e has joined.
12:55:19 -!- zzo38 has quit (Ping timeout: 265 seconds).
12:56:44 -!- b_jonas has joined.
13:00:23 <b_jonas> shachaf: re higgedly,
13:00:25 <b_jonas> `? rogue one
13:00:29 <HackEso> rogue one? ¯\(°​_o)/¯
13:00:32 <b_jonas> um,
13:02:28 <b_jonas> ``` hg log -T "{rev}:{date|shortdate}:{desc}\n" -r 11915
13:02:29 <HackEso> 11915:2019-08-26:<b_jonas> `` set -e; slashlearn "spoiler//Don\'t give movie spoilers on channel. If you do, hppavilion may hire a hitman to hunt you down in real life and torture you in refined ways."; forget "rogue one"
13:03:00 <b_jonas> shachaf: for a pretty long time, there was a "wisdom/rogue one" where someone says that nobody should give spoilers to that movie.
13:03:09 <b_jonas> it wasn't signed by anyone, but hg log said that it was by hppavilion
13:03:24 <b_jonas> at that time, hppavilion disappeared, so I didn't dare touch the wisdom entry
13:03:48 <b_jonas> but later, hppavilion returned, I asked him about it, and converted the wisdom entry to a general one about all movies, rather than specifically about Rogue one
13:03:52 <b_jonas> `? spoiler
13:03:53 <HackEso> Don't give movie spoilers on channel. If you do, hppavilion may hire a hitman to hunt you down in real life and torture you in refined ways.
13:03:59 <b_jonas> the higgedly wisdom also refers to this
13:04:20 <b_jonas> I changed them because I find it distasteful for wisdoms to have serious but unsigned threats
13:04:37 <b_jonas> if you threaten to send hitmen, at least tell who's sending them
13:05:00 <b_jonas> ``` hg cat -r 11914 wisdom/rogue\ one
13:05:01 <HackEso> Any regular who gives the slightest Rogue One spoiler shall be hunted down in real life and have their intestines removed through their eye sockets. Members would not be exempt if they existed, which they don't.
13:05:15 <b_jonas> you can check channel logs about this if you want
13:06:08 <int-e> it's the name of his sled
13:08:17 <int-e> (such an odd movie)
13:09:47 <int-e> good point http://thedevilspanties.com/archives/13421
13:54:22 -!- stennowork has joined.
13:55:25 <int-e> Wow, what just happened to Violetta...
13:56:51 <int-e> Ah, "it" from a week ago happened.
14:37:43 <b_jonas> timezone offset change in the parts of Europe that have timezone offset changes in 3.5 days
14:38:03 <stennowork> oh wow b_jonas
14:38:10 <stennowork> er sorry
14:38:15 <stennowork> maybe i am mixing you up with someone
14:38:25 <stennowork> were you active in the nethack community?
14:38:32 <b_jonas> stennowork: somewhat, yes
14:39:06 <stennowork> well hi, long time not seen :D
14:39:09 <b_jonas> I have some wishlist entries and bug reports for nethack4, you can still find them in the bug tracker except that the bug tracker interface is really hard to use,
14:39:16 <stennowork> aah
14:39:16 <stennowork> hehe
14:39:19 <b_jonas> plus I have a total of _one_ ascension behind me
14:39:30 <stennowork> you should really look into nethack again, amazing things have happened
14:39:42 <stennowork> feel free to join #hardfought :D
14:39:45 <b_jonas> I know there's a vanilla release or two since
14:39:47 <stennowork> enough plugging now, sorry
14:39:49 <stennowork> yeah
14:39:56 <b_jonas> they changed a lot of things, I'd have to relearn everything
14:40:00 <stennowork> and vanilla is basically better than NAO-3.4.3 was
14:40:02 <stennowork> which is amzing
14:40:05 <b_jonas> figure out how to protect against all the threats that MC3 simply cancelled
14:40:27 <stennowork> my first post-MC nerf ascension just had MC2 and it worked fine :p
14:40:37 <b_jonas> also the spoiler page http://www.statslab.cam.ac.uk/~eva/nethack/spoilerlist.html has disappeared
14:40:51 <stennowork> i think that was only a few days ago
14:40:58 <stennowork> the spoilers are probably not up to date anymore
14:41:06 <stennowork> even the wiki can't really keep up heh
14:42:00 <b_jonas> stennowork: without MC3, do you, like, have to set your clothes on fire every time you're slimed? or prioritize on killing green slimes?
14:42:08 <b_jonas> because being on fire sounds uncomfortable
14:42:17 <stennowork> you just have to be a little bit more careful
14:42:27 <stennowork> to be fair thuogh, if you are in gehennom, you should have FR already :P
14:42:34 <stennowork> the really biggest issue is level drain
14:42:38 <stennowork> from vampires
14:42:40 <b_jonas> even with the Con score increased easily with exercise
14:42:45 <stennowork> and vlad is now the second-fastest monster in the game
14:43:00 <b_jonas> didn't they also change exercise so that Dex, Con, Wis attributes are no longer so easy to max?
14:43:10 <stennowork> so he stands on the upstairs, hits you, level drains you, then teleports to the upstairs again before you even get an action
14:43:17 <stennowork> hmm
14:43:27 <stennowork> maybe, but i don't remember anything specific for that
14:43:31 <b_jonas> I'm ok with vlad, the joke was old, I have to deal with some tough monsters for the ascension anyway
14:43:46 <b_jonas> that just makes it more awesome to kill vlad with a towel or rubber hose or whatever
14:43:55 <stennowork> yes, i also like an actually strong monster in the endgame
14:44:02 <stennowork> or lategame rather
14:44:07 <b_jonas> also, I play as a vampire lord, so I consider vlad friends
14:44:13 <b_jonas> I do have to kill them, but it's not personal
14:44:14 <stennowork> haha
14:44:18 <stennowork> oh in nethack4?
14:44:26 <stennowork> or with polyself
14:45:01 <b_jonas> in nethack4, but also would play that way in other nethack 3.4.3 variants
14:45:22 <b_jonas> the fourweapon bug is so awesome that I don't see a reason to play as anything but polymorphed to a fourweaponing monster
14:45:34 <stennowork> haha
14:45:50 <stennowork> or that demon with six arms
14:45:52 <b_jonas> basically if you're polymorphed to a monster that has two weapon attacks, then you get two attacks with each of two weapons, and you can wield two weapons regardless your role
14:46:07 <stennowork> oh, amazing
14:46:08 <b_jonas> and the best polyform among those is the vampire lord
14:46:14 <stennowork> right
14:46:19 <stennowork> just no grayswandir for you then :P
14:46:35 <stennowork> there is a new variant called 'evilhack', which implemented twoweaponing martial arts
14:46:49 <stennowork> so when you are grand master you get a second attack as if you were twoweaponing
14:47:12 <stennowork> unfortunately a bug in that was my demise - the second attack would not check for gloves etc so the first cockatrice i ran into stoned me
14:47:26 <b_jonas> did the later vanilla releases fix the fourweaponing bug, or the ring nutrition bug? or are these now ascended bugs that won't ever be fixed?
14:47:46 <stennowork> i have to admit i don't know of that fourweaponing bug
14:48:04 <b_jonas> yeah, for some reason it's not everyone's style
14:48:07 <stennowork> ring nutrition is the one where you dual-wield rings of slow digestion and take them off every 20 turns or so?
14:48:09 <b_jonas> I really don't understand because it's so powerful
14:48:22 <stennowork> twoweaponing got a major overhaul though since 3.4.3
14:48:38 <b_jonas> I understand that sometimes you want to unpolymorph, or polymorph to something else, for utility reasons, but when I want to plough through enemies, I want attacks
14:48:41 <stennowork> its not more like a proper second attack, not that autodamage thing it was in 3.4.3
14:48:44 <b_jonas> and I don't get those natively as a wizard
14:49:19 <b_jonas> (my one ascension was with a valkyrie though)
14:49:32 <stennowork> i knew that you could polymorph into a twoweaponing monster and then you could twoweapon yourself
14:49:42 <stennowork> again i am not familiar with fourweaponing or if this bug still exist :D
14:49:46 <stennowork> but that sounds hilarious
14:49:53 <b_jonas> (but I have a wizard game abandonned in close to gomode on nethack4)
14:54:02 <stennowork> b_jonas, so how about hanging out in #hardfought again? :D you will meet a few old friends (ais523 which i assume also dwells in this channel, jonadab etc...)
14:54:17 <stennowork> and you will see how the current development is and how exciting everything is
14:54:47 <b_jonas> anyway, in the nh4 tracker I have a few actual bugs (rather than wishlists) that I have hard feelings about, and in particular, vanilla worked around the chest trap problem the incorrect way
14:54:55 <stennowork> m
14:55:08 <b_jonas> stennowork: what the heck is #hardfought ? I haven't heard of that channel. I was in other nethack-related channels only
14:55:24 <stennowork> the hardfought server by K2 hosts nethack since 2016
14:55:37 <stennowork> and its the server where all the variants are now hosted too
14:55:50 <stennowork> so that channel is a bit like 'the variant channel'
14:56:13 <b_jonas> #NetHack,#acehack,#nethack-offtopic,#devnull-nethack,#nethack4
14:56:20 <stennowork> ah yes
14:56:32 <stennowork> #devnull-nethack is dead because devnull is dead
14:56:42 <b_jonas> that's not a problem, there's junethack instead
14:56:50 <b_jonas> it's not like I want to play unpatched interface
14:56:53 <b_jonas> with bobble hats
14:56:56 <stennowork> yes, and hardfought also hosts the 'TNNT' tournaments
14:56:57 <stennowork> haha
14:57:05 <stennowork> TNNT is a replacement for the devnull tourney
14:57:13 <stennowork> (i.e. it will start in a week!)
14:57:40 <stennowork> yes, the waldo power armor was awesome
14:58:17 <stennowork> if you see rld talking, its an IRC->discord bridge
14:59:34 <b_jonas> stennowork: anyway, I said that I don't know how I arrived to this channel, to which ais523 said that maybe I followed him here from #nethack4, which sounds quite plausible
14:59:51 <stennowork> yes
14:59:59 <stennowork> ais523 is the only reason i just joined too :D
15:00:06 <b_jonas> but there are other possibilities, and I didn't bother to check the logs
15:00:12 <stennowork> because in another channel, Befunge came up
15:00:16 <b_jonas> logs probably has the truth
15:00:45 <stennowork> irc is awesome
15:00:56 <stennowork> lots of strange hackers aroudn :P
15:01:25 <stennowork> in another channel, i found the developer of ARES (corewars) hanging out
15:01:44 <stennowork> and ESR himself came online to talk about nethack
15:01:52 <b_jonas> "ARES (corewars)"? isn't ARES a library for non-blocking DNS resolving
15:02:08 <b_jonas> c-ares.haxx.se
15:02:09 <stennowork> https://harald.ist.org/sites/ares/
15:02:12 <b_jonas> https://c-ares.haxx.se/
15:02:16 <b_jonas> definitely is
15:02:17 <stennowork> that ares
15:02:37 <b_jonas> they stole the name?
15:02:47 <stennowork> well ares is a very commoon name :D
15:02:51 <stennowork> i wouldn't say they stole it
15:02:58 <stennowork> its a greek god name among other things
15:03:01 -!- imode has joined.
15:03:20 <b_jonas> and a name of a sharp tool too, I know
15:03:31 <stennowork> maybe ares is something like 'another redcode execution sandbox' or something like that
15:04:50 <stennowork> all the redcode stuff is named after roman and greek gods
15:04:55 <stennowork> there is mars, zeus and ares
15:05:11 <stennowork> anyway, enough channel hijacking, sorry for that v_v
15:05:11 <b_jonas> I hope there's no "Athene" or "Athena". that's like the single most over-used name
15:11:40 <b_jonas> stennowork: anyway, it's not likely that I'll return to playing nethack soon. I should write a bot that startscums an online server until it finds a wand of wishing on dlvl1 and then give away the game. It's not that unlikely, I could probably get such a game every few months.
15:12:30 <b_jonas> stennowork: oh also, the 3.6 release seriously nerfs Elbereth, that means I'd basically have to relearn tactics from scratch
15:12:34 <stennowork> vt_tiledata is now in vanilla, so i already wrote some node abstraction
15:12:36 <b_jonas> there's no way I could survive early game
15:12:42 <stennowork> so i have a startscum bot in node now
15:12:43 <stennowork> hehe
15:12:47 <stennowork> you will get used to it
15:12:53 <stennowork> scroll of scare monster was buffed though
15:13:04 <b_jonas> also possibly a bot that tries to dig down as archaeologist and leave helpful bones
15:13:12 <b_jonas> but that is hard
15:13:22 <b_jonas> because it more likely uses up all existing bones than leave good ones
15:13:33 <b_jonas> and without Elbereth the digging down strategy is much harder
15:13:54 <stennowork> but perma-E was OP you have to admit
15:13:59 <b_jonas> I can't just keep digging on dlvl9 on a square with Elbereth and hope that the high level monsters leave me alone
15:14:11 <b_jonas> stennowork: sure it was, but it's what I'm used to
15:14:13 <stennowork> no, you need ?oSM for that
15:16:06 <b_jonas> stennowork: but (a) I have to find a scroll, (b) when I dig down, the scroll can fall to any neighboring square, including one where I can't dig down, and I can't pick it up, so I don't know how easily that would work
15:16:19 <b_jonas> would I have to always dig wherever the scroll happens to fall?
15:16:29 <b_jonas> anyway, it probably doesn't matter because this wouldn't work well in 3.4.3 either
15:16:47 <stennowork> yeah more or less
15:16:55 <b_jonas> I did consider scumming wizards with wand of digging too, but they have just too few charges
15:17:08 <b_jonas> I should probably stick to the wand of wishing strategy
15:17:23 <b_jonas> look around on dlvl1, hope not to get killed, look for wands, quickly restart if there isn't any
15:17:24 <stennowork> yes, for dfv you basically need to go the mines and kill the first dwarf with a pickaxe
15:17:30 <stennowork> do you know about node.js ?
15:17:35 <stennowork> you could look at my project
15:17:37 <b_jonas> if I find wand, engrave with it, wish for 2 bgf scrolls of charging
15:17:47 <b_jonas> stennowork: no no, this is #esoteric, most of the fun is writing the bot itself
15:17:55 <stennowork> fair enough
15:17:57 <b_jonas> if I do it, I want to do it myself
15:18:13 <b_jonas> it's not like I would earn real life money from getting wands of wishing
15:18:13 <stennowork> well then let me say that its easier than ever before because of aforementioned vt_tiledata being in vanilla
15:18:32 <b_jonas> (if I did, then I'd farm puddings then unicorns rather then startscum)
15:18:38 <stennowork> so if you have an ANSI-term parser, you have to just extend the extra escape codes
15:19:21 <stennowork> i wrote a short wiki article about the new vt_tiledata codes https://nethackwiki.com/wiki/Vt_tiledata
15:20:03 <b_jonas> stennowork: no no, I don't want to dfv, I just considered digging down with an unprotected archaeologist with Elbereth, die on like dlvl 12, but first drop my inventory (so it doesn't get cursed) and leave bones that help others
15:20:06 <stennowork> and maybe just for inspiration, here is how a startscum script looks like in my nodehack https://github.com/stenno/NodeHack/blob/master/examples/startscum.js
15:20:19 <b_jonas> with a wizard, I'd also leave engravings to identify my inventory
15:20:47 <b_jonas> but wizards can't dig deep enough
15:21:08 <b_jonas> their wand of digging runs out before they reach bones depth
15:21:14 <stennowork> yes
15:21:23 <stennowork> 8 charges max i think
15:21:35 <stennowork> doesn't bring you far considering you want down to DL 25 or so :P
15:21:43 <b_jonas> I don't want down to dl 25
15:21:53 <b_jonas> I only want down to between dl 12 and 16
15:22:41 <stennowork> still not enough
15:35:36 -!- atslash has quit (Ping timeout: 240 seconds).
15:35:41 <b_jonas> I wonder if anyone will ever ascend Heaven or Hell mode
15:37:06 <int-e> . o O ( What about AIs... the main point being that they can spend many human life time equivalents on trying over and over again?)
15:39:24 <b_jonas> int-e: by the time I left nethack, some people managed to ascend it with fully automated bots. but HoH needs new strategies devised, not just some luck.
15:39:49 <stennowork> int-e, the game exists since 1987. the first (and only) bot to win the game was released in 2016
15:40:07 <b_jonas> int-e: and we enjoy nethack because almost everything has answers, so you don't need too much luck to ascend, only good strategies and tactics
15:40:08 <stennowork> so far, there has not been any other bot that even comes close to ascending
15:40:14 <stennowork> ascending = winning
15:41:18 <b_jonas> almost everything EXCEPT FOR THE FUCKING CHEST TRAPS as I argue in a bug report, and that would be trivial to fix too, as I also argue in that bug report, although the trap system really should be teared out of nethack and completely rewritten, that particular problem can totally be fixed without that
15:41:25 <stennowork> https://github.com/krajj7/BotHack
15:41:40 <stennowork> b_jonas, what is that bug?
15:41:46 <int-e> torn out
15:41:51 <b_jonas> stennowork: let me find my good description in the nh4 bug tracker
15:42:22 <stennowork> YSK that the castle chest is now guaranteed to be untrapped
15:42:48 <stennowork> so they found a way to make untrapped chests from the .des files
15:42:51 <b_jonas> stennowork: https://roguelikes.live/nh4-bugzilla/show_bug.cgi?id=214
15:43:03 <b_jonas> stennowork: yes, I know 3.6 does that, and I still say that that's not the right fix
15:43:34 <b_jonas> I argue in the bug ticket that chest traps don't have answers, and in nethack, things should have answers
15:43:43 <b_jonas> one of the chest traps that is
15:43:46 <b_jonas> the rest do
15:43:46 <stennowork> didn't know that an exploding chest would destroy items on the same square
15:44:35 <stennowork> do you know that people like ais523, paxed and bhaak are now members of the devteam?
15:44:45 <b_jonas> stennowork: I do know
16:04:29 -!- stennowork has quit (Quit: Leaving).
16:14:56 -!- skyplane has joined.
16:14:57 -!- skyplane has quit (Client Quit).
16:16:15 -!- LKoen has joined.
16:18:15 -!- LKoen has quit (Remote host closed the connection).
16:18:33 -!- LKoen has joined.
16:22:16 -!- LKoen has quit (Remote host closed the connection).
16:22:31 -!- LKoen has joined.
16:29:05 -!- skyplane has joined.
16:38:15 -!- gitlogger has joined.
16:39:10 -!- kspalaiologos has joined.
16:42:14 -!- skyplane has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.).
16:42:30 -!- 7JTAAVWO8 has joined.
16:43:43 -!- skyplane_ has joined.
16:44:42 <arseniiv> one guy wants to make a computer game with magic governed by a deep mathematical theory/concept, do you have something in mind to suggest? (Then I’ll relay it.) He gave https://ncatlab.org/nlab/show/string+diagram as an example of things which would interest him, though I think there are no solid decisions made yet, and no conception in which specific way would it manifest in a game
16:45:47 -!- 7JTAAVWO8 has quit (Client Quit).
16:45:54 <imode> noita.
16:45:56 -!- LKoen has quit (Remote host closed the connection).
16:46:06 <imode> cellular automata. :P
16:46:07 -!- skyplane__ has joined.
16:47:50 <b_jonas> arseniiv: well, David Madore has a few ideas about that, see http://www.madore.org/~david/weblog/d.2015-05-07.2296.html (and the older http://www.madore.org/~david/weblog/d.2013-10-07.2162.html that it points to)
16:48:18 <b_jonas> also http://www.madore.org/~david/weblog/d.2018-09-27.2555.html
16:48:30 <arseniiv> maybe I should direct him here
16:48:41 <b_jonas> arseniiv: I don't think he uses irc
16:48:52 <b_jonas> but he has a comment section, twitter, and email
16:49:11 <b_jonas> and Stack Exchange
16:49:29 <arseniiv> b_jonas: rofl :D I don’t mean David Madore
16:49:33 <b_jonas> oh
16:49:35 <arseniiv> I mean that person
16:51:05 <arseniiv> though I don’t know him at all, I just got interested and suggested tensory things to him. Then I was surprised by the coincidence: string diagrams in their simplest form are for monoidal categories
16:51:17 <b_jonas> arseniiv: but be careful, because we officially don't do the other kind of esoterism in this channel
16:53:39 -!- skyplane__ has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.).
16:53:55 -!- skyplane has joined.
16:54:47 <skyplane> всем доброго времени суток
16:54:50 -!- FreeFull has joined.
16:55:10 <skyplane> может скажете, куда с этим: https://skyplaneru.wixsite.com/excessive ?
16:55:38 <arseniiv> b_jonas: eh, I was about to dust off my ouija board
16:55:39 <skyplane> понимаю что в сообщество прогеров, но вдруг
16:57:12 <arseniiv> skyplane: я прочитал и ничего не понял вообще
16:57:53 <arseniiv> really weird text
16:57:57 <imode> skyplane: это не место для какого-то дерьма, которое вы торгуете. немногие (если таковые имеются) здесь говорят по-русски.
16:58:07 <kspalaiologos> the heck
16:59:25 -!- LKoen has joined.
16:59:42 <kspalaiologos> arseniiv, ah yes, the ouija board
17:00:00 <kspalaiologos> very useful while programming in Malbolge
17:01:26 <arseniiv> kspalaiologos: oh! how do you use it?
17:02:03 <kspalaiologos> well, first you have to sign the pledge with Satan
17:02:03 <arseniiv> BTW I don’t really have an ouija but I can simulate it by means of a cat if I ever would want to
17:02:31 <kspalaiologos> and the following steps should be obvious
17:02:50 <skyplane> imode: разница в том, что я сабжем не торгую. от слова совсем. и указанная миссия - действительно миссия. З.Ы. с головой всё нормально.
17:03:22 <kspalaiologos> δεν μιλάς αγγλικά;
17:03:26 <imode> sorry, speak english.
17:03:42 <skyplane> arseniiv: не вопрос, бывает и непонимание
17:03:56 <kspalaiologos> oh cmon
17:03:57 <kspalaiologos> darn it man
17:04:02 <kspalaiologos> stop, you've broken my bot
17:04:17 <imode> why do you have a bot in here.
17:04:34 <kspalaiologos> to log the channel messags
17:04:41 <imode> your client does that.
17:04:43 <b_jonas> ah
17:04:53 <imode> and there are log files in the topic of this channel.
17:04:53 <kspalaiologos> russian characters are actually wide characters
17:05:04 <kspalaiologos> yes, my bot is supplying one of these sites
17:05:12 <b_jonas> `? logs
17:05:13 <HackEso> ​#esoteric channel logs: https://esolangs.org/logs/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D http://codu.org/logs/_esoteric/ https://github.com/KrzysztofSzewczyk/esologs/
17:05:17 <imode> which one.
17:05:23 <kspalaiologos> Wide character in print at harvester.pl line 51.
17:05:23 <kspalaiologos> at harvester.pl line 51.
17:05:24 <kspalaiologos> LogBot::log(LogBot=HASH(0x55f49e95e340), "<skyplane>", "arseniiv: \x{43d}\x{435} \x{432}\x{43e}\x{43f}\x{440}\x{43e}\x{441}, \x{431}\x{44b}\x{432}\x{430}\x{435}\x{442} \x{438} \x{43d}\x{435}\x{43f}\x{43e}\x{43d}\x{438}\x{43c}\x{430}\x{43d}\x{438}\x{435}") called at harvester.pl line 166
17:05:27 <b_jonas> imode: the last one I think
17:05:31 <arseniiv> <kspalaiologos> russian characters are actually wide characters => wait why, how
17:05:51 <kspalaiologos> ^ apparently perl thinks so
17:06:09 <imode> b_jonas: ah, right.
17:06:25 <b_jonas> imode: I mean, that's the new one, so that's the most likely to break
17:06:31 <imode> lol.
17:06:54 <kspalaiologos> ^^ it used to work
17:06:56 <kspalaiologos> for a long time
17:07:00 <arseniiv> okay, returning to the thing I asked, should I give a log excerpt to that person or may I just rephrase what was brought? (Including CA and noita; interesting thing, I’ll watch a video later)
17:07:02 <b_jonas> kspalaiologos: long time? it ran for a month
17:07:14 <b_jonas> kspalaiologos: our channel is over twelve years old
17:07:27 <kspalaiologos> i realise that
17:07:28 <b_jonas> imode: really, it's either that, or an update on irc's side
17:07:31 <arseniiv> <kspalaiologos> ^ apparently perl thinks so => ah. Hm. It’s very strange to say the least
17:07:43 <kspalaiologos> I have read the old IRC logs because I needed *something*
17:07:48 <arseniiv> (shouldn’t it write in UTF-8 or something)
17:07:54 <kspalaiologos> back from 2003 or sth
17:08:04 <kspalaiologos> so yeah, this channel is quite old
17:08:10 <b_jonas> arseniiv: if you write the program correctly
17:08:13 <kspalaiologos> but my bot's been running for week and a half
17:08:22 <b_jonas> arseniiv: in fact you should never _decode_ what you read from irc
17:08:26 <b_jonas> because it's not in any defined encoding
17:08:37 <imode> it's just bytes, man.
17:08:47 <b_jonas> though we usually view it in utf-8, you can send any byte string that doesn't have \x00 or \x0A or \x0D
17:09:00 <b_jonas> imode: exactly, but people sometimes write programs with bugs and later fix it
17:09:01 <b_jonas> it's normal
17:09:10 <kspalaiologos> ok
17:09:19 <kspalaiologos> now it shouldn't bail out now
17:09:51 <kspalaiologos> but I can't tell what happened on 10.18 5:00-6:00 PM GMT
17:11:23 <b_jonas> kspalaiologos: the esolangs.org log is backfilled after the fact from other bots when it's out. it is in fact pretty new, only like two years old, but fizzie added all the old logs retroactively to its archive
17:12:00 <kspalaiologos> I've read a few mails from the mailing list
17:12:02 <b_jonas> kspalaiologos: perhaps eventually he'll fill gaps from your logs too
17:12:07 <kspalaiologos> is it even alive by now?
17:12:09 <b_jonas> mailing list? what mailing list?
17:12:11 <b_jonas> `? mailing list
17:12:12 <HackEso> mailing list? ¯\(°​_o)/¯
17:12:13 <b_jonas> `? email
17:12:15 <HackEso> email? ¯\(°​_o)/¯
17:12:15 <b_jonas> `? mail
17:12:16 <HackEso> mail? ¯\(°​_o)/¯
17:12:23 <kspalaiologos> haha
17:12:54 <kspalaiologos> esoteric.sange.fi I guess
17:12:59 <b_jonas> we don't have a mailing list, even wgrep doesn't know about it
17:13:02 <b_jonas> `? discord
17:13:03 <HackEso> discord? ¯\(°​_o)/¯
17:13:08 <kspalaiologos> we had
17:13:11 <kspalaiologos> a mailing list a long time ago
17:13:25 <skyplane> Good day
17:13:25 <skyplane> can you tell where with this: https://skyplaneru.wixsite.com/excessive?
17:13:25 <skyplane> I understand that in the community of programmers, but suddenly
17:13:41 <b_jonas> nor do we have a discord
17:13:57 <kspalaiologos> `? website
17:13:58 <HackEso> website? ¯\(°​_o)/¯
17:14:02 <kspalaiologos> you don't have website too
17:14:02 <b_jonas> `? wiki
17:14:06 <HackEso> The wiki is at <https://esolangs.org/>.
17:14:11 <b_jonas> kspalaiologos: ^ you have to search right
17:14:11 <kspalaiologos> crap
17:14:14 <b_jonas> you can grep wisdom
17:14:20 <b_jonas> ``` grep -REi http wisdom
17:14:21 <HackEso> wisdom/ayacc:ayacc is ais523's yacc parser generator implementation, get it from darcs clone http://nethack4.org/projects/ayacc \ wisdom/dwfo:DWFO is the Doctor Who Fan Orchestra, <http://thedwfo.org>. \ wisdom/homestuck:Homestuck is a cult religion for disaffected teens. Gamzee drives the bus. Best summarized by http://www.mspaintadventures.com/storyfiles/hs2/05743.gif \ wisdom/hand injuries:Hand injuries are surprisingly common among webcomi
17:14:29 <b_jonas> oh yeah
17:14:29 <kspalaiologos> whoa
17:14:29 <kspalaiologos> what
17:14:31 <b_jonas> `? hand injuries
17:14:32 <HackEso> Hand injuries are surprisingly common among webcomic writers, see eg. http://questionablecontent.net/view.php?comic=2314 or http://www.giantitp.com/comics/oots0864.html
17:14:40 <b_jonas> ^ I found a third example, I should add it there
17:14:56 <kspalaiologos> I can't strive to understand this bot
17:15:00 <kspalaiologos> what, why, how
17:15:10 <b_jonas> `whatis ?
17:15:11 <HackEso> ​?(1hackeso) - print wisdom by name \ ?(8lambdabot) - compose tree of lambdabot commands
17:15:16 <b_jonas> `? wisdome
17:15:17 <HackEso> The Wisdome is the place where all of HackBot's wisdom is stored and forced to fight to the death for the freedom of being printed out when you type `wisdom. Strictly speaking, it should be called the "Wissphere".
17:15:21 <kspalaiologos> have you already trained muscle memory for the #esoteric bots?
17:15:28 <b_jonas> ``` grep -REi http wisdom | tail -n+4
17:15:29 <HackEso> wisdom/hand injuries:Hand injuries are surprisingly common among webcomic writers, see eg. http://questionablecontent.net/view.php?comic=2314 or http://www.giantitp.com/comics/oots0864.html \ wisdom/pbflist:pbflist is update notification for the Perry Bible Fellowship webcomic. http://pbfcomics.com/ \ wisdom/log:#esoteric channel logs: https://esolangs.org/logs/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D http://codu.org/logs/_esoteric/ https
17:15:52 <kspalaiologos> ``` grep -REi wisdom
17:15:52 <b_jonas> kspalaiologos: I use normal unix commands more than the extra-specialized stuff
17:16:03 <b_jonas> kspalaiologos: bin/\? foo basically just prints wisdom/foo
17:16:04 <kspalaiologos> ^ but, the structure of this bot
17:16:07 <b_jonas> it does a few extra things, but not too much
17:16:13 <b_jonas> ``` cat wisdom/"hand injury"
17:16:15 <HackEso> cat: 'wisdom/hand injury': No such file or directory
17:16:15 <kspalaiologos> how do I execute command
17:16:17 <b_jonas> ``` cat wisdom/"hand injuries"
17:16:17 <HackEso> Hand injuries are surprisingly common among webcomic writers, see eg. http://questionablecontent.net/view.php?comic=2314 or http://www.giantitp.com/comics/oots0864.html
17:16:19 <kspalaiologos> ``` ls /
17:16:20 <HackEso> bin \ dev \ etc \ hackenv \ lib \ lib64 \ proc \ sbin \ srv \ sys \ tmp \ usr
17:16:20 <b_jonas> `? run
17:16:21 <HackEso> ​`run <command> is HackEgo's builtin for running a command with full shell syntax. These days most use the user-made `` or ``` shortcuts instead, although all of the three have subtle differences, with `run being the most plain option (also, unlike the rest it cannot be called from other commands.)
17:16:22 <HackEso> No output.
17:16:23 <kspalaiologos> ``` ls /bin
17:16:24 <HackEso> bash \ bunzip2 \ bzcat \ bzcmp \ bzdiff \ bzegrep \ bzexe \ bzfgrep \ bzgrep \ bzip2 \ bzip2recover \ bzless \ bzmore \ cat \ chgrp \ chmod \ chown \ cp \ dash \ date \ dd \ df \ dir \ dmesg \ dnsdomainname \ domainname \ echo \ egrep \ false \ fgrep \ findmnt \ fuser \ grep \ gunzip \ gzexe \ gzip \ hostname \ ip \ journalctl \ kill \ less \ lessecho \ lessfile \ lesskey \ lesspipe \ ln \ login \ loginctl \ ls \ lsblk \ mkdir \ mknod \ mktemp
17:16:35 <kspalaiologos> so you say
17:16:40 <kspalaiologos> that the users actually construct the bot
17:16:40 -!- hppavilion[1] has joined.
17:16:44 <b_jonas> kspalaiologos: yes
17:16:47 <kspalaiologos> that's
17:16:48 <kspalaiologos> incredible
17:16:50 <b_jonas> the commands were added by users
17:16:52 <hppavilion[1]> I am very excited for the Rise of Skywalker
17:16:55 <kspalaiologos> that nobody has yet fscked up by this
17:16:58 <b_jonas> `? spoilers
17:16:59 <HackEso> Don't give movie spoilers on channel. If you do, hppavilion may hire a hitman to hunt you down in real life and torture you in refined ways.
17:17:03 <b_jonas> oh hi, hppavilion[1]
17:17:05 <hppavilion[1]> I have tickets to, like, the second showing in the state
17:17:08 <b_jonas> kspalaiologos: sure we have
17:17:13 <b_jonas> we made a lot of mistakes, then undone them
17:17:16 <hppavilion[1]> b_jonas: ...what that intentional or just the world's greatest timing?
17:17:21 <b_jonas> hppavilion[1]: intentional
17:17:26 <kspalaiologos> for example?
17:17:33 <kspalaiologos> does the repl have root access?
17:17:34 <hppavilion[1]> b_jonas: But yes, that position does still stand
17:17:39 <b_jonas> hppavilion[1]: you can see the history that I talked about that wisdom entry earlier because shachaf asked
17:17:58 <kspalaiologos> ``` ls
17:17:59 <HackEso> a.out \ bin \ canary \ emoticons \ esobible \ etc \ evil \ f \ factor \ good \ hw \ ibin \ interps \ izash.c \ karma \ le \ lib \ misle \ paste \ ply-3.8 \ quines \ quinor \ quotes \ share \ src \ test2 \ testfile \ tmflry \ tmp \ wisdom
17:18:03 <b_jonas> hppavilion[1]: and you have the same nick length as kspalaiologos so at first I thought it was he who said "I am very excited for the Rise of Skywalker"
17:18:03 <kspalaiologos> ``` ./a.out
17:18:05 <HackEso> 1.250000
17:18:09 <b_jonas> hppavilion[1]: so I had to warn him
17:18:09 <kspalaiologos> ???????
17:18:14 <b_jonas> kspalaiologos: you can experiment in tmp
17:18:15 <b_jonas> `? tmp
17:18:16 <HackEso> tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. NOTE: It interacts funnily with HackEgo's lock and re-run commit check; files can DISAPPEAR if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:18:20 <b_jonas> eg.
17:18:25 <hppavilion[1]> b_jonas: Huh, so I do
17:18:32 <kspalaiologos> ``` cd tmp
17:18:33 <HackEso> No output.
17:18:35 <kspalaiologos> ``` ls
17:18:36 <HackEso> a.out \ bin \ canary \ emoticons \ esobible \ etc \ evil \ f \ factor \ good \ hw \ ibin \ interps \ izash.c \ karma \ le \ lib \ misle \ paste \ ply-3.8 \ quines \ quinor \ quotes \ share \ src \ test2 \ testfile \ tmflry \ tmp \ wisdom
17:18:42 <kspalaiologos> hm, so I have to
17:18:44 <kspalaiologos> give a single command
17:18:55 <hppavilion[1]> b_jonas: But it isn't out for months, so if kspalaiologos happens to HAVE spoilers, I'd honestly be fascinated to know how (but not what they are)
17:19:13 <b_jonas> ``` set -e; gcc -Wall -O -o tmp/a.out -x c - <<<$'#include<stdio.h>\n''void main() { printf("this is a C program\n"); }'; tmp/a.out
17:19:15 <HackEso> ​[01m[K<stdin>:2:6:[m[K [01;35m[Kwarning: [m[Kreturn type of '[01m[Kmain[m[K' is not '[01m[Kint[m[K' [[01;35m[K-Wmain[m[K] \ this is a C program
17:19:22 <b_jonas> ``` set -e; gcc -Wall -O -o tmp/a.out -x c - <<<$'#include<stdio.h>\n''int main() { printf("this is a C program\n"); }'; tmp/a.out
17:19:23 <kspalaiologos> oh c'mon man
17:19:23 <HackEso> this is a C program
17:19:24 <kspalaiologos> void main
17:19:30 <kspalaiologos> it's a crime against humanity
17:19:38 <b_jonas> yeah, it also needs a magic option to turn off the colors
17:19:47 <kspalaiologos> ansi filter when?
17:19:47 <b_jonas> something like -fdiagnostic-colors=never or similar
17:19:59 <hppavilion[1]> Note that I do not recognize the validity of so-called "trailer spoilers"
17:20:09 <b_jonas> kspalaiologos: ideally I should make a terminfo entry for irc colors, but I haven't bothered
17:20:12 <hppavilion[1]> Except in the context of not telling someone what happens in a trailer within maybe a week of its release IF they express that they haven't seen it yet and don't want to be quote-unquote "spoiled"
17:20:13 <kspalaiologos> what are you talking about right now?
17:20:15 <kspalaiologos> I'm so lost
17:20:32 <b_jonas> `? hackego # root access
17:20:33 <HackEso> hackego # root access? ¯\(°​_o)/¯
17:20:36 <hppavilion[1]> kspalaiologos: b_jonas is talking about convoluted hackbot things, I'm talking about the ontology of movie spoilers
17:20:37 <b_jonas> ``` \? hackego # root access
17:20:38 <HackEso> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing. HackEgo is the slowest bot in all Mexico!
17:21:04 <b_jonas> ``` \? edit # single command
17:21:05 <HackEso> ​`edit <file> gives you a url, then in your browser: (1) Press Sync (unless making a new file) (2) Make your changes (3) Press Save (4) Paste the command line at the top into the channel.
17:21:06 <hppavilion[1]> Huh, HackEgo's name has changed. Cool.
17:21:17 <b_jonas> hppavilion[1]: it's a reincarnation
17:21:26 <hppavilion[1]> `? hackego
17:21:27 <HackEso> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing. HackEgo is the slowest bot in all Mexico!
17:21:31 <b_jonas> hppavilion[1]: it has most of the old one's memory, from one of the backup dumps of the hg repository
17:21:47 <b_jonas> hppavilion[1]: except the hg log is truncated, I don't know why, so if you look way back in the revisions, you won't find the oldest stuff
17:21:55 <hppavilion[1]> :(
17:21:58 <b_jonas> `? hg
17:22:00 <HackEso> hg is dark alchemy used by oerjan to fix things. Like most alchemy, it involves drinking mercury.
17:22:00 <hppavilion[1]> b_jonas: Should someone change the contents of `? HackEgo to match the reincarnation?
17:22:03 <kspalaiologos> ``` cd tmp && edit test.sh
17:22:05 <esowiki> [[Special:Log/newusers]] create * Dotjpg3141 * New user account
17:22:06 <HackEso> https://hack.esolangs.org/edit/tmp/test.sh
17:22:09 <kspalaiologos> is this how it works
17:22:09 <b_jonas> hppavilion[1]: no, we have a separate entry
17:22:11 <b_jonas> `? HackEso
17:22:13 <hppavilion[1]> Oh
17:22:13 <HackEso> HackEso is almost but not quite unlike HackEgo.
17:22:24 <hppavilion[1]> b_jonas: Then 'is' -> 'was'?
17:22:25 <b_jonas> the HackEgo one is still an accurate description of the old bot
17:22:52 <b_jonas> hppavilion[1]: I don't think so, that's not a nice thing to edit about the bot that's sleeping but will return when the country needs him the most
17:23:00 <b_jonas> the once and future king will arise
17:23:04 <hppavilion[1]> b_jonas: Oh, like Arthur?
17:23:10 <arseniiv> Hg is alchemy haha. It reifies lead into tin, tin into iron, iron into copper, copper into silver, and silver into gold, and gold you shall not reify nohow
17:23:15 <hppavilion[1]> Is Merlin also destined to return in England's hour of need? I'm not clear on that one
17:23:18 <kspalaiologos> hm
17:23:33 <kspalaiologos> can I set up my brainfuck assembler on the bot
17:23:34 <hppavilion[1]> arseniiv: Applying gallium to aluminum turns the aluminum into basically we tcardboard
17:23:50 <b_jonas> hppavilion[1]: merlin time travels to the future. don't you read Irregular Webcomic?
17:23:54 <arseniiv> hppavilion[1]: what kind of alchemy is that?
17:23:57 <hppavilion[1]> b_jonas: Via a tree?
17:24:04 <b_jonas> hppavilion[1]: I don't know
17:24:05 <hppavilion[1]> arseniiv: I mean, it's real-life chemistry
17:24:15 <b_jonas> kspalaiologos: what's a brainfuck assembler?
17:24:27 <hppavilion[1]> Also, what's the exact prophesy on when Arthur will return? Is it specifically *England's* hour of need, or just the UK as a whole?
17:24:41 <kspalaiologos> as the name suggests, the program that's able to serve like a brainfuck-like assembler hooked with a pipe to a brainfuck interpreter
17:24:47 <arseniiv> hppavilion[1]: aww
17:24:47 <hppavilion[1]> er, *prophecy
17:24:51 <hppavilion[1]> 'prophesy' is a verb
17:24:52 <kspalaiologos> it's like a repl
17:25:02 <kspalaiologos> for testing the snippets
17:25:16 <arseniiv> (hm what reaction there is and where could I watch it)
17:25:41 <hppavilion[1]> arseniiv: Yes you could. Was that a cute 'aww' or a disappointed 'aww'?
17:25:48 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=66762&oldid=66759 * Dotjpg3141 * (+110)
17:25:57 <hppavilion[1]> Please allow me to introduce myself
17:25:57 <b_jonas> kspalaiologos: you can probably try. fizzie seems to have long tolerances, seeing that he hasn't banned me entirely from the bot yet
17:25:58 <arseniiv> I don’t know, that’s why I posted it so long
17:26:04 <hppavilion[1]> I'm a man of wealth and taste
17:26:13 <hppavilion[1]> arseniiv: Example: https://www.youtube.com/watch?v=IgXNwLoS-Hw
17:26:22 <kspalaiologos> ```git
17:26:23 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ``git: not found
17:26:29 <kspalaiologos> ```unzip
17:26:29 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ``unzip: not found
17:26:30 <b_jonas> ``` \? fetch # kspalaiologos: you should know about that too, besides edit
17:26:31 <HackEso> ​`fetch [<output-file>] <URL> downloads files, and is the only web access currently available in HackEgo. It is a special builtin that cannot be called from other commands. See also `edit.
17:26:31 <arseniiv> hppavilion[1]: thanks
17:26:35 <kspalaiologos> yeah
17:26:39 <kspalaiologos> the editor has already instructed me
17:26:40 <b_jonas> kspalaiologos: we have tar and gzip and xz
17:26:54 <kspalaiologos> I'll have to do it over my vps
17:26:56 <kspalaiologos> probably
17:27:04 <kspalaiologos> because github doesn't support downlading tarballs
17:27:06 <kspalaiologos> doesn't it?
17:27:24 <hppavilion[1]> Chemistry is like alchemy, except that it's real and interfaces with the laws of economics (meaning if you find a cost-effective way to turn lead into gold, you'll just drop the price of gold)
17:27:25 <b_jonas> kspalaiologos: in the worst case, you can uuencode it and put in edit
17:27:31 <kspalaiologos> xD
17:27:35 <kspalaiologos> this seems like a terrible idea
17:27:42 <kspalaiologos> give me a second
17:27:46 <b_jonas> but putting it somewhere on the http web and fetching is usually easier
17:27:50 <hppavilion[1]> b_jonas: Did you ever hang out in #xkcd? Or did I confuse you for someone else?
17:27:54 <fizzie> github does support downloading zip files.
17:27:58 <b_jonas> you just need to host it temporarily
17:28:15 <b_jonas> hppavilion[1]: for a few days, I think. I never participated
17:28:21 <hppavilion[1]> I see
17:28:29 <b_jonas> hppavilion[1]: I was also on one of the xkcd wikis but didn't participate much
17:28:38 <fizzie> Under the "Clone or download v" button, there's a "Download ZIP" option which will just zip up all the repository contents into a file.
17:28:40 <hppavilion[1]> That channel gets a bit toxic occasionally, so I can't blame you if you quit during one of *those* periods
17:28:40 <b_jonas> and on explainxkcd but also didn't participate much
17:28:47 <kspalaiologos> `fetch tmp/test.sh https://hack.esolangs.org/get/tmp/test.sh
17:28:49 <HackEso> 2019-10-23 17:28:48 URL:https://hack.esolangs.org/get/tmp/test.sh [130/130] -> "tmp/test.sh" [1]
17:28:59 <kspalaiologos> ```cd tmp && cat test.sh
17:28:59 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ``cd: not found
17:29:08 <kspalaiologos> ok
17:29:12 <hppavilion[1]> b_jonas: I wonder if I'm conflating your nick with someone else's with a similar name; however, the only person I can think of is VictoriaB, whose old nick started with a 'j'
17:29:15 <kspalaiologos> `cd tmp && cat test.sh
17:29:15 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: cd: not found
17:29:20 <b_jonas> hppavilion[1]: I'm only on like one or two channel per network on most networks other than freenode
17:29:24 <kspalaiologos> `cat tmp/test.sh
17:29:25 <HackEso> wget https://github.com/KrzysztofSzewczyk/asmbf/archive/v1.1.1.tar.gz \ tar -xzf v1.1.1.tar.gz \ cd asmbf-1.1.1 \ sudo make all install
17:29:30 <kspalaiologos> lgtm
17:29:33 <fizzie> That's not going to work: there's no networking from inside the machine.
17:29:37 <hppavilion[1]> I really wish hexchat had a way for me to scan two channels for overlap (even attempting on different servers)
17:29:38 <kspalaiologos> is there?
17:29:41 <kspalaiologos> crap
17:29:46 <b_jonas> kspalaiologos: three backticks and a space
17:30:06 <fizzie> The `fetch is the only thing that's able to fetch anything.
17:30:33 <fizzie> But really, that's just four commands, why would you need to run it as a script inside? Just fetch the file (preferrably into tmp/) and run those one by one.
17:30:41 <b_jonas> fizzie: I think it's an experiment
17:30:44 <b_jonas> testing stuff
17:30:46 <lf94> hppavilion[1]: what do you mean
17:30:50 <b_jonas> testing shorter scripts to
17:30:53 <b_jonas> know how longer scripts will work
17:30:56 <fizzie> Well, okay, "sudo" is not going to work either.
17:30:58 <hppavilion[1]> lf94: Clarify
17:31:00 <esowiki> [[Brainfuck algorithms]] https://esolangs.org/w/index.php?diff=66763&oldid=60732 * Dotjpg3141 * (-45) /* swap x, y */
17:31:00 <arseniiv> <hppavilion[1]> Chemistry is like alchemy, except that it's real and interfaces with the laws of economics (meaning if you find a cost-effective way to turn lead into gold, you'll just drop the price of gold) => agree on both points
17:31:13 <b_jonas> fizzie: wisdom/HackEgo more or less invites you to tryu
17:31:14 <lf94> "I really wish hexchat had a way for me to scan two channels for overlap"
17:31:19 <fizzie> And "make install" probably needs a PREFIX= argument or some-such.
17:31:20 <lf94> overlap of what? text?
17:31:32 <hppavilion[1]> lf94: Ah. I mean nick-overlap
17:31:42 <lf94> What is nick overlap? X)
17:31:44 <kspalaiologos> ``` cd tmp && edit hexdump.hex
17:31:45 <HackEso> https://hack.esolangs.org/edit/tmp/hexdump.hex
17:32:06 <kspalaiologos> `fetch tmp/hexdump.hex https://hack.esolangs.org/get/tmp/hexdump.hex
17:32:08 <HackEso> 2019-10-23 17:32:07 URL:https://hack.esolangs.org/get/tmp/hexdump.hex [119404/119404] -> "tmp/hexdump.hex" [1]
17:32:09 <hppavilion[1]> lf94: Like, scan if anyone has the same or similar nick, realname, or hostthing (whatever it is after the '@' in one's full id thing)
17:32:48 <lf94> write a python plugin, it's easy
17:32:49 <hppavilion[1]> 'similar' being defined by some predicate such as case-insensitive levenstein distance
17:33:03 <lf94> I wrote one to turn hexchat into a spy software
17:33:15 <lf94> while I'm in a channel, it will relay all messages to other servers
17:33:54 <lf94> in particular it's useful to have a user relay messages to another channel.
17:34:08 <fizzie> kspalaiologos: If that's a hexdump of the earlier v1.1.1.tar.gz file (like it appears), why in the world would you fetch *that* instead of just fetching the binary file?
17:34:09 <lf94> these days I use weechat though :)
17:34:11 <kspalaiologos> `fetch tmp/test.sh https://hack.esolangs.org/get/tmp/test.sh
17:34:13 <HackEso> 2019-10-23 17:34:12 URL:https://hack.esolangs.org/get/tmp/test.sh [93/93] -> "tmp/test.sh" [1]
17:34:26 <kspalaiologos> fizzie, I have no idea what i'm doing
17:34:29 <kspalaiologos> leave me
17:34:51 <kspalaiologos> ``` cat tmp/
17:34:51 <HackEso> cat: tmp/: Is a directory
17:34:54 <kspalaiologos> ``` ls tmp/
17:34:55 <HackEso> ​-BE8SJn_Dnja \ 0KpPun-ahPnp \ 4qubykGwXZAV \ 8bZIQdyoQ_3S \ EGYj6LpQgFKM \ I3ZdY_oWgTHb \ OUT \ X81G5u_N85_r \ a.c \ a.out \ aczO2Vrn8mw1 \ as-encoding \ compiled_brachylog.pl \ hexdump.hex \ iKVic2uB99hI \ input.brachylog \ jeval.whatis \ out \ out.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ test.sh \ tmp.txt \ uGgIjgPAmv8A
17:35:10 <kspalaiologos> ``` cat tmp/test.sh
17:35:11 <HackEso> xxd -r hexdump.hex v1.1.1.tar.gz \ tar -xzf v1.1.1.tar.gz \ cd asmbf-1.1.1 \ sudo make all install
17:35:29 <kspalaiologos> ``` /bin/bash tmp/test.sh
17:35:29 <HackEso> tmp/test.sh: line 1: xxd: command not found \ tar (child): v1.1.1.tar.gz: Cannot open: No such file or directory \ tar (child): Error is not recoverable: exiting now \ tar: Child returned status 2 \ tar: Error is not recoverable: exiting now \ tmp/test.sh: line 3: cd: asmbf-1.1.1: No such file or directory \ sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privilege
17:35:37 <kspalaiologos> what just happened
17:35:48 <b_jonas> fizzie: because edit doesn't like non-ascii files
17:35:52 <fizzie> "xxd: command not found" happened, and the rest was just cascading errors.
17:35:54 <b_jonas> fizzie: he's fetching from edit as you can see
17:36:08 <kspalaiologos> how xxd is not present here
17:36:13 <kspalaiologos> it's a standard posix tool
17:36:14 <fizzie> b_jonas: Yes, but it's just bizarre.
17:36:21 <fizzie> No, it's not.
17:36:24 <b_jonas> I did say uunecode, but the young ones don't know how it and ftp ascii mode works
17:36:25 <kspalaiologos> isn't it?
17:36:37 <b_jonas> and 7-bit serial lines
17:36:43 <fizzie> b_jonas: Well, I mean, the point is, the binary file was already available at a web address.
17:36:49 <fizzie> There's no need to round-trip through edit.
17:36:56 <kspalaiologos> `fetch tmp/v1.1.1.tar.gz https://github.com/KrzysztofSzewczyk/asmbf/archive/v1.1.1.tar.gz
17:36:58 <HackEso> 2019-10-23 17:36:57 URL:https://codeload.github.com/KrzysztofSzewczyk/asmbf/tar.gz/v1.1.1 [28092] -> "tmp/v1.1.1.tar.gz" [1]
17:37:01 <b_jonas> fizzie: ah
17:37:03 <b_jonas> ok
17:37:11 <kspalaiologos> `fetch tmp/test.sh https://hack.esolangs.org/get/tmp/test.sh
17:37:12 <HackEso> 2019-10-23 17:37:11 URL:https://hack.esolangs.org/get/tmp/test.sh [60/60] -> "tmp/test.sh" [1]
17:37:17 <kspalaiologos> ``` /bin/bash tmp/test.sh
17:37:17 <HackEso> tar (child): v1.1.1.tar.gz: Cannot open: No such file or directory \ tar (child): Error is not recoverable: exiting now \ tar: Child returned status 2 \ tar: Error is not recoverable: exiting now \ tmp/test.sh: line 2: cd: asmbf-1.1.1: No such file or directory \ sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privileges?
17:37:27 <kspalaiologos> ``` ls tmp/
17:37:28 <HackEso> ​-BE8SJn_Dnja \ 0KpPun-ahPnp \ 4qubykGwXZAV \ 8bZIQdyoQ_3S \ EGYj6LpQgFKM \ I3ZdY_oWgTHb \ OUT \ X81G5u_N85_r \ a.c \ a.out \ aczO2Vrn8mw1 \ as-encoding \ compiled_brachylog.pl \ hexdump.hex \ iKVic2uB99hI \ input.brachylog \ jeval.whatis \ out \ out.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ test.sh \ tmp.txt \ uGgIjgPAmv8A \ v1.1.1.tar.gz
17:37:42 <kspalaiologos> ``` cd tmp && /bin/bash test.sh
17:37:43 <HackEso> sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privileges?
17:37:56 <kspalaiologos> `fetch tmp/test.sh https://hack.esolangs.org/get/tmp/test.sh
17:37:57 <HackEso> 2019-10-23 17:37:57 URL:https://hack.esolangs.org/get/tmp/test.sh [55/55] -> "tmp/test.sh" [1]
17:37:57 <kspalaiologos> ``` cd tmp && /bin/bash test.sh
17:38:01 <HackEso> sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privileges? \ make: *** [install] Error 1 \ gcc -Ofast -march=native -funroll-loops -fomit-frame-pointer -w bfasm.c -o bfasm \ gcc -Ofast -march=native -funroll-loops -fomit-frame-pointer -w bfi.c -o bfi \ gcc -Ofast -march=native -funroll-loops -fomit-frame-pointer -w bfintd.c -o bfintd \ gcc -Ofast
17:38:21 <fizzie> `` rm tmp/{-BE8SJn_Dnja,0KpPun-ahPnp,4qubykGwXZAV,8bZIQdyoQ_3S,EGYj6LpQgFKM,I3ZdY_oWgTHb,X81G5u_N85_r,aczO2Vrn8mw1,iKVic2uB99hI,uGgIjgPAmv8A} # just some spring cleaning
17:38:22 <HackEso> rm: cannot remove 'tmp/-BE8SJn_Dnja': Is a directory \ rm: cannot remove 'tmp/0KpPun-ahPnp': Is a directory \ rm: cannot remove 'tmp/8bZIQdyoQ_3S': Is a directory \ rm: cannot remove 'tmp/EGYj6LpQgFKM': Is a directory \ rm: cannot remove 'tmp/I3ZdY_oWgTHb': Is a directory \ rm: cannot remove 'tmp/X81G5u_N85_r': Is a directory \ rm: cannot remove 'tmp/aczO2Vrn8mw1': Is a directory \ rm: cannot remove 'tmp/iKVic2uB99hI': Is a directory \ rm: can
17:38:32 <fizzie> What, they're directories.
17:38:39 <b_jonas> fizzie: some of those might have been me
17:38:54 <b_jonas> ``` rmdir tmp/*
17:38:55 <HackEso> rmdir: failed to remove 'tmp/EGYj6LpQgFKM': Directory not empty \ rmdir: failed to remove 'tmp/OUT': Not a directory \ rmdir: failed to remove 'tmp/a.c': Not a directory \ rmdir: failed to remove 'tmp/a.out': Not a directory \ rmdir: failed to remove 'tmp/as-encoding': Not a directory \ rmdir: failed to remove 'tmp/asmbf-1.1.1': Directory not empty \ rmdir: failed to remove 'tmp/compiled_brachylog.pl': Not a directory \ rmdir: failed to remove
17:39:04 <kspalaiologos> ```ls tmp/
17:39:04 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ``ls: not found
17:39:07 <kspalaiologos> ``` ls tmp/
17:39:08 <HackEso> EGYj6LpQgFKM \ OUT \ a.c \ a.out \ as-encoding \ asmbf-1.1.1 \ compiled_brachylog.pl \ hexdump.hex \ input.brachylog \ jeval.whatis \ out \ out.a \ out.a.hd \ out.a.xxd \ paste \ single-word-character-names \ spline \ spout \ spout.raw \ test.sh \ tmp.txt \ v1.1.1.tar.gz
17:39:15 <kspalaiologos> ``` ls tmp/asmbf-1.1.1/
17:39:16 <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
17:39:31 <kspalaiologos> ``` edit tmp/asmbf-1.1.1/Makefile
17:39:31 <HackEso> https://hack.esolangs.org/edit/tmp/asmbf-1.1.1/Makefile
17:39:49 <kspalaiologos> `fetch tmp/asmbf-1.1.1/Makefile https://hack.esolangs.org/get/tmp/asmbf-1.1.1/Makefile
17:39:50 <HackEso> 2019-10-23 17:39:49 URL:https://hack.esolangs.org/get/tmp/asmbf-1.1.1/Makefile [687/687] -> "tmp/asmbf-1.1.1/Makefile" [1]
17:40:01 <b_jonas> kspalaiologos: hope you don't have to compile anything big that takes more than like 12 seconds or whatever the command timeout is
17:40:07 <kspalaiologos> nope
17:40:10 <kspalaiologos> it's just 4 programs
17:40:19 <kspalaiologos> every single one is <5 kilobytes big
17:40:32 <kspalaiologos> ``` cd tmp/asmbf-1.1.1/ && make all install
17:40:35 <HackEso> cp: cannot create regular file '/bin/bconv': Read-only file system \ cp: cannot create regular file '/bin/bfasm': Read-only file system \ cp: cannot create regular file '/bin/bfi': Read-only file system \ cp: cannot create regular file '/bin/bfintd': Read-only file system \ cp: cannot create regular file '/bin/bfmake': Read-only file system \ cp: cannot create regular file '/bin/bfpp': Read-only file system \ cp: cannot create regular file '/b
17:40:38 <b_jonas> kspalaiologos: yeah, the ones that take too much to compile are often also too big to fetch
17:40:47 <kspalaiologos> hm
17:40:52 <kspalaiologos> so I'll have to change the prefix
17:40:55 <kspalaiologos> where do you put the binaries
17:41:01 <fizzie> /hackenv/bin, usually.
17:41:03 <kspalaiologos> i'll create a folder for myself
17:41:08 <kspalaiologos> so I don't pollute the path
17:41:15 <b_jonas> kspalaiologos: create a dir under hackenv/lib
17:41:18 <b_jonas> under /hackenv/lib
17:41:19 <fizzie> In that case, yes, that.
17:41:32 <b_jonas> or under /hackenv/share for the architecture-independent ones
17:41:33 -!- skyplane has quit (Ping timeout: 245 seconds).
17:41:33 -!- skyplane_ has changed nick to skyplane.
17:41:36 <kspalaiologos> ???
17:41:44 <fizzie> `` echo $PATH
17:41:45 <HackEso> ​/hackenv/bin:/usr/bin:/bin
17:41:48 <kspalaiologos> why under /lib
17:41:54 <b_jonas> kspalaiologos: not /lib
17:42:00 <b_jonas> kspalaiologos: /hackenv/lib
17:42:03 <kspalaiologos> i wanted to shorten typing xd
17:42:09 <kspalaiologos> but why there
17:42:28 <arseniiv> imode: oh, Noita is by the same author as Baba is You!
17:42:28 <b_jonas> kspalaiologos: because we use /hackenv/lib and /hackenv/share as sort of like the user's /usr/local/lib and /usr/local/share
17:42:37 <kspalaiologos> ``` ls tmp/asmbf-1.1.1/bin/
17:42:38 <HackEso> bconv \ bfasm \ bfi \ bfintd \ bfmake \ bfpp \ labels.pl \ strip.pl
17:42:41 <b_jonas> kspalaiologos: we're not sysadmins so we can't write to /usr/local
17:42:49 <b_jonas> but /hackenv is our homedir, so we can write under there
17:42:53 <kspalaiologos> so this stuff should probably go to my folder in path
17:42:56 <b_jonas> so we use bin, lib, share under it
17:43:05 <kspalaiologos> but I'll have to modify the scripts though as they might not work with the nesting
17:43:12 <kspalaiologos> #shitcode
17:43:33 <b_jonas> kspalaiologos: why? can't you just configure --prefix=/hackenv/lib or make PREFIX=/hackenv/lib or something?
17:43:47 <kspalaiologos> I wrote that makefile
17:43:51 <fizzie> b_jonas: I guess technically the binaries should be in /hackenv/libexec for more FHS-y style.
17:44:18 <fizzie> "/usr/libexec includes internal binaries that are not intended to be executed directly by users or shell scripts."
17:44:19 <b_jonas> fizzie: perhaps. do you know who created /hackenv/share ?
17:44:20 <kspalaiologos> ``` cp tmp/asmbf-1.1.1/bin/bconv /hackenv/bin
17:44:21 <HackEso> No output.
17:44:28 <kspalaiologos> ``` cp tmp/asmbf-1.1.1/bin/bfasm /hackenv/bin
17:44:30 <HackEso> No output.
17:44:32 <kspalaiologos> and that's all I think
17:44:40 <kspalaiologos> ``` bfasm
17:44:42 <b_jonas> fizzie: /hackenv is a bit of a mess, with some garbage spread around
17:44:52 <b_jonas> we tend to remove at least the top level stuff, but we don't really have a good hierarchy
17:44:53 <kspalaiologos> hm
17:44:55 <kspalaiologos> ``` cat
17:45:01 <kspalaiologos> what happens when I do that?
17:45:07 <fizzie> A timeout at some point, normally.
17:45:08 <kspalaiologos> the program just gets killed at eof or what
17:45:11 <HackEso> No output.
17:45:14 <kspalaiologos> ah yes
17:45:16 <b_jonas> kspalaiologos: cp? don't you use symlinks?
17:45:27 <kspalaiologos> probably I should
17:45:33 <b_jonas> ``` oh sorry
17:45:34 <HackEso> bash: oh: command not found
17:45:35 <kspalaiologos> but nobody is interested in my stuff so I program it like for myself
17:45:35 <b_jonas> it was from temps
17:45:45 <b_jonas> kspalaiologos: sorry, don't symlink
17:45:51 <b_jonas> the source was from tmp, so you can't symlink
17:45:57 <b_jonas> wait
17:46:00 <kspalaiologos> how can I specify multiline output
17:46:02 <b_jonas> kspalaiologos: did you install to tmp?
17:46:03 <kspalaiologos> input
17:46:08 <kspalaiologos> no, I didnt install to tmp
17:46:09 <b_jonas> that's not a good idea if it has any files other than the binary
17:46:11 <kspalaiologos> the install didnt success
17:46:12 <b_jonas> oh good
17:46:13 <fizzie> b_jonas: It was just built in the source tree and then manually copied over.
17:46:20 <kspalaiologos> ^
17:46:21 <kspalaiologos> yes
17:46:23 <kspalaiologos> because install script bailed out
17:46:34 <kspalaiologos> ```bfasm
17:46:34 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ``bfasm: not found
17:46:38 <kspalaiologos> wait a second
17:46:45 <kspalaiologos> ```bfasm out .0
17:46:46 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ``bfasm: not found
17:46:49 <kspalaiologos> ``` bfasm out .0
17:46:51 <b_jonas> kspalaiologos: if it works, you may also create a wisdom entry so we know what the program is for
17:46:57 <kspalaiologos> it doesn't send eof
17:46:58 <b_jonas> though maybe it has a good --help output or something
17:47:00 <kspalaiologos> thats very bad
17:47:04 <b_jonas> ``` bfasm --help
17:47:07 <HackEso> No output.
17:47:09 <kspalaiologos> it has no help flag
17:47:15 <kspalaiologos> you can read its source code
17:47:19 <HackEso> No output.
17:47:23 <kspalaiologos> its really helpful in understanding it
17:47:35 <HackEso> No output.
17:47:37 <kspalaiologos> can I manually instuct the bot to send eof at the end?
17:47:44 <fizzie> At the end of *what*?
17:47:48 <kspalaiologos> of my input
17:47:52 <b_jonas> kspalaiologos: a wisdom entry that tells where its source is and a quick synopsis might be helpful then
17:48:00 <kspalaiologos> I will add it in a moment
17:48:06 <kspalaiologos> but i'm working out the eof
17:48:08 <b_jonas> kspalaiologos: because a month from now, we won't be able to guess where the source is, and we won't want to dive the log to find out
17:48:09 <fizzie> You can do < /dev/null to get an empty stdin with an EOF at the end.
17:48:21 <b_jonas> kspalaiologos: try <<<""
17:48:21 <kspalaiologos> the problem is
17:48:25 <b_jonas> oh yeah, </dev/null
17:48:25 <kspalaiologos> hm ok
17:48:26 <b_jonas> even better
17:48:28 <b_jonas> unix magic
17:48:40 <kspalaiologos> if i pipe dev null here
17:48:46 <kspalaiologos> wont my input "disappear"?
17:48:53 <b_jonas> what input?
17:48:57 <kspalaiologos> so you see
17:48:57 <fizzie> What input? There's no way to type input into the stdin stream.
17:49:05 <kspalaiologos> oh, so I'll have to pipe it
17:49:08 <kspalaiologos> that's okay
17:49:15 <b_jonas> you can just enter input with <<<
17:49:24 <kspalaiologos> ``` bfasm <<< "out .0"
17:49:25 <HackEso> ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>>++++++++++++++++++++++++++++++++++++++++++++++++.[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]<<<[-]>[-]>>]<<]
17:49:26 <b_jonas> ``` perl <<<'print "hello, world! " for 1..9'
17:49:27 <HackEso> hello, world! hello, world! hello, world! hello, world! hello, world! hello, world! hello, world! hello, world! hello, world!
17:49:28 <kspalaiologos> yayyyy
17:49:45 <kspalaiologos> so
17:49:51 <kspalaiologos> how do you add wisdom entry?
17:49:54 <b_jonas> `? learn
17:49:55 <HackEso> ​`learn creates a wisdom entry and tries to guess which word is the key. Syntax (case insensitive): `learn [a|an|the] <keyword>[s][punctuation] [...]
17:49:57 <b_jonas> `? le//rn
17:49:59 <HackEso> le/rn makes creating wisdom entries manually a thing of the past. Usage: `le/[/]rn <key>//<wisdom>
17:50:12 <b_jonas> or create a file manually in the wisdom directory with a lowercase name
17:50:22 <b_jonas> that doesn't end in s
17:50:32 <kspalaiologos> can I just link the documentation?
17:50:37 <b_jonas> yes
17:50:48 <b_jonas> but adding a short synopsis should help
17:50:53 <b_jonas> so people can know if they should even check the docs
17:51:25 <kspalaiologos> `learn the bfasm The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:51:27 <HackEso> Learned 'bfasm': the bfasm The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:51:33 <kspalaiologos> `wisdom bfasm
17:51:34 <HackEso> bfasm//the bfasm The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:51:39 <kspalaiologos> lgtm
17:51:48 <b_jonas> `? bfasm
17:51:49 <HackEso> the bfasm The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:52:16 <kspalaiologos> wait
17:52:21 <kspalaiologos> it has been appended to the beginning
17:52:31 <kspalaiologos> what a derp lol
17:52:33 <fizzie> That's how it does.
17:52:45 <kspalaiologos> `? wiki
17:52:46 <HackEso> The wiki is at <https://esolangs.org/>.
17:52:55 <kspalaiologos> `? test
17:52:56 <HackEso> test failed. HackEgo-JUnit is not available.
17:52:57 <fizzie> The idea is that you can `learn things like "The foomajick is a thingummy.", and then `? foomajick will return that.
17:53:00 <b_jonas> kspalaiologos: try le//rn
17:53:05 <b_jonas> or slashlearn if you're me
17:53:14 <kspalaiologos> `le//rn
17:53:15 <HackEso> Usage: `le/[/]rn <key>//<wisdom>
17:53:28 <kspalaiologos> `le//rn bfasm //The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:53:30 <HackEso> Learned 'bfasm ': The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:53:39 <kspalaiologos> oops
17:53:42 <kspalaiologos> how do I remove the key?
17:53:45 <kspalaiologos> `le//rn bfasm//The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:53:47 <HackEso> Relearned 'bfasm': The brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:53:50 <b_jonas> But in this case, it should say something like "bfasm is the brainfuck assembler..."
17:53:53 <fizzie> `` forget 'bfasm '
17:53:55 <HackEso> Forget what?
17:53:55 <b_jonas> `? forget
17:53:56 <HackEso> forget? ¯\(°​_o)/¯
17:54:10 <kspalaiologos> `le//rn bfasm//bfasm is the brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:54:15 <HackEso> Relearned 'bfasm': bfasm is the brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:54:46 <b_jonas> `? bfasm
17:54:47 <fizzie> FWIW, you didn't need le//rn for *that*, the "a/an/the" is optional.
17:54:48 <HackEso> bfasm is the brainfuck assembler. Documentation and samples: https://raw.githubusercontent.com/KrzysztofSzewczyk/asmbf/master/doc/bfasm.doc
17:54:50 <b_jonas> `? wisdom
17:54:51 <HackEso> wisdom is always factually accurate, except for this entry, and, uh, that other one? It started with, like, an ø?
17:55:00 <b_jonas> fizzie: didn't have an "is" before
17:55:02 <kspalaiologos> can i specify newlines in <<<""?
17:55:14 <b_jonas> kspalaiologos: it's just bash syntax. you can use $'\n' if you want
17:55:19 <b_jonas> kspalaiologos: see my gcc command
17:56:46 <b_jonas> there are other solutions too of course
17:57:42 <kspalaiologos> I wonder will it build
17:57:51 <kspalaiologos> ``` bfasm <<<"mov r4,.F$'\n'mov r1,.0$'\n'mov r2,r1$'\n'lbl 1$'\n'out r1$'\n'out r2$'\n'out 32$'\n'mov r3,r1$'\n'eq_ r3,.9$'\n'jnz r3,2$'\n'mov r3,r2$'\n'eq_ r3,.9$'\n'jnz r3,3$'\n'mov r3,r1$'\n'eq_ r3,r4$'\n'jnz r3,5$'\n'lbl 6$'\n'mov r3,r2$'\n'eq_ r3,r4$'\n'jnz r3,4$'\n'inc r2$'\n'jmp 1$'\n'lbl 2$'\n'sub r4,5$'\n'mov r1,r4$'\n'add r4,5$'\n'jmp 1$'\n'lbl 3$'\n'sub r4,5$'\n'mov r2,r4$'\n'add r4,5$'\n'jmp 1$'\n'lbl 4$'\n'inc r1$'\n'mov r2,.0$'\n
17:57:51 <kspalaiologos> 'jmp 1$'\n'lbl 5$'\n'mov r3,r2$'\n'eq_ r3,r4$'\n'jz_ r3,6$'\n'"
17:57:52 <HackEso> bash: -c: line 0: unexpected EOF while looking for matching `"' \ bash: -c: line 1: syntax error: unexpected end of file
17:57:58 <kspalaiologos> crap, too big
17:58:09 <b_jonas> kspalaiologos: no no, put the whole thing in $'...'
17:58:19 <b_jonas> and then C-like backslash escapes will be interpreted in it
17:58:27 <b_jonas> works good unless you need literal backslashes in your program
17:58:36 <b_jonas> or literal apostrophes
17:58:43 <b_jonas> you have to escape those with a backslash
17:59:01 <kspalaiologos> <<<"$'mov r4,.F\nmov r1,.0\nmov r2,r1\nlbl 1\nout r1\nout r2\nout 32\nmov r3,r1\neq_ r3,.9\njnz r3,2\nmov r3,r2\neq_ r3,.9\njnz r3,3\nmov r3,r1\neq_ r3,r4\njnz r3,5\nlbl 6\nmov r3,r2\neq_ r3,r4\njnz r3,4\ninc r2\njmp 1\nlbl 2\nsub r4,5\nmov r1,r4\nadd r4,5\njmp 1\nlbl 3\nsub r4,5\nmov r2,r4\nadd r4,5\njmp 1\nlbl 4\ninc r1\nmov r2,.0\njmp 1\nlbl 5\nmov r3,r2\neq_ r3,r4\njz_ r3,6\n'"
17:59:09 <b_jonas> kspalaiologos: but if you have this many newlines, then <<<'....' tr / \\n is almost worth
17:59:10 <kspalaiologos> forgot to run the program
17:59:19 <b_jonas> kspalaiologos: no, drop the double quote
17:59:30 <b_jonas> or... hmm
17:59:39 <b_jonas> ``` echo "a$'b'c"
17:59:39 <HackEso> a$'b'c
17:59:48 <b_jonas> ``` echo a$'b'c
17:59:48 <HackEso> abc
17:59:57 <kspalaiologos> ``` bfasm <<<$'mov r4,.F/mov r1,.0/mov r2,r1/lbl 1/out r1/out r2/out 32/mov r3,r1/eq_ r3,.9/jnz r3,2/mov r3,r2/eq_ r3,.9/jnz r3,3/mov r3,r1/eq_ r3,r4/jnz r3,5/lbl 6/mov r3,r2/eq_ r3,r4/jnz r3,4/inc r2/jmp 1/lbl 2/sub r4,5/mov r1,r4/add r4,5/jmp 1/lbl 3/sub r4,5/mov r2,r4/add r4,5/jmp 1/lbl 4/inc r1/mov r2,.0/jmp 1/lbl 5/mov r3,r2/eq_ r3,r4/jz_ r3,6/' tr / \\n
17:59:58 <HackEso> ​+>+[#
18:00:15 <kspalaiologos> crap
18:00:16 <b_jonas> kspalaiologos: um no, tr is a program, you have to pipe its output to bfasm
18:00:33 <kspalaiologos> ``` tr / \\n | bfasm<<<$'mov r4,.F/mov r1,.0/mov r2,r1/lbl 1/out r1/out r2/out 32/mov r3,r1/eq_ r3,.9/jnz r3,2/mov r3,r2/eq_ r3,.9/jnz r3,3/mov r3,r1/eq_ r3,r4/jnz r3,5/lbl 6/mov r3,r2/eq_ r3,r4/jnz r3,4/inc r2/jmp 1/lbl 2/sub r4,5/mov r1,r4/add r4,5/jmp 1/lbl 3/sub r4,5/mov r2,r4/add r4,5/jmp 1/lbl 4/inc r1/mov r2,.0/jmp 1/lbl 5/mov r3,r2/eq_ r3,r4/jz_ r3,6/'
18:00:38 <kspalaiologos> wait
18:00:39 <kspalaiologos> I'm an idiot
18:00:57 <kspalaiologos> ``` tr / \\n <<<$'mov r4,.F/mov r1,.0/mov r2,r1/lbl 1/out r1/out r2/out 32/mov r3,r1/eq_ r3,.9/jnz r3,2/mov r3,r2/eq_ r3,.9/jnz r3,3/mov r3,r1/eq_ r3,r4/jnz r3,5/lbl 6/mov r3,r2/eq_ r3,r4/jnz r3,4/inc r2/jmp 1/lbl 2/sub r4,5/mov r1,r4/add r4,5/jmp 1/lbl 3/sub r4,5/mov r2,r4/add r4,5/jmp 1/lbl 4/inc r1/mov r2,.0/jmp 1/lbl 5/mov r3,r2/eq_ r3,r4/jz_ r3,6/' | bfasm
18:00:58 <HackEso> ​+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>[-]++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++<<<[-]++++++++++++++++++++++++++++++++++++++++++++++++>[-]<[>+<<+>-]<[>+<-]<]>+<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>.>.>>>++++++++++++++++++++++++++++++++.[-]<<[-]<<[>>+<<<+>-]<[>+<-]>>>>>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++<<[<<<<+>>>>-
18:01:07 <kspalaiologos> close
18:01:10 <b_jonas> kspalaiologos: but now you don't need the dollar sign
18:01:15 <b_jonas> because you're not using backslash escapes
18:01:48 <kspalaiologos> can I split the output amongst messages?
18:02:05 <kspalaiologos> ``` tr / \\n <<<$'mov r4,.F/mov r1,.0/mov r2,r1/lbl 1/out r1/out r2/out 32/mov r3,r1/eq_ r3,.9/jnz r3,2/mov r3,r2/eq_ r3,.9/jnz r3,3/mov r3,r1/eq_ r3,r4/jnz r3,5/lbl 6/mov r3,r2/eq_ r3,r4/jnz r3,4/inc r2/jmp 1/lbl 2/sub r4,5/mov r1,r4/add r4,5/jmp 1/lbl 3/sub r4,5/mov r2,r4/add r4,5/jmp 1/lbl 4/inc r1/mov r2,.0/jmp 1/lbl 5/mov r3,r2/eq_ r3,r4/jz_ r3,6/' | bfasm > tmp/test.b
18:02:07 <HackEso> No output.
18:02:12 <kspalaiologos> ``` bfi
18:02:13 <b_jonas> kspalaiologos: yes. save stuff in a file.
18:02:14 <HackEso> bash: bfi: command not found
18:02:16 <kspalaiologos> no brainfuck interpreter?
18:02:23 <HackEso> No output.
18:02:40 <b_jonas> kspalaiologos: didn't we go through that? we have a brainfuck interpreter in HackEso, one in fungot, and one in lambdabot
18:02:40 <fungot> b_jonas: i dont even know what you mean. interesting, thanks for the link
18:02:57 <kspalaiologos> hows it called?
18:02:59 <b_jonas> `! bf +++++++++++++++++++++[.+]
18:02:59 <HackEso> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
18:03:05 <kspalaiologos> beautiful
18:03:23 <b_jonas> needs a few more pluses
18:03:26 <kspalaiologos> how do i run a file though
18:03:27 <b_jonas> `! bf ++++++++++++++++++++++++++[.+]
18:03:28 <HackEso> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
18:03:32 <b_jonas> `? !
18:03:34 <HackEso> ​! is a syntax used in Haskell and Prolog for solving evaluation order problems.
18:03:36 <b_jonas> no
18:03:37 <b_jonas> `? `!
18:03:38 <HackEso> ​`! emulates the ! command of our former bot EgoBot. You write `! then the name of the language then a program, and it runs the program you give and returns the result. We used to use it to test out esoprograms in-channel all the time, but the set of included esolangs is fairly old now and so it's rarely used.
18:03:49 <fizzie> "/hackenv/interps/egobf/src/egobfi8 file.bf" for running a file.
18:04:00 <fizzie> That's what /hackenv/bin/bf is a wrapper around of.
18:04:12 <kspalaiologos> ``` /hackenv/interps/egobf/src/egobfi8 /tmp/test.b
18:04:13 <HackEso> ​/tmp/test.b: No such file or directory
18:04:18 <kspalaiologos> ``` /hackenv/interps/egobf/src/egobfi8 tmp/test.b
18:04:18 <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 A2 A3
18:04:25 <kspalaiologos> works
18:04:29 <kspalaiologos> like a charm
18:04:47 <b_jonas> fizzie: how do you use bin/bf though?
18:04:50 <fizzie> `` ls -l tmp/test.b
18:04:51 <HackEso> ​-rw-r--r-- 1 1000 1000 2902 Oct 23 18:02 tmp/test.b
18:05:04 <fizzie> Not as big as I expected.
18:05:17 <kspalaiologos> 2,9k
18:05:20 <kspalaiologos> not great not terrible
18:05:28 <kspalaiologos> I had to optimize my program for assembly size
18:05:31 <kspalaiologos> so it fits in irc message
18:05:43 <kspalaiologos> optimizing it for brainfuck size would shave off around 900 bytes
18:07:41 <kspalaiologos> how do i view my last contributions on wiki
18:07:48 <kspalaiologos> because I feel like i started something and didn't finish it
18:07:48 <fizzie> bin/bf just takes the first command-line argument (so all the input in `bf ...) and handles the ! notation, passing the part before as the file (well, pipe) for egobfi8 to execute, and the part after as the standard input.
18:08:22 -!- LKoen has quit (Remote host closed the connection).
18:08:23 <fizzie> `bf >>,[>,]<[<]>[.>>]<[>>]<<[.<<]!scrambled
18:08:24 <HackEso> srmldebac
18:08:34 <fizzie> ^unscramble srmldebac
18:08:34 <fungot> scrambled
18:08:39 <b_jonas> kspalaiologos: https://esolangs.org/wiki/Special:Contributions/ and enter your wiki username into the field
18:08:41 <fizzie> ^show unscramble
18:08:41 <fungot> >,[>,]<[<]>[.[-]>[>]<[.[-]<[<]]>]
18:10:03 <kspalaiologos> what's the hardware bot\'s running?
18:10:27 <b_jonas> ``` free # that much RAM
18:10:28 <HackEso> ​ total used free shared buff/cache available \ Mem: 252664 3924 245240 0 3500 243980 \ Swap: 0 0 0
18:10:45 <b_jonas> ``` df /hackenv # that much free space on the file system
18:10:46 <HackEso> Filesystem 1K-blocks Used Available Use% Mounted on \ none 24733776 13762932 9701340 59% /hackenv
18:10:48 <fizzie> Well, "hardware".
18:10:58 <kspalaiologos> emulated?
18:11:02 <fizzie> For hardware, it's pretty soft.
18:11:06 <b_jonas> ``` cat /proc/cpuinfo # and that's what the three layers of virtual machine lies to us about the cpu
18:11:07 <HackEso> processor: 0 \ vendor_id: User Mode Linux \ model name: UML \ mode: skas \ host: Linux dysnomia.zem.fi 4.9.0-5-amd64 #1 SMP Debian 4.9.65-3+deb9u2 (2018-01-04) x86_64 \ bogomips: 5112.62
18:11:08 <fizzie> It's emulated twice over.
18:11:13 <kspalaiologos> whoa what
18:11:15 <kspalaiologos> why twice
18:11:15 <b_jonas> it's still an x86_64, mind you
18:11:19 <b_jonas> only twice?
18:11:21 <b_jonas> no way
18:11:23 <b_jonas> it's three times
18:11:30 <kspalaiologos> oh gosh
18:11:35 <fizzie> b_jonas: I wasn't really counting the user/process/filesystem namespace thing.
18:11:37 <kspalaiologos> why would you do that
18:11:53 <b_jonas> once a full machine emulation by the hosting company to the machine that fizzie has root on,
18:12:03 <b_jonas> one layer of user-mode linux
18:12:09 <b_jonas> and I forgot what the third one was
18:12:21 <fizzie> systemd-nspawn, which is all Linux namespaces.
18:12:23 <b_jonas> oh yeah, once with linux namespaces
18:12:23 <kspalaiologos> so fizzie owns a vps
18:12:24 <b_jonas> yeah
18:12:30 <b_jonas> ok, I guess you're right, it's emulated only twice
18:12:34 <b_jonas> and sandboxed the third time
18:12:37 <b_jonas> not emulated
18:12:38 <kspalaiologos> and he then virtualizes the bot?
18:12:49 <b_jonas> kspalaiologos: yes
18:12:55 <kspalaiologos> fair enough
18:13:12 <b_jonas> plus runs some other things on the same server
18:13:14 <fizzie> It's the same system where the wiki's running, except the wiki's not in the container. (And obviously not in the UML either.)
18:13:20 <kspalaiologos> ah, yes
18:13:23 <b_jonas> is lambdabot running there too?
18:13:24 <kspalaiologos> so you "own" the wiki?
18:13:40 <fizzie> Well, I "maintain" it, nowadays.
18:13:41 <b_jonas> the esolangs logs also runs there usually
18:13:43 <kspalaiologos> wasn't the hosting donated?
18:13:45 -!- LKoen has joined.
18:13:46 <b_jonas> and the wiki notification too
18:13:54 <kspalaiologos> also, who is the person behind creating this community
18:14:00 <kspalaiologos> it's intriguing me
18:14:04 <b_jonas> and, in the future, zemhill will run there too
18:14:25 <fizzie> I mean, there's a lot of overlapping communities.
18:14:33 <b_jonas> creating? I don't know, the details are lots in the mists of time
18:14:47 <fizzie> The IRC channel grew out of the old esolangs mailing list, which grew out of the older esolangs mailing list.
18:15:00 <fizzie> I don't really remember the history of the wiki side of things.
18:15:05 <b_jonas> wait, so that mailing list that kspalaiologos mentioned, that really exists?
18:15:06 <kspalaiologos> told you we had a mailing list
18:15:22 <fizzie> There were two I knew of.
18:15:39 <kspalaiologos> g2g, I've got a few important things to do
18:15:42 <kspalaiologos> farewell
18:15:48 -!- kspalaiologos has quit (Quit: Leaving).
18:15:59 <b_jonas> I think ais523 or oerjan created the wiki so that people don't spam en.wikipedia with nonsense articles about esoteric languages
18:16:01 <fizzie> http://esoteric.sange.fi/archive/ is the newer one.
18:16:44 <fizzie> Graue was much involved in running the wiki, according to their article from 2005 to 2012.
18:17:26 <fizzie> Before the sange.fi mailing lists, there was another mailing list, but I don't really remember any details about that one.
18:17:39 <b_jonas> yeah, bust be, https://esolangs.org/w/index.php?diff=6 is the first edit there is
18:17:57 <b_jonas> and that's by Graue
18:19:30 <b_jonas> https://esolangs.org/w/index.php?title=Special:Log&type=rights says that ais523 was a wiki admin starting from 2007-03
18:19:32 <fizzie> Oh, right, I think the earlier mailing list was the catseye one.
18:20:12 <fizzie> At least in ~/archive/backup/older/colin/oldhome_old2.tar.gz:old2/Mail/lists/lang-eso I have few emails sent to list@catseye.mb.ca.
18:20:22 <fizzie> (I'm very organized with my files, as you can tell.)
18:20:36 <b_jonas> also oerjan was wiki admin since 2013-07 and you fizzie since 2017-03
18:20:45 <b_jonas> no
18:20:47 <b_jonas> mistype
18:20:51 <b_jonas> also oerjan was wiki admin since 2013-07 and you fizzie since 2014-03
18:22:29 <b_jonas> we need statues in the garden to know who founded what
18:23:07 <b_jonas> with plaques on them explaining things
18:23:11 <kmc> hello / good morning
18:23:31 <b_jonas> hi kmc
18:35:35 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
18:36:21 <b_jonas> so the wiki was created in 2005-04, but the channel is older, because we have logs for 2002-12
18:36:50 <b_jonas> and we do have a discord, despite that wisdom doesn't know about, because the wiki does know about an unofficial Esolangs Discord server
18:37:28 <int-e> `' discord
18:37:29 <HackEso> No output.
18:38:02 <b_jonas> `slashlearn discord//The unofficial Esolangs and code golf Discord server: https://discord.gg/3UXSK5p
18:38:06 <b_jonas> `? discord
18:38:09 <HackEso> Learned 'discord': The unofficial Esolangs and code golf Discord server: https://discord.gg/3UXSK5p
18:38:11 <HackEso> The unofficial Esolangs and code golf Discord server: https://discord.gg/3UXSK5p
18:38:13 <b_jonas> `q discord
18:38:14 <HackEso> No output.
18:38:41 <b_jonas> `? ioccc
18:38:42 <HackEso> The IOCCC is the Industrial Ordovician COBOL Conference Circuit. Not to be confused with OIC. See also ioccclist.
18:42:36 <lf94> http://leefallat.ca/notes/p-lang/strings-form-a-group.html - thoughts?
18:45:48 <fizzie> b_jonas: The mailing list archive has a few threads on starting up this channel.
18:45:49 <int-e> wtf is "hello"^-1 supposed to be
18:45:54 <fizzie> b_jonas: Search for "Esolang IRC channel" in http://esoteric.sange.fi/archive/2002-q4 for example.
18:46:39 <int-e> (never mind that examples are not proofs most of the time)
18:47:25 <int-e> lf94: you(?) should really stop at monoid, while you're ahead.
18:47:57 <lf94> int-e: it's supposed to be a 'negative' string
18:48:04 <b_jonas> int-e: a free one?
18:48:31 <lf94> int-e: you're right, I should not use the word proof at all.
18:48:51 <int-e> b_jonas: sure, that's a bonus
18:48:56 <b_jonas> `? string theory
18:48:57 <HackEso> string theory? ¯\(°​_o)/¯
18:49:15 <int-e> lf94: whatever it is, it's not a string
18:49:39 <b_jonas> `? string diagram
18:49:40 <HackEso> String diagrams would be useful in category theory, except they're unreadable due to being curled up in tiny dimensions. Taneb invented them anyhow.
18:50:21 <b_jonas> ``` cat wisdom/fu*aneb
18:50:22 <HackEso> The Fundamental Theorem of Taneb states that for all strings S, if S describes a thing not involving sex, then it is provable that Taneb invented the thing described by S; and, furthermore, that it is provable that there exists a string T that describes a thing not involving sex that Taneb did not invent.
18:50:23 <int-e> the monoid is also left- and right-cancellative
18:50:49 <b_jonas> `? computer
18:50:50 <HackEso> Computer is a language where numbers are strings of the characters '1' and '0'.
18:51:00 <lf94> int-e: It is a string
18:51:07 <lf94> All strings belong in some set S
18:51:19 <int-e> Yeah I'm out of this discussion.
18:51:20 <lf94> this includes "negative strings" that I just made up
18:51:37 <lf94> This is like saying -1 is not a number
18:51:52 <b_jonas> `quote jits
18:51:52 <int-e> It's not a natural number.
18:51:53 <HackEso> 564) <elliott> fizzie: It's like a JIT, if JITs were... strings.
18:51:54 <lf94> Why cant -"hello" be a string?
18:52:05 <lf94> Right
18:52:42 <int-e> lf94: Because strings aren't defined that way. Strings are finite sequences over some alphabet.
18:53:03 <int-e> But...
18:53:43 <lf94> So what, you want me to call "hello" a natural string, and -"hello" a Z-string or something ("integer string" would be extremely confusing)
18:54:04 <b_jonas> int-e: no no. they're members of the free monoid (semigroup with zero) over an alphabet. the non-algebraic definitions are for kindergarten.
18:54:06 <int-e> If you want to make a fool out of yourself, you're welcome to do that. If you want to re-invent free groups, that's also a viable route, but the objects will no longer be strings.
18:54:20 <lf94> ...
18:54:22 <lf94> I want to learn :)
18:54:48 <lf94> And I'm ok with being wrong - so you're saying check out free groups - ok.
18:55:20 <lf94> int-e: I understand what you mean by "these arent strings", as in, strings have a very absolute definition
18:55:36 <lf94> So what would you propose to call them?
18:55:47 <lf94> I guess anything other than strings...
18:59:44 <lf94> int-e: thank you :)
18:59:52 <lf94> So definitely a free group
19:02:30 <lf94> er
19:02:45 <lf94> actually what I defined does actually correspond to a group
19:03:36 <lf94> "thing is a sentence" * -"is" == -"is" * "thing is a sentence" == "thing a sentence"
19:09:07 <lf94> "An example of an element of the free group on two generators is ab^2a^(-1), which is not equal to b^2."
19:09:20 <lf94> But this is not the case in what I wrote
19:10:08 <lf94> "o" * "h" * "e" * "ll" * -"o" does equal "hell"
19:21:38 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
19:24:50 -!- hppavilion[1] has joined.
19:26:39 <ornxka> is forth an esoteric language
19:27:23 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
19:28:49 <imode> if that's the case then we've sent an esolang to space.
19:29:10 -!- ArthurStrong has joined.
19:29:30 <ornxka> hot damn
19:29:35 <ornxka> thats impressive
19:43:36 <arseniiv> <lf94> "o" * "h" * "e" * "ll" * -"o" does equal "hell" => seems trickier than free groups, yeah
19:43:56 <lf94> it just removes all instances of "o"
19:44:01 <lf94> pretty simple imo
19:44:09 <arseniiv> if there are many instances of "o" in that *string, which ones would be removed when * -"o"?
19:44:11 <imode> how would you remove just one 'o'.
19:44:15 <arseniiv> ah, all
19:44:22 <lf94> you dont
19:44:24 <lf94> @ imode
19:44:35 <imode> brutal. so there are find/replace operations that are not possible.
19:44:46 <lf94> find/replace is something all on its own.
19:44:51 <lf94> That's why I ask the question...
19:44:56 <lf94> At the bottom of my writing
19:44:59 <arseniiv> I wanted to say “rigid” too :D
19:45:09 <lf94> "Maybe strings should be promoted to a more restrictive structure?"
19:45:10 <imode> apart from reordering the operations.
19:45:31 <lf94> Or maybe strings alone are not useful
19:45:43 <lf94> I wanted to explore it with you guys :)
19:46:00 <arseniiv> lf94: what do you mean, more restrictive?
19:46:07 <lf94> more laws to satisfy
19:46:13 <imode> you can reorder the operations such that any 'o' you want to remove just has to be affixed with a * -'o'.
19:46:22 <lf94> So our new structure would "require to implement find/replace"
19:46:33 <arseniiv> ah I see
19:46:43 <imode> so 'h' * 'e' * 'l' * 'l' * 'o' * -'o' * 'o' wouldn't be "helloo", it'd be "hello".
19:46:53 <imode> but this implies an ordering of an operation.
19:46:53 <lf94> Yes, then we have a free group
19:47:08 <imode> I don't believe you do. any deviation from that order gives you a different result.
19:47:22 <lf94> "o" * "h" * -"o" then equals what?
19:47:34 <imode> 'h'.
19:47:41 <lf94> In a free group...it equals "oh-o"
19:47:41 <arseniiv> so we need to have some good operations so that find/replace is neatly expressible?
19:47:54 <lf94> in a group, by MY definition, it's "h".
19:48:14 <lf94> arseniiv: yes, preferably 1 operation
19:48:22 <arseniiv> lf94: I think imode proposes deleting the last one occurence
19:48:33 <imode> not really. stepwise application.
19:48:34 <lf94> _ah_
19:48:40 <arseniiv> then it would be between free group and deleting all occurrences
19:48:56 <lf94> "hello" ? ("el","zz")
19:49:02 <lf94> But now we are creating a new thing
19:49:12 <lf94> intersection of two sets
19:49:16 <arseniiv> yes, preferably 1 operation => but now we already got two, * and -
19:49:17 <lf94> strings and some pair type
19:49:21 <imode> 'h' * 'e' -> "he". "he" * 'l' * 'l' -> "hell". "hell" * 'o' -> "hello". "hello" * -'o' -> "hell". "hell" * 'o' -> "hello".
19:49:27 <lf94> arseniiv: I mean 1 additional operation :)
19:49:57 <lf94> imode: now what about "ohell" * -"o" ?
19:49:57 <imode> strings with concatenation don't form a group.
19:49:57 <arseniiv> we can use string zippers
19:50:09 <imode> because if they did, then "hello" == "olleh".
19:50:17 <lf94> imode with concat alone, just a monoid, yes
19:50:24 <arseniiv> I have an uncooked esolang Punctree which deals with tree zippers
19:50:26 <lf94> errr?
19:50:32 <arseniiv> it has some nice operations
19:50:37 <lf94> hello is a different string to olleh
19:50:55 <lf94> string zipper?
19:50:57 <imode> but if you're defining a string to be a result of several `*`s, it can't be if it's a group.
19:50:58 <arseniiv> like substitution, which is inconceivable for strings without holes
19:51:14 <lf94> imode: you've lost me :)
19:51:19 <arseniiv> string zipper? => like list zipper, but for list of chars
19:51:32 <lf94> I just remember zipper is some fp structure or function
19:51:45 <arseniiv> yeah
19:51:50 <imode> ah, I'm wrong. the ordering is relevant, so I'm wrong.
19:52:11 <arseniiv> just a shameless self-something: https://esolangs.org/wiki/Punctree and there are a couple of links added by IIRC int-e
19:52:22 <arseniiv> to pages about zippers specifically
19:52:27 <lf94> I don't get why people say "Shameless plug"
19:52:36 <imode> plugging yourself is seen as shameless.
19:52:43 <imode> s/shameless/shameful
19:52:44 <lf94> Right? So why say it at all?
19:52:45 <arseniiv> so my clumsy description would get more comprehensive
19:52:58 <imode> shameless self promotion fits in the same vein.
19:53:08 <arseniiv> shameless composition with the channel’s continuation
19:53:12 <lf94> It's like saying "excuse my rudeness" *does something extremely rude*
19:53:14 <arseniiv> is it delimited one
19:53:38 <lf94> IMO linking to your own things is ok. In fact I encourage it, because people dont share their own stuff enough
19:53:39 <arseniiv> lf94: or knocking and then opening the door immediately
19:53:45 <lf94> haha, yeah
19:53:47 <lf94> that's a goodone
19:54:07 <arseniiv> lf94: I agree, people should share their stuff with me so I’ll be a good borg
19:54:11 <arseniiv> we*
19:54:20 <lf94> arseniiv: this lang is too alien for me right now :D
19:54:32 <lf94> ζ↙
19:54:39 <lf94> brain=exploded
19:54:46 <arseniiv> okay but you can believe that there are many neat operations to do on zippers!
19:54:54 <lf94> sure! :D
19:54:55 <arseniiv> yeah I like APL too
19:55:06 <arseniiv> not the real APL, but nonetheless
19:55:31 <arseniiv> then some day you’ll make something with string zippers maybe
19:56:00 <lf94> What are some math operators that take more than 2 operands
19:56:20 <lf94> maybe strings need to be "lifted" to something like a list
19:57:04 <arseniiv> strings are already lists, of characters
19:57:21 <arseniiv> I probably misunderstood
19:57:33 <lf94> ["hello ", name, " how are you?"] * ["", " with a hat", ""] == "hello lf94 with a hat how are you?"
19:57:59 <lf94> imo this is a pretty cool
19:58:17 <arseniiv> oh format strings!
19:58:20 <lf94> getting closer to replace i think
19:58:34 <lf94> So now * is operating on each element
19:58:39 <lf94> like matrix operations
19:59:34 -!- oerjan has joined.
20:00:05 <lf94> ["hello ", name, " how are you?"] * ["", -"lf94" * "bob", ""] == "hello bob how are you?"
20:00:12 <lf94> very basic replace.
20:00:37 <lf94> the list gives control of position
20:02:07 <lf94> syntax sugar would be required to specify "delete everything"
20:02:26 <lf94> Which would be written as -"a" * -"b" * ... I think
20:03:05 <lf94> Mmm, no
20:03:55 <lf94> "a" * -"a" == ""; "a" * "a" == "aa"; thus -"a" * -"a" = -"aa" ?, which would remove all instances of 2 a's
20:04:13 <oerjan> <shachaf> b_jonas: what's all that about <-- i'd say b_jonas is showing scan-dalous behaviour there
20:05:00 <oerjan> you'd think our resident poetry scanner would know better
20:08:10 <b_jonas> what? "resident poetry scanner"?
20:08:12 <b_jonas> who is that?
20:08:17 <oerjan> you
20:09:06 <b_jonas> why?
20:09:11 <oerjan> who else uploads entire poetry pooks to wikimedia commons...
20:09:21 <b_jonas> those are real poetry, not English stuff
20:09:50 <oerjan> must resist... urge to `addquote
20:10:09 <oerjan> that's no excuse for not knowing scansion
20:10:23 <lf94> man this is cool. "" * "" = ""; "" * -"" = -""; thus "a" * -"" = -"a"; which means -"" will remove everything when applied to any other string.
20:11:09 <oerjan> is this a proper ring twh
20:13:27 <b_jonas> oerjan: English poetry isn't real poetry, they just call it poetry because it's the best replacement that they have for real poetry, which is impossible for English
20:13:35 <b_jonas> and I don't understand how "scansion" or whatever works in it
20:13:56 <b_jonas> apparently it depends on how English pronunciation is supposed to work, which not only I don't understand, but other people don't either
20:14:09 <b_jonas> or at least different people understand it differently
20:14:36 <oerjan> i understand it perfectly well, until i look it up in wiktionary and see i was wrong, or at least a minority
20:14:51 <b_jonas> oerjan: don't believe Wiktionary
20:15:12 <oerjan> that too
20:16:35 <b_jonas> oerjan: try CAAPR, it's a reasonably well done pronunciation list
20:16:46 <b_jonas> a small one, so only common words are in it
20:16:55 <b_jonas> but it's good quality and consistent and well thought out
20:16:59 <b_jonas> even if the notation is a bit weird
20:17:17 <oerjan> "CAAPR: the Comprehensive & Adaptable Aperture Photometry Routine"
20:17:29 <oerjan> i'm sure that will help with pronunciation.
20:18:01 <b_jonas> http://www.wyrdplay.org/AlanBeale/CAAPR-ref.html
20:18:52 <b_jonas> it's compiled by the author of 12dicts ("http://wordlist.aspell.net/12dicts/")
20:19:27 <b_jonas> I mentioned it on this channel a few months ago
20:20:22 <b_jonas> but as for how you go from there to English poetry, I've no idea
20:22:05 <oerjan> i already regret starting this conversation hth
20:22:21 <b_jonas> sorry
20:22:36 <b_jonas> as for the original topic, feel free to edit that higgedly wisdom of course
20:24:08 <b_jonas> btw, I think my compact camera finally died
20:24:12 <b_jonas> I'll have to buy a new one
20:44:56 -!- hppavilion[1] has quit (Remote host closed the connection).
20:53:59 -!- MDude has joined.
20:54:23 <oerjan> <b_jonas> hppavilion[1]: except the hg log is truncated, I don't know why, so if you look way back in the revisions, you won't find the oldest stuff <-- GregorR used to reset history occasionally in the beginning, before we started depending on it being accurate
20:54:55 <oerjan> i think the last time was in 2013 or so
20:54:58 -!- hppavilion[1] has joined.
20:55:08 <oerjan> `dowt zzo38
20:55:10 <HackEso> 0:2012-02-16 Initïal import.
20:55:26 <oerjan> hm maybe 2012 then
21:05:05 <b_jonas> ``` hg log -T "{date|shortdate}" -r 1
21:05:07 <HackEso> 2012-02-19
21:05:13 <b_jonas> yeah
21:05:19 <b_jonas> (I don't trust revision 0)
21:15:58 <b_jonas> oh, unrelated video game stuff. I think the Game Boy could easily handle a tetris game where the blocks are 7 pixel tall rather than 8. you'd need tiles that combine parts of two blocks in different ways, but it fits in the tiles array with three colors of blocks, and I think the CPU could handle it too (you'd probably need to use sprites for the currently falling block, and update the tiles only during
21:16:04 <b_jonas> lockdown)
21:16:38 <b_jonas> the problem with the Game Boy tetris game is that there are only 18 rows, because 20 rows of 8 pixels don't fit in the screen, but you really want at least 20 rows for a tetris game
21:16:51 <b_jonas> and 7 pixels tall, even if unnatural for a game boy game, could do that
21:18:47 <oerjan> <b_jonas> kspalaiologos: cp? don't you use symlinks? <-- you should not put symlinks to tmp/ , everything there is potentially irreversibly deleted at any time
21:20:29 <b_jonas> oerjan: yes, I misread the commands. I realized later.
21:20:48 <oerjan> ah
21:21:04 <b_jonas> oerjan: the cp was to install the program from the build directory; I assumed it was already installed under /hackenv/lib and he's just linking it to /hackenv/bin
21:21:21 <b_jonas> but it's a single-file executable, so the cp was all it took to install
21:39:05 -!- ArthurStrong has quit (Quit: leaving).
21:40:21 <oerjan> <b_jonas> I think ais523 or oerjan created the wiki so that people don't spam en.wikipedia with nonsense articles about esoteric languages <-- i think you make up things hth
21:42:23 <oerjan> also, some people try to do that anyway
21:43:48 <oerjan> and the actual wikipedia article about esolangs keeps growing dubious examples but i don't dare to prune it because i know someone might be inspired to delete the examples i actually _like_ that don't have their own articles (like Piet)
21:44:12 <oerjan> although some other people have pruned on occasion
21:47:43 <oerjan> `? #esoteric
21:47:44 <HackEso> ​#esoteric is the only channel that exists. After monqy left it became slightly off-centër. It's a 7-codimensional hyperenchilada about 30 m (100 ft) across. oerjan seems to be making a lawn in the northern part, but it keeps getting dug up by free ranging moons. Currently located in the Atlantis Exclusion Zone.
21:49:30 <oerjan> `cat bin/q
21:49:31 <HackEso> quote "$@"
21:56:11 <oerjan> `? forth
21:56:13 <HackEso> Since Biblical times, Forth has been the go-to language for multiplication.
22:01:44 -!- sftp has quit (Excess Flood).
22:02:10 -!- sftp has joined.
22:02:38 <b_jonas> ``` set -e; cd wisdom; printf "%s// " *eso*
22:02:38 <HackEso> ​#esoteric// #esoteric-blah// esosc// esoteric// esoteric files archive// esoterra// esowiki// hackeso// ingesorgeco// mesolang//
22:04:21 <b_jonas> `? esoteric
22:04:22 <HackEso> This channel is about programming -- for the other kind of esoterica, try #esoteric on EFnet or DALnet.
22:04:49 <b_jonas> ^ these channels, the ones mentioned in welcome, do we know if they still exist? I wonder if we're sending people to channels that have been gone for five years or something
22:05:05 <b_jonas> perhaps we should send a volunteer to check once every decade
22:05:51 <b_jonas> ``` \? welcome | sed 's/.*((//'
22:05:52 <HackEso> Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <https://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
22:05:59 <b_jonas> argh
22:07:42 <lf94> arseniiv: as I was washing dishes, I remembered what a zipper was.
22:07:50 <lf94> find and replace is complete now.
22:08:24 <lf94> (("hello my big world" % " ") ? "big") * ["", -"", ""] * ["", "small", ""] == "hello my small world"
22:08:47 <lf94> % is split, ? is find (and returns a zipper of [before, found, after]), and the rest we talked about.
22:09:03 <arseniiv> yay!
22:09:15 <lf94> I think it's also impossible for the line to fail
22:09:24 <lf94> if "big" isnt found, it'll use empty string
22:09:29 <lf94> meaning nothing is replaced
22:10:40 <arseniiv> also maybe add composition of two or several zippers, it would just nest them like a fir
22:11:16 <lf94> Oh yeah and ! is join
22:11:23 <arseniiv> and walks left/right
22:11:57 <arseniiv> hm how could one insert between fragments?
22:12:14 <lf94> example?
22:12:41 <arseniiv> like, insert something right before "big" in that example
22:12:52 <arseniiv> but leave "big" intact
22:13:09 <arseniiv> ah, we could replace it with "somethingother big"
22:13:50 <arseniiv> (but maybe this profits from a shorter syntax)
22:13:59 <arseniiv> will go sleeping soon
22:14:54 <oerjan> <b_jonas> perhaps we should send a volunteer to check once every decade <-- sounds good, i'm sure it's been less than that.
22:18:56 <b_jonas> oerjan: indeed, less than a decade yet
22:20:45 <lf94> arseniiv: yeah exactly
22:20:59 <lf94> or, er, no!
22:21:10 <lf94> just this
22:21:27 <lf94> ["", "somethingother", ""] * (("hello my big world" % " ") ? "big")
22:21:35 <lf94> so awesome
22:22:39 <b_jonas> ``` hg log -T "{rev}:{date}:{desc}\n" -r 378 # this was the commit that first added dalnet
22:22:39 <lf94> so that covers find/replace/insert/delete
22:22:40 <HackEso> 378:1336334759.00:<elliott> learn Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
22:22:54 <b_jonas> ``` hg log -T "{rev}:{date|shortdate}:{desc}\n" -r 378 # with date
22:22:55 <HackEso> 378:2012-05-06:<elliott> learn Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
22:23:06 <b_jonas> ``` hg log -T "{rev}:{date|shortdate}:{desc}\n" -r 5372 # and this much more recent one added efnet
22:23:07 <HackEso> 5372:2015-05-24:<oerjan> sed -i \'s/on irc.*/on EFnet or DALnet.)/\' wisdom/welcome
22:23:13 <b_jonas> so both less than a decade ago
22:23:15 <lf94> I guess I can make a text editor now
22:25:46 <b_jonas> then we should schedule the checking of the dalnet one to 2022
22:26:09 <b_jonas> do we have an #esoteric calendar?
22:31:14 <arseniiv> lf94: :)
22:33:28 <arseniiv> <b_jonas> do we have an #esoteric calendar? => tomorrow is the day of eicosapentation of common/uncommon radices!
22:33:40 <arseniiv> (8 is the common one, 10 is uncommon)
22:34:33 <arseniiv> established since, and up to, eleven
22:36:54 <b_jonas> arseniiv: you mean like, tomorrow is the 25th day of the month?
22:37:06 <b_jonas> I can't make sense of what you mean by all those other numbers
22:37:12 <b_jonas> `ddate
22:37:13 <HackEso> Today is Sweetmorn, the 4th day of The Aftermath in the YOLD 3185
22:37:26 <arseniiv> I meant to write “comment/uncomment radices” but that’s ungrammatical and too radical
22:37:46 <arseniiv> <b_jonas> I can't make sense of what you mean by all those other numbers => why, you know that october is the eight month
22:38:01 <arseniiv> eighth*
22:38:15 <arseniiv> there’s even a helpful hth in there
22:38:19 <arseniiv> :o
22:38:45 <b_jonas> `? hth
22:38:46 <HackEso> hth ([ʰtʰh̩]) is help received from a hairy toe. It is not at all hambiguitous.
22:39:06 -!- FreeFull has quit.
22:39:26 <arseniiv> tomorrow is the 25th day of the month => that’s not esoteric, contrary it’s pretty obvious
22:40:28 <arseniiv> I don’t know if I’m joking or not
22:40:48 <b_jonas> `? title
22:40:49 <HackEso> Titles J. K. Rowling had specifically denied on her webpage would be the titles of the sixth or seventh Harry Potter book are: Harry Potter and the{ Green Flame Torch, Mountain of Fantasy, Fortress of Shadows, Forest of Shadows, Graveyard of Memories, Pyramids of Furmat, Pillar of Storgé, Toenail of Icklibõgg}.
22:41:57 <arseniiv> `? ddate
22:41:58 <HackEso> ddate? ¯\(°​_o)/¯
22:43:33 <arseniiv> hm I wasn’t attentive when read how others asked to show help on commands
22:52:32 <fizzie> Arguably, ddate isn't really a HackE[sg]o command.
22:52:37 <fizzie> It's just the standard ddate.
22:52:46 <fizzie> `which ddate
22:52:46 <HackEso> ​/usr/bin/ddate
22:54:20 -!- ArthurStrong has joined.
22:54:37 <fizzie> If I had /var mounted, we could probably look which package it was coming from, but for some reason the standard umlbox base mount points only include /usr, /bin, /sbin, /lib, /lib32, /lib64, /etc/alternatives and /dev.
22:55:20 <fizzie> I guess a lot of /var doesn't really make sense inside the box though, while having a shared /usr is more normal.
23:10:50 -!- arseniiv has quit (Ping timeout: 240 seconds).
23:45:44 -!- heroux has quit (Ping timeout: 268 seconds).
23:50:35 <Sgeo__> What name would make sense for this operation? a?b = ln(e^a + e^b)
23:50:47 <Sgeo__> By analogy with a*b = ln(e^a * e*b)
23:51:07 <Sgeo__> a?a = a+1. Almost but not quite like making addition repeated '?'
23:54:18 <fizzie> a?a = ln(e^a + e^a) = ln(2e^a) = ln(e^a) + ln(2) = a + ln(2), not a + 1.
23:56:40 -!- oerjan has quit (Quit: Nite).
23:56:44 <Sgeo__> Uh. Pretend I said a?b = log_2(2^a + 2^b)
23:57:01 <Sgeo__> >.>
23:58:27 <Sgeo__> Hmm might be fun to find a base such that a?a = a+2
←2019-10-22 2019-10-23 2019-10-24→ ↑2019 ↑all