< 1553041699 271639 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1553041781 265567 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :what's this < 1553041862 669495 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 268 seconds < 1553041866 514011 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life < 1553042052 540518 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I assume the gist of the joke was that score. < 1553042107 93068 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There's a web submission form at https://zem.fi/bfjoust/ although you don't get to use your nickname, all programs submitted from there are "web.*". < 1553042136 47658 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ah it's a bfjoust result < 1553042211 520021 :b_jonas!~x@catv-176-63-24-16.catv.broadband.hu QUIT :Quit: leaving < 1553043308 902897 :Sgeo__!~Sgeo@ool-18b98dd9.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1553043374 98401 :Sgeo!~Sgeo@ool-18b98dd9.dyn.optonline.net JOIN :#esoteric < 1553045335 971473 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric > 1553046248 833182 PRIVMSG #esoteric :14[[07Talk:String rewriting paradigm14]]4 M10 02https://esolangs.org/w/index.php?diff=60535&oldid=60533 5* 03Salpynx 5* (-2) 10Undo revision 60533 by [[Special:Contributions/Salpynx|Salpynx]] ([[User talk:Salpynx|talk]]) actually it's more interesting in the original form, and prob not a bug < 1553046505 523628 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`` cp src/hello*.c tmp; cd tmp; gcc -o hello hello.c; gcc -o hello2 hello2.c < 1553046507 512735 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :No output. < 1553046516 499021 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`ls tmp < 1553046517 32085 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :UnicodeData.txt \ a \ b \ a.c \ a.out \ hello \ hello.c \ hello2 \ hello2.c \ paste \ perm10 \ rakudo-star-2018.06 \ spline \ spout \ spout.raw < 1553046528 487199 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`tmp/hello < 1553046528 871018 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :Hello, world! < 1553046531 263410 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`tmp/hello2 < 1553046531 654547 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :No output. < 1553046549 104734 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`cat tmp/hello2.c < 1553046549 487268 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :const char main[] = "AXAYAZA[A\\ATX-pppp-0```- ///P^VTXH10XP4>40PZ414>P_\x0f\x05XATASARAQAP\xc3Hello, world!\n"; < 1553046610 674824 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That always makes me think of AT commands for some reason. < 1553046617 830573 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I think it's the "ATX-pppp-0" part. < 1553046655 539283 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :hello2.c seems to have bitrotted. i was trying to test them because of a question in PPCG chat. < 1553046749 92179 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Back in the olden (or at least moderately moldy) days, you could use "ping -p 2b2b2b415448300d0a" to disconnect people from IRC. < 1553046784 739346 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`file tmp/hello2 < 1553046785 256858 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :tmp/hello2: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=a83df14d01723d512f38d7545549f6275133454f, not stripped < 1553046803 326309 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`tmp/hello2 < 1553046803 734315 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :No output. < 1553046828 885053 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`url tmp/hello2.c < 1553046829 452603 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/tmp/hello2.c < 1553046886 286545 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`cat tmp/hello2.c < 1553046886 768035 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :const char main[] = "AXAYAZA[A\\ATX-pppp-0```- ///P^VTXH10XP4>40PZ414>P_\x0f\x05XATASARAQAP\xc3Hello, world!\n"; < 1553046906 525080 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :write(1, 0xd7ef86c0, 14) = -1 EFAULT < 1553046912 94253 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I wonder what's happened to it. < 1553046975 366703 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Maybe it could even be collateral damage from some security feature. On my home system, it just plain segfaults except with "-fuse-ld=gold". (With that, it has the same behavior of not crashing but just not printing anything.) < 1553047004 441831 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :hm < 1553047029 584792 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :the originals were put in the bot back in 2013 by Jafet < 1553047050 598322 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :i don't remember if e made them or copied them from elsewhere < 1553047071 69391 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The disassembled code looks kinda odd, but printable x86 always does. < 1553047096 168682 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :it's not entirely prinable < 1553047102 139850 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :*+t < 1553047130 941671 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Oh, you're right. I wonder why it's that long then. < 1553047183 285145 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`` cd tmp; gcc -O2 -o hello2 hello2.c < 1553047184 166904 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :No output. < 1553047193 456218 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`tmp/hello2 < 1553047193 853608 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :No output. < 1553047212 497963 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh well duh < 1553047224 816822 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :it's not like gcc understands what's happening < 1553047277 288248 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I'm not sure how it's getting that address for write. I was expecting the usual position-independent tricks (or on x86-64 it's just a lea with rip-relative addressing, which isn't a really a trick) but it just does a bunch of pushing, popping and math. < 1553047431 464590 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`cat tmp/hello.c < 1553047431 891602 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :const short main[] = {18517,58761,49201,49801,49407,51081,3816,0,18432,27749,28524,8236,28535,27762,8548,24074,3762,1295,15536,-207,1295}; < 1553047453 211111 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :they're not accidentally the same? < 1553047540 840413 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :No, they look entirely different. < 1553047578 11471 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's rather simpler, and uses the classic position-independent trick (call+pop). < 1553047607 401483 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's still a little bit more complicated than necessary (since it also exits via syscall), but less so than hello2. < 1553047630 332143 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ic < 1553047867 758038 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Well, there's only 32-bit displacement for RIP-relative addressing, so you'd get a few 0s in there, ... but it's not like that's an issue for a short[]. < 1553048085 161558 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :oh maybe that's why it's not a string constant < 1553048103 244019 :arseniiv!~arseniiv@136.169.202.72 QUIT :Ping timeout: 245 seconds < 1553048383 269737 :olsner!~salparot@c80-217-180-83.bredband.comhem.se QUIT :Ping timeout: 246 seconds < 1553048453 396749 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :You can put zero bytes in a string literal. < 1553048460 678309 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I mean, even in the middle, not just the end. < 1553048468 687371 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` echo 'const char main[] = "1\xc0\xff\xc0""1\xff\xff\xc7H\x8d""5\x07\0\0\0""1\xd2\xb2\x0e\x0f\x05\xc3""Hello, world!\n";' | gcc -x c - -o /tmp/hello3 && /tmp/hello3 < 1553048469 526863 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :Hello, world! < 1553048477 942855 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's exceedingly ugly, though. < 1553048783 762228 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :in freefall, one of those toys looks a little familiar. < 1553048819 57574 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :fancy < 1553049255 501265 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess if you do the numbers approach from hello.c, and the sort of straightforward code you'd write under normal circumstances, it's not too bad. < 1553049259 734557 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` echo 'const long main[] = {5244310924189237688, 1061160662199711117, 7298297622647799808, 8245940422806826092, 169960556};' | gcc -x c - -o /tmp/hello3 && /tmp/hello3 < 1553049260 558792 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :Hello, world! < 1553049454 775462 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Another reason why the hello2.c code might've rotten: it starts with a lot of pops, it might be making some assumptions about the initial state of the stack. < 1553049486 802429 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :In fact, that might be how it's arriving at the address of the string to write, and maybe ASLR or something has changed. < 1553049709 141144 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Also the nonprintable parts (\x0f\x05 and \xc3) of hello2 are the "syscall" and "ret" instructions, which are pretty hard to work around when you don't have any read-write-execute memory. So I guess it's trying to be maximally printable under those constraints. < 1553050445 92033 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :mhm < 1553051488 392498 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite < 1553053954 165110 :olsner!~salparot@c80-217-180-83.bredband.comhem.se JOIN :#esoteric < 1553055470 377682 :Yevano_!~Yevano@107-199-161-201.lightspeed.sndgca.sbcglobal.net JOIN :#esoteric < 1553055652 230072 :Yevano!~Yevano@107-199-161-201.lightspeed.sndgca.sbcglobal.net QUIT :Ping timeout: 245 seconds < 1553055788 37425 :moei!~moei@softbank221078042071.bbtec.net JOIN :#esoteric < 1553055808 727512 :Yevano_!~Yevano@107-199-161-201.lightspeed.sndgca.sbcglobal.net NICK :Yevano < 1553056029 97609 :danieljabailey!~danieljab@cpc75709-york6-2-0-cust725.7-1.cable.virginm.net JOIN :#esoteric < 1553057177 75414 :danieljabailey!~danieljab@cpc75709-york6-2-0-cust725.7-1.cable.virginm.net QUIT :Ping timeout: 245 seconds < 1553059886 492788 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1553060609 388312 :adu!~ajr@pool-70-110-26-251.washdc.fios.verizon.net JOIN :#esoteric < 1553061925 408883 :Yevano!~Yevano@107-199-161-201.lightspeed.sndgca.sbcglobal.net QUIT :Ping timeout: 255 seconds < 1553064794 154174 :TheWild!~Thunderbi@hgv18.internetdsl.tpnet.pl JOIN :#esoteric < 1553065719 528095 :adu!~ajr@pool-70-110-26-251.washdc.fios.verizon.net QUIT :Read error: Connection reset by peer < 1553069698 243674 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 246 seconds < 1553069932 249560 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1553070741 406654 :adu!~ajr@pool-70-110-26-251.washdc.fios.verizon.net JOIN :#esoteric < 1553072870 48038 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esoteric :I think I may be losing track of what's going on in GG < 1553074169 954213 :adu!~ajr@pool-70-110-26-251.washdc.fios.verizon.net QUIT :Quit: adu < 1553076479 78303 :AnotherTest!~turingcom@ptr-82l26zfgz2ng38e2jxt.18120a2.ip6.access.telenet.be JOIN :#esoteric < 1553076785 195504 :nfd9001!~nfd9001@2601:602:8500:d0d1:1940:1e0c:3911:7f27 QUIT :Ping timeout: 268 seconds < 1553079590 579940 :TheWild!~Thunderbi@hgv18.internetdsl.tpnet.pl PRIVMSG #esoteric :do we have PHP equivalent of JSFuck? < 1553079678 872709 :nfd9001!~nfd9001@c-73-157-90-101.hsd1.wa.comcast.net JOIN :#esoteric < 1553079684 481270 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :i don't think it will be that easy < 1553079687 145337 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :https://bolknote.ru/all/4065/ < 1553079695 882930 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :the autocasts of php are much less wild < 1553080216 173533 :TheWild!~Thunderbi@hgv18.internetdsl.tpnet.pl PRIVMSG #esoteric :thanks rain1 < 1553080402 218596 :joast!~rick@cpe-98-145-132-215.natnow.res.rr.com QUIT :Ping timeout: 245 seconds < 1553085002 185728 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 245 seconds < 1553085104 8353 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1553086469 964410 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 246 seconds < 1553086607 355833 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1553087855 834961 :heroux!sandroco@gateway/shell/insomnia247/x-utidlobdczmxljhu QUIT :Read error: Connection reset by peer < 1553087895 312857 :heroux!sandroco@gateway/shell/insomnia247/x-sfsuymeapsleuqmo JOIN :#esoteric < 1553088129 168193 :arseniiv!~arseniiv@136.169.202.72 JOIN :#esoteric < 1553090452 939140 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 JOIN :#esoteric < 1553090464 780790 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :fizzie: sure, but those start with "+++AT", and that hello world thing doesn't have that < 1553090519 50038 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :have you tried compiling that to x86_32 by the way? IIRC the original HackEso used that. < 1553090954 890799 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Yes, didn't work at least out of the box -- it uses "syscall", which IIRC is only available as a Linux system call convention on x86-64. The ones available on x86-32 are the int 0x80 and sysenter paths. < 1553091355 338206 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :fizzie: do you mean the syscall instruction, or the syscall libc macro/function? < 1553091393 19603 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and yes, the syscall instruction is only available on x86_64 < 1553091473 303577 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ah I see. it has \x0f\x05 in it, which is the syscall instruction, and you suppose that gets ran < 1553091484 655993 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :in that case, have you tried to compile it x86_64? < 1553091620 564852 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ah I see < 1553092644 496744 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 QUIT :Quit: http://www.kiwiirc.com/ - A hand crafted IRC client < 1553092702 252379 :Sgeo!~Sgeo@ool-18b98dd9.dyn.optonline.net QUIT :Ping timeout: 245 seconds < 1553093995 993302 :TheWild!~Thunderbi@hgv18.internetdsl.tpnet.pl QUIT :Quit: TheWild < 1553094321 400057 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Remote host closed the connection < 1553094842 604781 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1553095401 362442 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 JOIN :#esoteric < 1553095439 250164 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :You know how there are some programs and websites where if you participate, you can upload a small avatar image associated with your user account, and then the website displays it in multiple small sizes, right? < 1553095591 561158 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :The problem is that since multiple sizes are involved, such as 32x32 and 24x24 and 16x16 in the case of StackExchange, or 30x30 circular and 24x24 circular in the case of another example, it's hard to make an image that looks good when resized to each of those sizes (plus sometimes a large size). < 1553095634 490357 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :It would be nice if you could just upload separate images for each resolution, but obviously websites don't want to just allow it, because people could then upload deliberately very different images to confuse others. < 1553095649 727179 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I don't think there's a good solution for this. < 1553095690 618566 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :When more trust is involved, such as for windows icons, you are allowed to use different images at different resolutions. < 1553096984 531498 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 QUIT :Quit: http://www.kiwiirc.com/ - A hand crafted IRC client > 1553097403 360592 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03Sygmei2 5* 10New user account > 1553097732 855157 PRIVMSG #esoteric :14[[07Esolang:Introduce yourself14]]4 10 02https://esolangs.org/w/index.php?diff=60536&oldid=60531 5* 03Sygmei2 5* (+75) 10/* Introductions */ > 1553097737 139388 PRIVMSG #esoteric :14[[07Kitanai14]]4 10 02https://esolangs.org/w/index.php?diff=60537&oldid=50294 5* 03Sygmei2 5* (+586) 10/* Full language Syntax : */ > 1553098044 705355 PRIVMSG #esoteric :14[[07Kitanai14]]4 10 02https://esolangs.org/w/index.php?diff=60538&oldid=60537 5* 03Sygmei2 5* (+654) 10/* Standard Library */ > 1553098864 727773 PRIVMSG #esoteric :14[[07Kitanai14]]4 10 02https://esolangs.org/w/index.php?diff=60539&oldid=60538 5* 03Sygmei2 5* (-24) 10/* Examples */ < 1553099133 73308 :bobby!~Bob@76.202.115.164 QUIT :Ping timeout: 246 seconds < 1553099230 654947 :bobby!~Bob@2600:1700:31f0:8180:f956:9d11:2d11:55e9 JOIN :#esoteric < 1553099681 245000 :bobby!~Bob@2600:1700:31f0:8180:f956:9d11:2d11:55e9 QUIT :Remote host closed the connection < 1553099815 885243 :bobby!~Bob@2600:1700:31f0:8180:d40f:232b:fabc:c0f8 JOIN :#esoteric < 1553100238 635307 :bobby!~Bob@2600:1700:31f0:8180:d40f:232b:fabc:c0f8 QUIT :Remote host closed the connection < 1553100277 649898 :bobby!~Bob@2600:1700:31f0:8180:e110:f47c:702e:f51 JOIN :#esoteric < 1553100552 739206 :danieljabailey!~danieljab@cpc75709-york6-2-0-cust725.7-1.cable.virginm.net JOIN :#esoteric < 1553100712 481058 :Bob-!~Bob@2600:1700:31f0:8180:30a8:692d:2a87:7645 JOIN :#esoteric < 1553100739 536160 :bobby!~Bob@2600:1700:31f0:8180:e110:f47c:702e:f51 QUIT :Ping timeout: 252 seconds < 1553101033 788666 :bobby!~Bob@76.202.115.164 JOIN :#esoteric < 1553101038 10293 :Bob-!~Bob@2600:1700:31f0:8180:30a8:692d:2a87:7645 QUIT :Ping timeout: 252 seconds < 1553101917 77056 :LKoen!~LKoen@2a01cb0407597a006c8fc63c6badb8d5.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1553101980 974907 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :@tell wob_jonas Maybe it could make sense to allow different images, but require some sort of (well-defined and tooled) visual similarity score to be good enough. Although I'm sure some of those might have pathological cases that could still look similar to the machine but different to humans. < 1553101981 59351 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Consider it noted. < 1553102266 535801 :joast!~rick@cpe-98-145-132-215.natnow.res.rr.com JOIN :#esoteric < 1553103047 47990 :LKoen!~LKoen@2a01cb0407597a006c8fc63c6badb8d5.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1553103396 83207 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu JOIN :#esoteric < 1553103589 984731 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: it's tricky, yes. one problem is that for the small images, you often want to show a crop of the larger image (still scaled down), or a stylized version, and it's hard to make a similarity function that allows good crops but doesn't allow bad crops < 1553103665 719685 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :it's hard even if the uploader is allowed to give some hints to it apart from the image data < 1553103700 33372 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :I think it's hard even for humans < 1553103702 128458 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :oh well < 1553103723 185596 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :I mean, it's *supposed* to be easy for humans < 1553103731 683836 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :because the end goal is that it can't confuse humans < 1553103732 867015 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :but still < 1553103776 853865 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :mind you, even without different resolutions of avatars, there are already some attacks people can try, with similar or identical avatar images and/or similar or identical nicks < 1553103815 23332 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :or users can upload pornographic avatars, but that gets tricky at low resolutions < 1553104472 763782 :danieljabailey!~danieljab@cpc75709-york6-2-0-cust725.7-1.cable.virginm.net QUIT :Ping timeout: 250 seconds < 1553106714 126698 :^[!sid43445@ircpuzzles/2015/april-fools/sixth/zgrep QUIT :Ping timeout: 252 seconds < 1553106714 254707 :lynn!sid154965@gateway/web/irccloud.com/x-tkhkfvwkjmxikwsd QUIT :Ping timeout: 252 seconds < 1553106821 76408 :lynn!sid154965@gateway/web/irccloud.com/x-tulfxohujjdnuauo JOIN :#esoteric < 1553106905 597394 :^[!sid43445@ircpuzzles/2015/april-fools/sixth/zgrep JOIN :#esoteric < 1553107318 460193 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` echo 'const char main[] = "%0000%HELOPPPPPPT]5Hell1E XP5o wo1E$XP5rld!1E(XP4@4J1E,4@4GPZ$AP_^^^^T^\x0f\x05XX\xc3";' | gcc -x c - -o /tmp/hello4 && /tmp/hello4 < 1553107319 346123 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :Hello world! < 1553107340 304386 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There, that should be a lot more portable and not really that much longer. < 1553107360 384228 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(It's portable because it encodes the payload text inside immediate operands.) < 1553107460 523719 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It'd be a lot simpler on x86-32, because you can just PUSH imm32 without leaving any gaps. On x86-64, that still decrements the stack pointer by 8. < 1553107571 254095 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :oh hey < 1553107627 14349 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: but on x86_64, you get RIP-relative addressing. or do you want to use only printable characters? < 1553107648 123076 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's under the same constraints as the one we were failing to make to work, "only printable except for syscall and ret". < 1553107658 124798 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :yeah, with those exceptions that you explained earlier < 1553107725 802973 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I made one with RIP-relative addressing earlier, it's the one encoded as long[]. < 1553107763 207244 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ACTION seeks and offers hugs < 1553107800 762987 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: oh right. in that one, why don't you write the numbers as hexadecimal literals? or use long long, or both? < 1553107837 53587 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :They were already 64-bit, it was assuming I32LP64. < 1553107886 339165 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :ah < 1553107890 22708 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :sorry, that makes sense < 1553107896 91644 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :um, hexadecimal then < 1553107907 677762 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :also, isn't the stack executable if you compile for linux like this? I'll have to test that < 1553107915 244649 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :maybe it isn't on x86_64 or something < 1553107981 420158 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hexadecimal constants might've saved a little space. Just thought it'd nicely obfuscate the "Hello, world!" string to do decimal. Also, with the "0x" prefixes probably not a big difference. < 1553108018 904676 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Actually, on my system, neither the stack *nor* the place where read-only data goes were executable. < 1553108072 838571 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Back when I was last playing, string literals and static const char variables were indeed executable, because linkers tended to merge .rodata and .text sections into a single read-and-execute-but-not-write ELF segment. < 1553108088 387020 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :`rm a.out < 1553108089 637255 :HackEso!~HackEso@techne.zem.fi PRIVMSG #esoteric :No output. < 1553108109 746841 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :But at least on my Debian testing + default GCC flags to use classic GNU as, it's no longer the case: .rodata goes in a separate read-only ELF segment, distinct from the read-and-execute .text. < 1553108132 601774 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :So when testing this at home, I have to use "-fuse-ld=gold", which still makes them executable. < 1553108162 186834 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(gold provides a flag to control this, so "-fuse-ld=gold -Wl,--rosegment" makes them non-executable again.) < 1553108164 532660 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: ok. I'm going to test on HackEso anyway < 1553108220 682638 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I think "no mappings that are both writable and executable by default" has been a standard practice for quite a while now. < 1553108269 831439 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There is (or at least was) a flag you can set on the binary to make stack executable again, though, via something like "-z execstack" at link time. < 1553108595 78231 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: yes, but for a while it wasn't enforced, because x86 didn't use to have a way to mark pages non-executable (only segments), and then libraries wanted to be compatible with programs that assumed that any readable page is also executable < 1553108604 3579 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :but that's on x86_32, not on x86_64 < 1553108648 252601 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :but you are right, the stack isn't executable < 1553108726 310908 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :then you are right in what you said < 1553108743 780453 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :you could of course get a writable and executable memory area, but you would need to do a system call for that < 1553108754 320521 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :now I don't know if there's any other system call interface on x86_64 linux than this < 1553108840 409656 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :On most x86-64 kernels (those who support 32-bit binaries at all), you can actually call (even from 64-bit code) through the int 0x80 interface. < 1553108868 10879 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :But it truncates pointers to 32 bits. < 1553108901 140922 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :And 0x80 isn't printable either. :) < 1553108941 425848 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(Or 0xcd, for "int".) < 1553109020 509397 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Of course you have the full C runtime library available, you could just go and look up the address of write(2) and call that. < 1553109070 106263 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: can you call them with the sysenter instruction? that one is older than x86_64 < 1553109107 208645 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I would assume so, but the opcode for that is "0F 34", which is only half-printable. < 1553109126 189990 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :full C runtime library => sure, you can just int main(){printf("hello, world");}, or at least refer to a function address in the initializer of a long main[] = { ... }; < 1553109161 99149 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: my guess is no, in that I think syscall was introduced at the same time as x86_64, so there's no reason not to use it as the main syscall interface for x86_64 architecture < 1553109190 248430 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Not the main syscall interface, no, I was just assuming it'd support both sysenter and int 0x80 for the 32-bit compatibility layer. < 1553109194 379653 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Haven't looked that up though. < 1553109219 681100 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :or you could refer to the address of main in the initializer, to be able to load the address of the literal < 1553109234 912091 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: the 32-bit compatibility layer is for 32-bit code < 1553109240 142484 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :oh < 1553109242 527749 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :wait < 1553109245 783064 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Yes, but as mentioned, you can call it from 64-bit code as well. < 1553109282 922299 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :does int 0x80 and sysenter actually call to the same kernel routine from 64-bit or 32-bit code, so it would be extra work to check which one is calling? < 1553109286 385342 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :that would make sense < 1553109312 420187 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :I just sort of assumed that the calls from 32-bit code would naturally land to a different place than the ones from the 64-bit code, but that's stupid < 1553109317 339564 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :that's not really how x86 works < 1553109327 883519 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :so that's why there's a syscall instruction! < 1553109441 80968 :LKoen!~LKoen@2a01cb0407597a00340637b3c812f54e.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1553109470 828588 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :hmm no, it isn't < 1553109476 874940 :Essadon!~Essadon@81-225-32-185-no249.tbcn.telia.com JOIN :#esoteric < 1553109479 698483 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :they're genuinely different < 1553109492 797589 :Essadon!~Essadon@81-225-32-185-no249.tbcn.telia.com QUIT :Max SendQ exceeded < 1553109494 210001 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :and besides, they could just dispatch by using different syscall numbers < 1553109519 202970 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :although there's a slight penalty for that, because the lowest syscall numbers are already used < 1553109606 103801 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :In any case, I'm guessing you should be able to call write(/printf/puts) from a fully printable 'const char main[] = "...";'-form program, you'd just have to do the symbol lookup manually. Although that's kind of an odd problem statement in the first place, it's more strict than just "the main function body must be made out of printable bytes". < 1553109615 530009 :TheWild!~Thunderbi@apn-37-248-68-130.dynamic.gprs.plus.pl JOIN :#esoteric < 1553109624 383037 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :b_jonas: they must be different entry points, because the state is different < 1553109635 509172 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :e.g. after int 0x80, there is already a kernel stack and such < 1553109656 57308 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :after syscall the userspace registers are still in place, except for ip and sp < 1553109660 950481 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :which are loaded from MSRs < 1553109672 368125 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :kmc: int vs sysenter vs syscall are different entry points, sure < 1553109686 708573 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :oh, I see what you mean now < 1553109697 489609 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :kmc: what I assumed as that int 0x80 called from 32-bit code vs called from 64-bit code were different entry points < 1553109703 297414 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :but it wouldn't work that way < 1553109708 964503 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There are some Linux demoscene intros that do hash-based symbol lookups to avoid having to include all those long X/OpenGL function names. < 1553109713 488789 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :it would be extra work for the kernel to distinguish between those < 1553109723 56322 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: hehehe < 1553109724 716350 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :fizzie: seems reasonable < 1553109739 842133 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :They're all very envious regarding Windows and its ordinal-based imports. < 1553109776 727728 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: that makse sense, though I'd assume they also just compress the whole executable < 1553109917 196393 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I'm sure some do that as well. Although I think most of the innovation happens on the Windows side. There are pretty sophisticated executable packers that do a lot of nontrivial transformations on the code to make it more compressible. < 1553109933 133476 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :as for that, how does an x86_64 program call into an x86_32 code sequence in linux? what does it have to ask the kernel? I think the cpu knows the difference from the attributes of the code segment descriptor < 1553109982 426363 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: sure, but it's hard to put such packers in a smaller demoscene. I was thinking just ordinary compressors, still useful for something not too small, and pre-installed on a linux machine < 1553110033 699705 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :is there maybe a segment descriptor with a fixed number that it has to jump to? < 1553110048 914042 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Farbrausch have released their old kkrunchy tool designed for 64k intros -- http://www.farbrausch.de/~fg/kkrunchy/ -- and I think http://www.crinkler.net/ is the state-of-the-art for 1k/4k intros. < 1553110067 756454 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :and how do you ask gcc to do that too? < 1553110088 309786 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: oh, 1k and 4k are different. I was thinking more of 64k or 16k intros, sorry < 1553110100 118847 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :mostly because you mentioned linux < 1553110110 665469 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Right. < 1553110144 711834 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :plus there are some of these browser-based intros < 1553110300 6951 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :here's a tiny animation thing for linux I made. it's not trivial to run it on modern linuxen. => https://www.perlmonks.com/?node_id=793690 < 1553110338 19087 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't know how mixed 32-bit/64-bit code works on Linux. It might not even be a really full-fledged feature. < 1553110343 651241 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Also I'm not sure what the rationale is for the int 0x80 entry point being available for 64-bit code in a 64-bit process. If mixed code was supported, that'd be one good reason. Or it could just be that it was easier to have it than not have it. < 1553110386 516141 :LKoen!~LKoen@2a01cb0407597a00340637b3c812f54e.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1553110508 686465 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :ACTION looks at http://refspecs.linuxbase.org/ < 1553110525 882098 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :fizzie: I think it's because it would be extra work for the kernel to forbid that interface < 1553110557 62243 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :the kernel doesn't want to change the interrupt table just because it switches between processes, and doesn't want to check whether to allow the interface at each syscall entry < 1553110610 823453 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :eek this doc is ugly < 1553110860 439772 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :at least that doc says that system calls are done using the syscall instruction, and tells how the arguments are passed < 1553110920 320945 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :(syscall number and return value or -errno in RAX; arguments in RDI, RSI, RDX, R10, R8, R9; scratch registers are RCX and R11) < 1553110964 770466 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :it doesn't seem to mention how to call 32-bit functions < 1553111025 620402 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :liiiiiiiiiiinux < 1553111096 255248 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :I mean, this is totally an esoteric only application < 1553111103 396747 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :I certainly don't want to call 32-bit code from a real program < 1553111323 234059 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :I'll be happy when x86_32 will finally be gone except very early to boot the cpu to 64-bit mode in the boot loader < 1553111345 663969 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu PRIVMSG #esoteric :and perhaps in the kernel for the same reason < 1553112969 335506 :j4cbo!sid186930@gateway/web/irccloud.com/x-jvuunpjzubdepftz PRIVMSG #esoteric :I don’t think you can mix 32 and 64 like that > 1553113712 627052 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03Watashiwaanata 5* 10New user account < 1553113786 199898 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :you have to go into 48 bit mode, obviously :P < 1553114217 154988 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Remote host closed the connection < 1553114230 94622 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric > 1553114454 943838 PRIVMSG #esoteric :14[[07Esolang:Introduce yourself14]]4 10 02https://esolangs.org/w/index.php?diff=60540&oldid=60536 5* 03Watashiwaanata 5* (+150) 10/* Introductions */ > 1553115070 640692 PRIVMSG #esoteric :14[[07User:Watashiwaanata14]]4 N10 02https://esolangs.org/w/index.php?oldid=60541 5* 03Watashiwaanata 5* (+187) 10Created page with "

Watashi wa anata<..." > 1553115463 615815 PRIVMSG #esoteric :14[[07User:Watashiwaanata14]]4 10 02https://esolangs.org/w/index.php?diff=60542&oldid=60541 5* 03Watashiwaanata 5* (-8) 10 < 1553118816 119626 :TheWild!~Thunderbi@apn-37-248-68-130.dynamic.gprs.plus.pl QUIT :Quit: TheWild < 1553118947 321157 :danieljabailey!~danieljab@cpc75709-york6-2-0-cust725.7-1.cable.virginm.net JOIN :#esoteric < 1553119539 398307 :Yevano!~Yevano@107-199-161-201.lightspeed.sndgca.sbcglobal.net JOIN :#esoteric < 1553119648 820874 :b_jonas!~x@catv-176-63-24-191.catv.broadband.hu QUIT :Quit: leaving < 1553119824 776578 :oren!~oren@ec2-18-212-11-99.compute-1.amazonaws.com PRIVMSG #esoteric :Lol I made this tool print an error message of "Oren is a moron" when constraints are violated, apparently they are in fact violated < 1553119850 85462 :arseniiv!~arseniiv@136.169.202.72 QUIT :Ping timeout: 258 seconds < 1553119876 794688 :oren!~oren@ec2-18-212-11-99.compute-1.amazonaws.com PRIVMSG #esoteric :just not violated on my dev machine < 1553120028 162345 :oren!~oren@ec2-18-212-11-99.compute-1.amazonaws.com PRIVMSG #esoteric :this thing prints out so many error messages that mine have to be avant garde to get user attention < 1553120041 987040 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1553120089 577346 :moei!~moei@softbank221078042071.bbtec.net QUIT :Quit: Leaving... < 1553120321 673306 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :haha < 1553121506 73598 :AnotherTest!~turingcom@ptr-82l26zfgz2ng38e2jxt.18120a2.ip6.access.telenet.be QUIT :Ping timeout: 258 seconds < 1553122213 146138 :LKoen!~LKoen@2a01cb0407597a005da0cdd84fd150cf.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1553122548 928145 :LKoen!~LKoen@2a01cb0407597a005da0cdd84fd150cf.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1553122714 120685 :LKoen!~LKoen@2a01cb0407597a0080ef8f3e88ff3ad1.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1553122838 199001 :LKoen!~LKoen@2a01cb0407597a0080ef8f3e88ff3ad1.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1553122867 109967 :LKoen!~LKoen@2a01cb0407597a0080ef8f3e88ff3ad1.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1553122992 228549 :LKoen!~LKoen@2a01cb0407597a0080ef8f3e88ff3ad1.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1553123007 424707 :LKoen!~LKoen@2a01cb0407597a0080ef8f3e88ff3ad1.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1553123626 972089 :LKoen!~LKoen@2a01cb0407597a0080ef8f3e88ff3ad1.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1553124780 684940 :Sgeo!~Sgeo@ool-18b98dd9.dyn.optonline.net JOIN :#esoteric < 1553125736 870919 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Remote host closed the connection