> 1567815030 969361 PRIVMSG #esoteric :14[[07Echidna14]]4 10 02https://esolangs.org/w/index.php?diff=66003&oldid=65993 5* 03Lykaina 5* (+0) 10updating with newest interpreter link. < 1567815141 13004 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :made changes to both interpreter and spec_notes file < 1567815174 927728 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: too late today, but warn me later to look at them < 1567815186 320992 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :s/warn/remind/ < 1567815192 978378 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :k < 1567815314 79048 :unlimiter!~unlimiter@105.157.22.201 JOIN :#esoteric < 1567815444 490099 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i hope page 3 of the pdf is helpful < 1567815510 750239 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :it's also known as "Never ask me do to documentation for something that matters." < 1567815671 107850 :xkapastel!uid17782@gateway/web/irccloud.com/x-yqsmbnheqptssdyu QUIT :Quit: Connection closed for inactivity < 1567816325 493566 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :The TUTOR language has 150 variables, named v1 through v150, which can be assigned names. < 1567816332 604229 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :I just... *blink* < 1567816363 324716 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :hi Sgeo < 1567816370 610119 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :That seems like enough? < 1567816381 212641 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You only needs two anyway. < 1567816401 773810 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :Hi Lykaina < 1567816588 155741 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` ls tmp < 1567816589 232183 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :a.c \ a.out \ compiled_brachylog.pl \ input.brachylog \ jeval.whatis \ out \ OUT \ out.a \ out.a.hd \ out.a.xxd \ paste \ spline \ spout \ spout.raw \ tmp.txt < 1567816592 990560 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` tmp/out.a < 1567816593 839951 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :finally < 1567816599 742 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :tg < 1567816602 946497 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` file tmp/out.a < 1567816603 891359 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :tmp/out.a: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped < 1567818007 942688 :tromp!~tromp@2a02:a210:1585:3200:5ded:1c76:ebea:a8b1 JOIN :#esoteric < 1567818136 594004 :unlimiter!~unlimiter@105.157.22.201 QUIT :Quit: WeeChat 2.5 < 1567818327 945155 :tromp!~tromp@2a02:a210:1585:3200:5ded:1c76:ebea:a8b1 QUIT :Ping timeout: 264 seconds < 1567819770 647710 :unlimiter!~unlimiter@105.157.22.201 JOIN :#esoteric < 1567822372 440876 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`url tmp/out.a.hd < 1567822373 315233 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/tmp/out.a.hd < 1567822533 715307 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Someone over at ##c wanted `a || b` on pointer-typed operands to yield the first non-null value, instead of 0 or 1. < 1567822633 314382 :unlimiter!~unlimiter@105.157.22.201 QUIT :Quit: WeeChat 2.5 < 1567822651 600965 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Speaking of the amd64 System V ABI, I'm still kind of confused about %rdx. < 1567822734 802393 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You're supposed to register it with atexit, when you're using the ELF interpreter with dynamic linking. < 1567822761 2117 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But I seem to get 0 in that register even in that case? < 1567822849 333019 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess it might be that the system may or may not provide it? Though that's not what the spec says. < 1567822860 19942 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But how are you supposed to know? < 1567822874 940843 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Well, if it's null presumably you don't need to register it. < 1567822877 155375 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Maybe you just check for 0, but I don't like that. What if it's initialized to something else? < 1567822913 863226 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :By "may or may not provide" I meant it'd always set it to 0 if it doesn't need you to register anything. < 1567822933 104030 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Well, it would be nice if any standard specified that. < 1567822936 989115 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :But that's just something that could make sense, I don't have any proof for that. < 1567822942 277141 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :What does BA_OS mean anyway? < 1567822960 697470 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Good question. < 1567822982 56118 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Base System < 1567823016 86031 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Yes, apparently they are sections of the System V Interface Definition. < 1567823019 139155 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :See https://stackoverflow.com/questions/37419635/in-the-elf-spec-what-does-ba-os-and-ke-os-mean and the linked PDF. < 1567823023 778940 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Which presumably you already found. < 1567823203 468261 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Maybe I should just look at what crt.o does. < 1567823209 541762 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Unfortunately it's all such a mess. < 1567823295 712022 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's what all software is. I'm always surprised it works as often as it does. < 1567823336 767664 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I've been writing Go recreationally lately. < 1567823347 887302 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` echo >/tmp/test.s $'.text; .globl _start; _start: mov $60, %rax; mov $123, %rdi; syscall'; as -o /tmp/test.o /tmp/test.s && ld -dynamic-linker /lib64/ld-linx-x86-64.so.2 -o /tmp/test /tmp/test.o && /tmp/test; echo $?; file /tmp/test < 1567823348 883690 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :123 \ /tmp/test: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped < 1567823374 848927 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What's the flag to give to ld to make that dynamically linked? < 1567823433 91520 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't remember, ld is awkward to use directly. It's not -shared, because that's what creates shared objects. < 1567823448 958439 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :-Bdynamic? < 1567823458 576720 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I tried that and it was still static. < 1567823472 329758 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I guess -lc works but that does rather a lot more than I want here. < 1567823506 332491 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Also this is pointless because I don't know how to output the value of %rdx in HackEso. < 1567823514 815643 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I'd use gdb locally. < 1567823558 41779 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I mean, you don't need all the bits just to see if it's zero or not. < 1567823565 364487 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :You did just output the value 123 there. < 1567823565 956479 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :That's true. That was my plan. < 1567823574 902850 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think it'll be 0. < 1567823598 65791 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Maybe it needs to have a some NEEDED entries to not count as "statically linked" for file. < 1567823627 795231 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` file /bin/ls < 1567823628 616231 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​/bin/ls: 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]=3c233e12c466a83aa9b2094b07dbfaa5bd10eccd, stripped < 1567823641 297001 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If it was dynamically linked I think it'd say "shared object" instead of "executable". < 1567823686 134137 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It would at least name the interpreter. < 1567823819 216398 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, right, execve can tell you ENOENT when the interpreter isn't found. < 1567823851 153240 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` echo >/tmp/test.s $'.text; .globl _start; _start: mov $60, %rax; mov $123, %rdi; syscall'; as -o /tmp/test.o /tmp/test.s && ld -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o /tmp/test /tmp/test.o -lc && /tmp/test; echo $?; file /tmp/test < 1567823852 378430 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :123 \ /tmp/test: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, not stripped < 1567823919 311772 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Right. I guess ld might just not be willing to make a dynamically linked thing without any libraries. < 1567823979 500664 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Probably something unknowable to mortals involving linker scripts. < 1567824023 746211 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` echo >/tmp/test.s $'.text; .globl _start; _start: mov $100, %rdi; test %rdx, %rdx; jz e; mov $105, %rdi; e: mov $60, %rax; syscall'; as -o /tmp/test.o /tmp/test.s && ld -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o /tmp/test /tmp/test.o -lc && /tmp/test; echo $? < 1567824025 135307 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :105 < 1567824048 373844 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Uh oh. Is that saying that rdx is nonzero? < 1567824056 236479 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That's what it sounded like. < 1567824061 560650 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Wait, I'm starting to remember this. There was something complicated here. < 1567824084 387371 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` echo >/tmp/test.s $'.text; .globl _start; _start: call %rdx; mov $60, %rax; mov $123, %rdi; syscall'; as -o /tmp/test.o /tmp/test.s && ld -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o /tmp/test /tmp/test.o -lc && /tmp/test; echo $? < 1567824085 398336 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​/tmp/test.s: Assembler messages: \ /tmp/test.s:1: Warning: indirect call without `*' \ 123 < 1567824095 989423 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Hmm. < 1567824103 176177 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So now I'm not sure what issue I ran into. < 1567824109 65597 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But there was definitely something. < 1567824206 874246 :aloril_!~aloril@mobile-access-5d6a4b-4.dhcp.inet.fi QUIT :Ping timeout: 258 seconds < 1567824300 991020 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` echo >/tmp/test.s $'.text; .globl _start; _start: push %rdx; mov $1, %edi; mov %rsp, %rsi; mov $8, %edx; mov $1, %eax; syscall; mov $60, %eax; syscall'; as -o /tmp/test.o /tmp/test.s && ld -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o /tmp/test /tmp/test.o -lc && /tmp/test | hd < 1567824302 731344 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :000000 a0 fb 00 40 00 00 00 00 >...@....< \ 000008 < 1567824304 96339 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :OK, I was testing this with musl libc where it doesn't work so well. < 1567824306 182778 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Looks nonzero to me. < 1567824345 799095 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :0x4000fba0 might be a plausible pointer as well, maybe? < 1567824348 47574 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`cat /proc/self/maps < 1567824348 728282 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :00100000-00102000 r-xp 00000000 00:00 0 \ 40000000-40023000 r-xp 00000000 00:0f 1336451 /lib/x86_64-linux-gnu/ld-2.24.so \ 40023000-40025000 rw-p 00000000 00:00 0 \ 40025000-401c1000 r--p 00000000 00:0d 1440239 /usr/lib/locale/locale-archive \ 401c1000-401e3000 rw-p 00000000 00:00 0 \ 40223000-40224000 r--p 00023000 00:0f 1336451 /lib/x86_64-linux-gnu/ld-2.24.so \ 40224000- < 1567824393 937594 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I mean, I called it in the program above, so it's certainly a plausible function pointer. < 1567824496 941964 :tromp!~tromp@2a02:a210:1585:3200:5ded:1c76:ebea:a8b1 JOIN :#esoteric < 1567824537 711148 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :OK, this is interesting. I remember now. < 1567824561 263019 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :musl's ELF interpreter is passing _start's address in %rdx. < 1567824654 958390 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :And now I see I had a comment saying this in my ELF generator program. < 1567824736 665583 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` echo >/tmp/test.s $'.global _start; _start: mov $1, %eax'; as -o /tmp/test.o /tmp/test.s && ld --oformat=binary -o /tmp/test /tmp/test.o && wc -c /tmp/test < 1567824738 124877 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :5 /tmp/test < 1567824740 209380 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` echo >/tmp/test.s $'.global _start; _start: mov $1, %rax'; as -o /tmp/test.o /tmp/test.s && ld --oformat=binary -o /tmp/test /tmp/test.o && wc -c /tmp/test < 1567824741 461752 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :7 /tmp/test < 1567824751 633736 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Just as an aside. < 1567824771 944500 :tromp!~tromp@2a02:a210:1585:3200:5ded:1c76:ebea:a8b1 QUIT :Ping timeout: 264 seconds < 1567824852 33452 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You're commenting on my "mov $60, %rax" and so on? < 1567824890 960058 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Well, not really "commenting on", but related to. < 1567824891 449246 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It's true that I almost ran up against HackEso's time and memory limits with those extra bytes. < 1567824896 565647 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But it's true. < 1567824917 312490 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I was going to use cmp %rdx, $0 but I thought people would make fun of me. < 1567824926 134766 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So I used test %rdx, %rdx instead. < 1567824956 7461 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Sadly it was too late. < 1567825172 523593 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I have a thing that does a thing every few hours or so. I'd like to know if it starts failing to do the thing. I added Prometheus counters for total things and failed things, but I'm a little afraid the natural timescale of Prometheus is not well suited to that. (I'm sure it *can* work, but still.) < 1567825175 414033 :aloril!~aloril@mobile-access-5d6a4b-4.dhcp.inet.fi JOIN :#esoteric < 1567825331 890645 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(I don't want to make it do the thing more often, because it does the thing to someone else's thing, and anyway it doesn't need to because usually it's just the same thing.) < 1567825440 998522 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Hmm, what's the issue here? < 1567825558 853155 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I thought there should be made Magic: the Gathering card named "Leper Window", but am unsure what it should be. < 1567825580 522183 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :either a M:tG card or a band < 1567825599 57694 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :hi kmc < 1567825618 843514 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :are you in for scrapping all existing software < 1567825622 438533 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess it isn't really an issue, it just feels wrong to sample the thing every minute or every five minutes because it's almost never changing, and then there's a lot of samples. But from what I recall, Prometheus can't really do sparse sampling. < 1567825664 685209 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :shachaf: meh < 1567825692 981197 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :except for sdr of course < 1567825788 719055 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :fungot: How do you feel about getting scrapped? < 1567825789 126794 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :fizzie: know of any < 1567825818 399123 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :fungot: Anyone who got scrapped? No, not really. < 1567825818 656339 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :fizzie: my favourite fractal is still cantor's dust :) i was just requesting a heap of muck. but some. < 1567825922 766083 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :kmc: how do you feel about scrapping all non-kittens < 1567825942 185798 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :You can make up a band called that too, maybe. < 1567825947 176983 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :i was telling the miri folks about how i want to make a kitten maximizer < 1567825961 416193 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :some of them seem nervous about the idea < 1567826086 870619 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :fixed the Echidna documentation < 1567826098 255933 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :for now < 1567826122 557174 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :clarified pg 3 < 1567826476 442908 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :shachaf: how about an everything minimizer < 1567826744 210814 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :no hth < 1567826811 684231 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :only things beginning with the letter n < 1567826826 333155 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :or was that a maximizer? < 1567826869 902339 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :https://english.lem.pl/works/novels/the-cyberiad/146-how-the-world-was-saved < 1567828179 568272 :Spexty!2e3bf952@46.59.249.82 JOIN :#esoteric < 1567828443 569056 :Spexty!2e3bf952@46.59.249.82 QUIT :Ping timeout: 260 seconds < 1567829025 298319 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :The "arrow" command in TUTOR is weirdly named. It doesn't just drawn an arrow < 1567830568 116479 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :What does the "arrow" command in TUTOR mean, then? < 1567830989 787152 :adu!~ajr@pool-173-73-86-191.washdc.fios.verizon.net JOIN :#esoteric < 1567831013 602418 :tromp!~tromp@2a02:a210:1585:3200:5ded:1c76:ebea:a8b1 JOIN :#esoteric < 1567831265 600180 :tromp!~tromp@2a02:a210:1585:3200:5ded:1c76:ebea:a8b1 QUIT :Ping timeout: 250 seconds < 1567832142 821670 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :It prompts the student for input, and enters a judging mode for commands like answer or wrong to pattern match against the input. I think < 1567832174 191717 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :"A judging block in TUTOR is a control structure that begins with an arrow command and ends with the next arrow, endarrow or unit command. The arrow command also prompts for input, with the special arrow character (resembling "▷") displayed as a prompt at the indicated screen coordinates. In effect, a judging block can be thought of as a backtracking control structure where the student may make multiple attempts to answer a question unti < 1567832174 331681 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :l a correct answer allows forward progress." < 1567832191 333873 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :https://en.wikipedia.org/wiki/TUTOR_(programming_language) < 1567836642 611471 :tromp!~tromp@2a02:a210:1585:3200:dd14:816e:6445:4bc JOIN :#esoteric < 1567836742 941885 :tromp_!~tromp@2a02:a210:1585:3200:e0df:8599:cf09:7e1a JOIN :#esoteric > 1567836842 805647 PRIVMSG #esoteric :14[[07GolfJoke14]]4 M10 02https://esolangs.org/w/index.php?diff=66004&oldid=54460 5* 03A 5* (+734) 10 < 1567836955 524784 :tromp!~tromp@2a02:a210:1585:3200:dd14:816e:6445:4bc QUIT :Ping timeout: 276 seconds < 1567837011 951019 :tromp_!~tromp@2a02:a210:1585:3200:e0df:8599:cf09:7e1a QUIT :Ping timeout: 264 seconds > 1567837148 709823 PRIVMSG #esoteric :14[[07GolfJoke14]]4 M10 02https://esolangs.org/w/index.php?diff=66005&oldid=66004 5* 03A 5* (-735) 10 > 1567837194 526019 PRIVMSG #esoteric :14[[07GolfJoke14]]4 M10 02https://esolangs.org/w/index.php?diff=66006&oldid=66005 5* 03A 5* (+12) 10 < 1567837894 338303 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :fizzie: So here's the entry point call in musl: https://github.com/ifduyue/musl/blob/master/ldso/dynlink.c#L1742 < 1567837919 573990 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Apparently it just uses an automatically-selecte register, so with one version I was getting the entry point in rdx and in another version I was getting it in rax (and rdx was 0). < 1567837941 639738 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So I feel like something is wrong here because it's obviously not passing something in in rdx. < 1567837961 29264 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :(Also I mean entry point jump, not call, of course.) < 1567838357 602623 :tromp!~tromp@2a02:a210:1585:3200:e0df:8599:cf09:7e1a JOIN :#esoteric < 1567839504 428419 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Should rodata be mapped -x? < 1567839516 737365 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I wonder how likely it is to contain ROP gadgets or that sort of thing. < 1567839768 463326 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ro ro ro your data < 1567839779 383103 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :is there a good reason why it should be +x? < 1567839780 574994 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :besides fun < 1567839958 19457 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net PRIVMSG #esoteric :-0.2 rounds to 0 in TUTOR's conditional statements that compare an expression and have different branches for negative, zero, and individual positive numbers < 1567839998 98055 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I don't think so? < 1567840013 186783 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You can load it in one segment rather than two. < 1567840033 260712 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :The Go compiler generates three load segments, r, rx, rw < 1567840042 989359 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Whereas gcc/clang generate only rx and rw. > 1567840698 81476 PRIVMSG #esoteric :14[[07GolfSpace14]]4 N10 02https://esolangs.org/w/index.php?oldid=66007 5* 03A 5* (+361) 10Created page with "[[GolfSpace]] is a joke esolang inspired by [[Golf Cheat]] and [[GolfJoke]]. It is essentially [[GolfJoke]], except the question number is encoded as backspaces and Deletes as..." < 1567841720 720405 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :whoa whoa whoa < 1567841731 762945 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Apparently they expanded on "Assembled a contraption". < 1567841737 509825 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Maybe I knew about that? I don't remember. < 1567841805 264226 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru JOIN :#esoteric < 1567844383 714805 :adu!~ajr@pool-173-73-86-191.washdc.fios.verizon.net QUIT :Quit: adu > 1567844627 239907 PRIVMSG #esoteric :14[[07Slindow14]]4 N10 02https://esolangs.org/w/index.php?oldid=66008 5* 03A 5* (+174) 10Created page with "[[Slindow]] is an [[esoteric programming language]] that makes it easy to solve sliding-window challenges. [[Category:Languages]] [[Category:2019]] [[Category:Unimplemented]]" > 1567844781 952643 PRIVMSG #esoteric :14[[07Slindow14]]4 M10 02https://esolangs.org/w/index.php?diff=66009&oldid=66008 5* 03A 5* (+386) 10 > 1567845024 992855 PRIVMSG #esoteric :14[[07Slindow14]]4 M10 02https://esolangs.org/w/index.php?diff=66010&oldid=66009 5* 03A 5* (+350) 10 < 1567845070 465235 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :thoughts on wget2? < 1567845885 519790 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What's that? < 1567846103 619775 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 245 seconds < 1567846215 114479 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric > 1567846716 544757 PRIVMSG #esoteric :14[[07$14]]4 10 02https://esolangs.org/w/index.php?diff=66011&oldid=58729 5* 03Rdebath 5* (+67) 10Turing > 1567847500 650675 PRIVMSG #esoteric :14[[07Slindow14]]4 M10 02https://esolangs.org/w/index.php?diff=66012&oldid=66010 5* 03A 5* (+656) 10 > 1567847849 673352 PRIVMSG #esoteric :14[[07Slindow14]]4 M10 02https://esolangs.org/w/index.php?diff=66013&oldid=66012 5* 03A 5* (+14) 10/* Built-ins */ < 1567848917 656593 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :had a dream jessie and james finally captured pikachu, but james was sucked into the pokball as well < 1567849195 439230 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :jessie wasn't sure whether to keep pikachu or free her boyfriend james. < 1567849400 461418 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :as pikachu would likely escape < 1567850874 825929 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :shachaf: yes, but only in silver-bordered land. it's one of MaRo's worse ideas to give meaning to it. < 1567851661 400017 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :hi b_jonas < 1567851690 462810 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :working on an update to doc and code < 1567851712 4925 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i'll let you know when finished > 1567853822 454921 PRIVMSG #esoteric :14[[07Echidna14]]4 10 02https://esolangs.org/w/index.php?diff=66014&oldid=66003 5* 03Lykaina 5* (+0) 10updating with newest interpreter link. < 1567853852 470196 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :b_jonas: updated < 1567859770 568106 :Spexty!2e3bf952@46.59.249.82 JOIN :#esoteric < 1567860927 772907 :Frater_EST!~adrianbib@wsip-68-15-198-210.ok.ok.cox.net JOIN :#esoteric < 1567860932 695777 :Frater_EST!~adrianbib@wsip-68-15-198-210.ok.ok.cox.net PART :#esoteric < 1567866992 598548 :xkapastel!uid17782@gateway/web/irccloud.com/x-qgdfctcwfvubxhsg JOIN :#esoteric < 1567867215 53731 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru PRIVMSG #esoteric :what is the history of lenses (Haskell ones)? < 1567867238 98252 :Sgeo_!~Sgeo@ool-18b98995.dyn.optonline.net JOIN :#esoteric < 1567867369 218711 :Sgeo!~Sgeo@ool-18b98995.dyn.optonline.net QUIT :Ping timeout: 246 seconds < 1567867794 48610 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :updated documentation pdf for Echidna > 1567868257 593266 PRIVMSG #esoteric :14[[07Echidna14]]4 10 02https://esolangs.org/w/index.php?diff=66015&oldid=66014 5* 03Lykaina 5* (-8) 10fixing first line < 1567868881 809578 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :hi Sgeo_ < 1567869379 503517 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :might as well move Echidna from Dropbox to Git < 1567869491 26536 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net JOIN :#esoteric < 1567869516 845229 :Melvar!~melvar@dslb-178-003-156-154.178.003.pools.vodafone-ip.de QUIT :Ping timeout: 258 seconds < 1567869766 8548 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :so what do people wanna talk about lol < 1567869819 575984 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :Echidna, mother of all monsters? < 1567869833 654503 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :idk anything about echidna lol < 1567869852 749346 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :should I check it out? < 1567869871 59989 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :Echidna is my esolang < 1567869882 682844 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :well should I check it out lol < 1567869931 739988 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :sure. it's still a work in progress, though < 1567869951 272383 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :ok < 1567870071 948154 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and i'm working on moving it to a bitbucket repo < 1567870110 582023 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :to make it easier for me < 1567870128 699085 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :currently hosted on my webserver < 1567870331 930110 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :yeah < 1567870453 243108 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :seems like a neat language < 1567870468 492884 :Melvar!~melvar@dslb-084-063-063-063.084.063.pools.vodafone-ip.de JOIN :#esoteric < 1567870881 963826 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net QUIT :Remote host closed the connection < 1567872934 376514 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :Sgeo_: you active? < 1567873198 435376 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :we might as well be the only "kind of active" people here lol < 1567873379 904768 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru PRIVMSG #esoteric :Spexty: fungot is always active, it’s usually just not noticeable < 1567873380 111356 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :arseniiv: and i don't think it's true that it turns 110 into 111 and vice versa? < 1567873395 148489 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i need help from someone i already know i can trust. I knew Sgeo_ in rl, nobody else here qualifies for that as far as I know. < 1567873552 776517 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :as for Echidna...did i do this right? https://bitbucket.org/lykaina/echidna/ < 1567873587 860194 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 258 seconds < 1567873796 946682 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :can someone tell me if i did the repo properly? < 1567874061 940708 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :great... < 1567874078 372425 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :idk anything about bitbucket sry < 1567874089 832285 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :does it look good < 1567874109 701587 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :what do you mean < 1567874113 9915 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :is it missing anything on visual inspection < 1567874124 295835 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :don't think so < 1567874156 313487 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :bitbucket is a competitor to github < 1567874167 895155 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :that's pretty much it < 1567874288 249730 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i don't like using microsoft products when i don't have to < 1567874561 288497 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and bitbucket is owned by atlassian, so i have the free version of jira as well < 1567874569 733153 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I think if you need a version control, there is Fossil < 1567874613 779640 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i've been using bitbucket for years < 1567874614 955547 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Atlassian is odd. < 1567874625 135346 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :how so? < 1567874673 20094 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I've gone through the procedure of deleting my account once. Which is when I learned that I had *two* accounts, one bitbucket account and one general Atlassian account in the background that I was unaware of before... < 1567874765 466455 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And IIRC the process meant that I had a third account in their issue tracker. < 1567874781 200132 :int-e!~noone@int-e.eu PRIVMSG #esoteric :This abundance of service specific accounts is what I found odd. < 1567874790 206651 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :oh < 1567874799 679023 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :yeah, that's weird < 1567874810 343775 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(all linked via the atlassian account, of course) < 1567874876 372760 :int-e!~noone@int-e.eu PRIVMSG #esoteric :The best part was the final email that said that my account was not deleted... and that I please not reply to the email because that would re-create an issue tracking account. < 1567874908 889399 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :does the repo i linked to look okay? < 1567874936 366230 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and does Fossil have issue tracking? < 1567874947 796555 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Yes, Fossil has issue tracking < 1567874954 671742 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :link? < 1567875054 998056 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :it's a git host, right? < 1567875081 234229 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :No, it is a different system from git (and less confusing, in my opinion and some other people's opinion too) < 1567875097 124691 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Lykaina: well it wants me to log in with Atlassian, so nothing to be seen there < 1567875112 99284 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i pulled it off < 1567875127 843594 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i'll check out github in a minute < 1567875190 792702 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Lykaina: that may be a repo setting though < 1567875208 301682 :int-e!~noone@int-e.eu PRIVMSG #esoteric :ACTION shrugs < 1567875778 899344 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru PRIVMSG #esoteric :Lykaina: BTW I’m always confused about my git repos so I can’t help, sorry < 1567876099 846519 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :https://github.com/lykaina/echidna < 1567876288 494936 :sebbu!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1567876878 89405 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :int-e: like this one? < 1567877034 287124 :int-e!~noone@int-e.eu PRIVMSG #esoteric :looks like a normal github repo to me < 1567877058 504448 :grumble!~grumble@freenode/staff/grumble QUIT :Quit: Martini. Gin, not vodka. Obviously. Stirred for 10 seconds while glancing at an unopened bottle of vermouth. < 1567877060 27545 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :is that good? < 1567877171 37968 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I was trying to be neutral. (I'm torn about github. I use it a lot, so I'm familiar with it. I dislike the fact that it was acquired by Microsoft, but not enough to actually switch to a different provider.) < 1567877221 598699 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :is it good for hosting an esolang? < 1567877250 975068 :int-e!~noone@int-e.eu PRIVMSG #esoteric :There are quite a few esolang related github repos. < 1567877294 736433 :int-e!~noone@int-e.eu PRIVMSG #esoteric :It's servicable. < 1567877318 217519 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(To use a less controversial categorization than good vs. bad.) < 1567877348 907834 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :yeah, if an esolang isn't on the esolangs wiki, it's probably on github < 1567877356 969417 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :somewhere < 1567877357 905252 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :lol < 1567877362 3492 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :If they do not require you to change all of your accounts to Microsoft accounts, then I do not know why that would be the reason to avoid it. (I do not use GitHub for my own projects, although that has nothing to do with Microsoft, and is because I prefer Fossil and I think git is confusing) < 1567877366 941032 :grumble!~grumble@freenode/staff/grumble JOIN :#esoteric > 1567877613 951937 PRIVMSG #esoteric :14[[07Echidna14]]4 10 02https://esolangs.org/w/index.php?diff=66016&oldid=66015 5* 03Lykaina 5* (-59) 10linking to my github instead of my webhost. < 1567878663 291414 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :b_jonas: I tried to figure out what you meant, since even in un-sets the lands aren't silver-bordered. < 1567878672 154617 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But then I reparsed it. < 1567878686 609093 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :The basic lands anyways aren't silver border < 1567878990 398299 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, that's true. Maybe there are unbasic lands. < 1567879027 299907 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Do you make up some more Magic: the Gathering cards today? < 1567879049 495968 :polomukuyu!~polomukuy@41.215.132.180 JOIN :#esoteric < 1567879073 506761 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :No. < 1567879084 140503 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :OK < 1567879084 865210 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I tried to make up a different game but didn't get very far yet. < 1567879170 94442 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :What different game is that? < 1567879209 682992 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :oh-gi-yu? < 1567879257 353845 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :(said it backwards as not to swear)\ < 1567879257 579841 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :yu-gi-oh lol < 1567879266 635937 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :you don't wanna swear? damn < 1567879325 858226 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :everyone hates yu-gi-oh at my lgs < 1567879343 73838 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :shachaf: I was talking about assembling contraptions, not about basic lands < 1567879348 714836 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :oh < 1567879352 947207 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I know. < 1567879354 682804 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :"silver-bordered land" right < 1567879364 388255 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :yes, M:tG is full of ambiguous words < 1567879421 55073 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but yes, there are non-basic silver-bordered lands, including that one that makes one and a half mana of any color, which got way overpowered since mana burn got eliminated < 1567879441 566629 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I think it's called City of Ass < 1567879506 514254 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I think Contraptions do not have the same border as other cards < 1567879544 662532 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :yes, they're stupid borderless cards < 1567879578 476546 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Germany has 16 states. The German name is "Land". < 1567879602 763034 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you're playing a limited game with 40-card decks, 16 is a natural number of lands to put in it (though 17 is probably better in practice). < 1567879742 901103 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :hi b_jonas < 1567880041 313893 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Mathematical Study {2U} Enchantment ;; {1}, {T}: Chose a number and then reveal the top card of target player's library. If it is a nonland card with converted mana cost equal to the chosen number, add one mana of any color to your mana pool and then you may cast that card. This ability can be used only during your own main phase. ;; Echo {1} < 1567880635 37831 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :b_jonas: https://github.com/lykaina/echidna < 1567880658 802528 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i think you said to remind you < 1567881015 996789 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Noon Mark {1} Artifact ;; {T}, Sacrifice ~: Add one mana of any color. Can't be used during combat phase. ;; {2}, {T}, Sacrifice ~: Draw a card < 1567881026 874722 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :What is your comment of these made up cards? < 1567881285 679033 :polomukuyu!~polomukuy@41.215.132.180 QUIT :Remote host closed the connection < 1567882040 735350 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :`card-by-name Mind Stone < 1567882041 695132 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Mind Stone \ 2 \ Artifact \ {T}: Add {C}. \ {1}, {T}, Sacrifice Mind Stone: Draw a card. \ WL-C, 10E-U, C14-U, C15-U, IMA-C, DD2-U, DDP-U < 1567882055 244675 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :hmm < 1567882178 690899 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :zzo38: Noon Mark => I can't judge that one, it needs an experienced M:tG developer to tell if it's overpowered, it's the so4rt that can be either broken or useless as far as I know < 1567882265 205656 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Mathematical Study => at least make it "Activate this ability only any time you could cast a sorcery." unless you have a good reason to want to allow it activated in the controller's main phase but with non-empty stack < 1567882322 575565 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but after that, I don't think I like the main function of allowing to cast a card from another player's library. it's something that probably has to exist but be so rare that I never meet them < 1567882346 423 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :and I don't know if it's even right to have it as blue rather than red < 1567882351 892733 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it'll be confusing if it's a creature < 1567882369 397942 :int-e!~noone@int-e.eu PRIVMSG #esoteric :or other permanent < 1567882396 81966 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :int-e: I don't think so. then you'll just control a creature owned by the opponent, which is normal as far as blue goes < 1567882423 334813 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but normal in red too, and I don't know which color this one has to be < 1567882437 375488 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I think it's more confusing while it's on the stack < 1567882471 916335 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :because owning a different player's spell on stack can happen, but it's very rare < 1567882634 534911 :imode!~imode@unaffiliated/imode JOIN :#esoteric < 1567882699 611043 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :although I'm not sure why black doesn't get any creature stealing < 1567882706 686293 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :or do they get some? < 1567882735 560823 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :b_jonas: may i pm you? < 1567882738 907279 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :`card-by-name Enslave < 1567882739 763633 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Enslave \ 4BB \ Enchantment -- Aura \ Enchant creature \ You control enchanted creature. \ At the beginning of your upkeep, enchanted creature deals 1 damage to its owner. \ PLC-U, NPH-U, DDD-U \ \ Enslaved Dwarf \ R \ Creature -- Dwarf \ 1/1 \ {R}, Sacrifice Enslaved Dwarf: Target black creature gets +1/+0 and gains first strike until end of turn. \ TOR-C \ \ Enslaved Horror \ 3B \ Creature -- Horror \ 4/4 \ When Enslaved Horror enters the battlefield, < 1567882751 830818 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: you can pm, but it won't make me look at the interpreter faster < 1567882760 232687 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :oh < 1567882764 539732 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :`card-by-name Mark of the Oni < 1567882765 502214 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Mark of the Oni \ 2B \ Enchantment -- Aura \ Enchant creature \ You control enchanted creature. \ At the beginning of the end step, if you control no Demons, sacrifice Mark of the Oni. \ BOK-U < 1567882770 101638 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :you weren't responding < 1567882773 189362 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :sorry < 1567882785 710680 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I will look at the interpreter, I'm curious now < 1567882811 848612 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :so black does get a few < 1567883004 552248 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :in the current OotS story arc, if Durkon was broken while petrified, how difficult would it have been to fix it? could they have found a cleric that can fix him with a Make Whole spell? < 1567883027 118848 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I can't tell if the Make Whole spell works for that, and if not, how else you repair a broken statue before reanimating < 1567883209 536035 :MDude!~MDude@76.5.108.106 QUIT :Ping timeout: 276 seconds < 1567883769 432826 :Melvar!~melvar@dslb-084-063-063-063.084.063.pools.vodafone-ip.de QUIT :Ping timeout: 244 seconds < 1567883812 11544 :xkapastel!uid17782@gateway/web/irccloud.com/x-qgdfctcwfvubxhsg QUIT :Quit: Connection closed for inactivity < 1567884586 407314 :Melvar!~melvar@dslb-084-063-063-063.084.063.pools.vodafone-ip.de JOIN :#esoteric < 1567884979 632270 :xkapastel!uid17782@gateway/web/irccloud.com/x-xuyclhxtwdjynses JOIN :#esoteric < 1567885433 409178 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: how does the subroutine memory work? the documentation doesn't really explain it. < 1567885453 517831 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: apparently the if/while blocks have labels. what happens when you don't nest them properly? is that allowed? < 1567885951 578079 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: it probably doesn't matter while you only have one source file, but why do you define the global variables in the .h header file? < 1567886329 155335 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Land Competence {-} Conspiracy ;; At the beginning of your upkeep, you may change the text of target permanent you own by replacing all instances of one land type word with another until end of turn. < 1567886799 546967 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: also I find it strange how you keep seeking the program source code at every instruction < 1567887012 957657 :LBPHacker!lbphacker@trigraph.net NICK :LBPHacker_ < 1567887594 654426 :imode!~imode@unaffiliated/imode QUIT :Ping timeout: 268 seconds < 1567887877 153577 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: also, I think srand((unsigned ing)(clock()%65536)); is sort of a bad idea, but that only matters if you use the random state later < 1567888050 344880 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: whoa, the findand function is even worse. it will search for the function all around the program, and seek five times for every byte of the program until the start of the subroutine < 1567888059 784349 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :that really seems excessive < 1567888383 198797 :LBPHacker_!lbphacker@trigraph.net NICK :LBPHacker < 1567888407 188379 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :why don't you just read the whole program at the start, find all the subroutine labels, store them and their offsets in the program, sort them, and look up the label in the sorted table on subroutine calls? < 1567888432 629878 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :and then read instructions from the copy of the program that is loaded in memory, rather than fseek before every instruction < 1567888678 360092 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Yes, I should think that would be better < 1567889054 434212 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :oh yeah, good idea. Lykaina: ask zzo38, he writes C programs in a style that's alien to me but may be closer to the style that you wrote here < 1567889063 322845 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :zzo38: look at the interpreteR? < 1567889086 546776 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :it's in the git repository at https://github.com/lykaina/echidna < 1567889145 471539 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :OK, I will look < 1567889258 840667 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889258 917736 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889322 903415 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889323 854599 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889353 321975 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Probably it would be better to instead read the file into memory and convert into a binary code while reading it, so that it can skip comments and so on. Many other things are also rather inefficient < 1567889359 685605 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889360 618184 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889393 288381 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :zzo38: perhaps, but the S instruction makes that a bit hard < 1567889402 152642 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 245 seconds < 1567889416 897542 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889417 866358 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889477 476209 :imode!~imode@unaffiliated/imode JOIN :#esoteric < 1567889493 210696 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Reading it into memory without conversion would be another way. < 1567889723 487061 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889724 402249 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889759 394858 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889759 827435 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889849 704033 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889849 832620 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567889972 862429 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567889972 898866 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567890007 536980 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567890008 488995 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567890040 731914 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567890040 869261 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567890069 808924 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1567890069 922121 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Max SendQ exceeded < 1567890476 888999 :Sgeo__!~Sgeo@ool-18b98995.dyn.optonline.net JOIN :#esoteric < 1567890658 220720 :Sgeo_!~Sgeo@ool-18b98995.dyn.optonline.net QUIT :Ping timeout: 246 seconds < 1567891513 838420 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :shachaf: do you know (without testing) what -1 ** infinity is in IEEE floating point? < 1567891614 968221 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :kmc: my guess is that it's a NaN, inherited from log(-1) < 1567891625 104653 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :oh wait, you asked shachaf < 1567891625 845714 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :sorry < 1567891647 917819 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :wait... < 1567891652 736871 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :that's -(1 ** infinity) right? < 1567891655 770633 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :then it's -1 < 1567891669 98554 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :i'm guessing they mean (-1) ** infinity < 1567891671 526465 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :but idk < 1567891797 260143 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :ok i tested both on node.js but i'm not gonna spoil anything lol < 1567891838 822786 :int-e!~noone@int-e.eu PRIVMSG #esoteric :kmc: Is there a ** to begin with? I'd think exp(log(-1)*infinity), which becomes NaN? < 1567891854 613000 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :hmm i tested them on python and i got different results lol < 1567891863 606025 :int-e!~noone@int-e.eu PRIVMSG #esoteric :The C standard may have some odd ideas about this too < 1567891876 96213 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(they want things like pow(-1,3) = -1) < 1567891935 877142 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :wtf the python result is weird lol < 1567891976 725647 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :``` set -e; gcc -Wall -O -fno-math-errno -std=c11 -o tmp/a.out -x c - <<<$'#include\n#include\n''int main(void) { double r = -pow(1.0, INFINITY); printf("r = %g,\n", r); return 0; }'; tmp/a.out < 1567891978 62753 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :r = -1, < 1567892017 749487 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :see, -(1 ** infinity) is -1 < 1567892024 828061 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :interesting, js says NaN on that one lol < 1567892027 923596 :int-e!~noone@int-e.eu PRIVMSG #esoteric :b_jonas: uhm we want the - inside the pow < 1567892044 40258 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> (-1) ** (1/0) < 1567892044 376199 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :js says NaN on 1**infinity for some reason < 1567892045 975360 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 1.0 < 1567892046 642790 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :int-e: no we don't. if we had wanted it, kmc would have said that. < 1567892051 576682 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :int-e: it was a trick question. < 1567892068 436668 :int-e!~noone@int-e.eu PRIVMSG #esoteric :b_jonas: I'd hope it wasn't < 1567892075 333978 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> (-1) ** (-1/0) < 1567892077 755540 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 1.0 < 1567892148 697503 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :``` set -e; gcc -Wall -O -fno-math-errno -std=c11 -o tmp/a.out -lm -x c - <<<$'#include\n#include\n''int main(void) { double r = -pow(1.0, INFINITY); printf("-1**INFINITY = %e,\n", r); return 0; }'; tmp/a.out < 1567892150 121100 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​-1**INFINITY = -1.000000e+00, < 1567892169 528108 :int-e!~noone@int-e.eu PRIVMSG #esoteric :So, apparently, pow(1,x) is specified as 1. < 1567892195 764771 :int-e!~noone@int-e.eu PRIVMSG #esoteric :In C, which will infect a ton of programming languages. < 1567892248 155127 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :hi < 1567892257 350509 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :fell asleep sorry < 1567892334 873669 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: np, I waited a day to reply too after all, so you're not late < 1567892362 689558 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :> -(1 ** (1/0)) < 1567892365 209393 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : -1.0 < 1567892382 459016 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :``` set -e; gcc -Wall -O -fno-math-errno -std=c11 -o tmp/a.out -lm -x c - <<<$'#include\n#include\n''int main(void) { double r0 = atan2(-1.0, 1.0/INFINITY), r1 = atan2(-1.0, -1.0/INFINITY); printf("atan2(-1.0,0.0) = %e, r = %e\n", r0, r1); return 0; }'; tmp/a.out < 1567892383 841872 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :atan2(-1.0,0.0) = -1.570796e+00, r = -1.570796e+00 < 1567892391 169799 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :``` set -e; gcc -Wall -O -fno-math-errno -std=c11 -o tmp/a.out -lm -x c - <<<$'#include\n#include\n''int main(void) { double r0 = atan2(-1.0, 1.0/INFINITY), r1 = atan2(-1.0, -1.0/INFINITY); printf("atan2(-1.0,0.0) = %e, atan2(-1.0,-0.0) = %e\n", r0, r1); return 0; }'; tmp/a.out < 1567892392 562474 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :atan2(-1.0,0.0) = -1.570796e+00, atan2(-1.0,-0.0) = -1.570796e+00 < 1567892408 334045 :Spexty!2e3bf952@46.59.249.82 PRIVMSG #esoteric :lol < 1567892472 92912 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :wait, that's not where the branch cut is < 1567892509 386838 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :kmc: I don't. < 1567892520 726579 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :``` set -e; gcc -Wall -O -fno-math-errno -std=c11 -o tmp/a.out -lm -x c - <<<$'#include\n#include\n''int main(void) { double r0 = atan2(1.0/INFINITY, -1.0), r1 = atan2(-1.0/INFINITY, -1.0); printf("atan2(0.0, -1.0) = %e, atan2(-0.0, -1.0) = %e\n", r0, r1); return 0; }'; tmp/a.out < 1567892525 131174 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :atan2(0.0, -1.0) = 3.141593e+00, atan2(-0.0, -1.0) = -3.141593e+00 < 1567892525 881177 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :that's where the branch cut is < 1567892948 453649 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :one of the main problems with my interpreter is that it only works when everything is formatted perfectly. < 1567892997 302147 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :arranged, not formatted < 1567893015 813807 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: do you mean like the labels for the loops and conditionals? < 1567893021 466409 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :yes < 1567893302 450996 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :another problem is that i am limited by my programmimg skill < 1567893425 490306 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :the reason for main.h is that i reused a lot of code from an earlier attempt at this, one which foolishly used 4 .c files < 1567893445 505434 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and 4 .h files < 1567893474 503135 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: it's not a problem to use multiple c files, I only said that you shouldn't define the global variables in the header, because if you include the header multiple times, you'll get multiple copies of those variables that way < 1567893481 910799 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :that or an error < 1567893494 878900 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :oops < 1567893504 672038 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :only declare the global variables in the header file if you want to use it in multiple c files, and define each of them in a single c files < 1567893526 920641 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :declare global variables by using the `extern` keyword, and without an initializer < 1567893566 946299 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :define the global variable without the `extern` keyword or any other storage class modifier keyword < 1567893661 98565 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :shouls i just move everything into main.c? < 1567893672 482530 :imode!~imode@unaffiliated/imode QUIT :Ping timeout: 265 seconds < 1567893721 311356 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :you can if you want in a small program like this, but you should probably know how multiple compilation units work in C in case you want to write more C programs in the future < 1567893742 878258 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :note that the `extern` keyword works differently on variable declarations and on functions declarations < 1567893750 464967 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :(on function declarations, it basically does nothing) < 1567893774 38789 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :it's a bit confusing, but it's way too late to change that part of C < 1567894022 64711 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru PRIVMSG #esoteric :that IEEE talk above reminds me about how many languages know that x mod 0 is x < 1567894116 487734 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru PRIVMSG #esoteric :I forgot which ones again, even < 1567894286 616659 :adu!~ajr@pool-173-73-86-191.washdc.fios.verizon.net JOIN :#esoteric < 1567894377 161246 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :back < 1567894399 455758 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :check the repo again < 1567894461 611094 :imode!~imode@unaffiliated/imode JOIN :#esoteric < 1567894586 788790 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: now you have just one source file, no header, but no other changes. so no annoyance with the global variables now. < 1567894613 998357 :GeekDude!~G33kDude@unaffiliated/g33kdude QUIT :Quit: WeeChat 2.4 < 1567894822 504629 :Melvar!~melvar@dslb-084-063-063-063.084.063.pools.vodafone-ip.de QUIT :Ping timeout: 252 seconds < 1567894929 784049 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i agree that findiw and findand are pretty badly done < 1567895127 694011 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :crap < 1567895276 871202 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :the S op, the one that allows the "Hello World" program i wrote to work...it may need to go. probably replace it with an external data file lookup < 1567895338 74627 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :for readiw and readand to work, the program file can't contain extra data < 1567895368 431562 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: maybe change it so that instead of being able to read from anywhere in the source file, it can only read from sections that are specially marked for that, and have a label, and for reading you specify the label and an offset into the data block after that label? < 1567895440 20735 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :either that, or just allow to initialize parts of the memory with data in the program source code, and then just use ordinary memory reads < 1567895460 272699 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I'm still asking how the subroutine memory thing works by the way < 1567895503 202108 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :what part do you want to know about? i lost the question < 1567895527 213275 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :if I understand correctly, the top 4 kilobytes of the memory are for global variables, and mapped straigth to addresses < 1567895537 814614 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but for the memory before that, there's some special magic address translation or something < 1567895540 803100 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :how does that work? < 1567895585 664995 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :checking < 1567895644 904870 :Melvar!~melvar@dslb-084-063-063-063.084.063.pools.vodafone-ip.de JOIN :#esoteric < 1567895669 537151 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :is it like a data stack, with the memory reference automatically offset by the stack pointer or something? < 1567895832 551664 :GeekDude!~G33kDude@unaffiliated/g33kdude JOIN :#esoteric < 1567895851 848028 :unlimiter!~unlimiter@105.157.22.201 JOIN :#esoteric < 1567895893 519301 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :well, I don't understand that address translation and why you're doing it that way < 1567895900 802193 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :look at the ops '&','-','N' < 1567895923 297466 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and how they interact < 1567895926 864615 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :it looks as if it allows you to look at only the current stack frame, not stack frames below it < 1567895955 495449 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :are you supposed to pass arguments to function calls through globals then? < 1567895956 311967 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :what stack? < 1567895957 744020 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :it's weird < 1567895973 334179 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :well, there's also no stack, but basically < 1567895986 312125 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :it's my first working attempt < 1567895987 759212 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :it looks like you can only use one fixed part of that memory within a subroutine < 1567896008 854500 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :at least directly < 1567896014 266248 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :luckily indirect addressing lets you bypass it < 1567896022 167218 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but I still don't understand why you do this address translation at all < 1567896064 754877 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :did you look at doc/examples/rand_0-99.txt < 1567896066 649041 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :? < 1567896079 446787 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :no < 1567896106 109425 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :there's an example of subroutine usage there < 1567896266 231245 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :it's an elaborate use of jumps < 1567896277 938369 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and labels < 1567896309 390374 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: it looks like the RAND subroutine tries to make two formatted random digits, storing them to @F001 and @F000 or something < 1567896339 768253 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :yes, from the same number < 1567896469 488477 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :if i wanted to use the &RAND sub in another location, i'd use a different mask number < 1567896510 149186 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :each sub invocation has to have a unique mask number, from 01 to ef < 1567896551 355086 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :main uses 00 < 1567896644 742933 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :so you can only make a sub call 239 times max < 1567896663 746926 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :is this making sense? < 1567896683 402232 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :not to me < 1567896704 319919 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I understand that the subroutine call instruction sets a fixed base address, < 1567896761 21437 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :and then the memory reads in the subroutine, except for indirect ones, will read only from the stack frame at that address or from the global memory area, and the < 1567896777 896343 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :stack frames can't overlap because they're all 256 long and start at offsets that are multiples of 256-word pages < 1567896792 222976 :imode!~imode@unaffiliated/imode QUIT :Remote host closed the connection < 1567896795 45512 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but I don't get why this is useful < 1567896800 38311 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :oh < 1567896817 474410 :imode!~imode@unaffiliated/imode JOIN :#esoteric < 1567896818 498378 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I do also understand that the memory in those stack frames is preserved < 1567896828 219504 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :and that you can call subroutines at the same stack frame < 1567896834 544436 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but what's the point of the whole thing? < 1567896871 833808 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :honestly, it seemed like a good idea at the time, but it's probably not < 1567896957 818138 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :ok < 1567896967 607567 :imode2!~imode@unaffiliated/imode JOIN :#esoteric < 1567897007 878902 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i need to add the equivalent of a K op during a sub call, at the least < 1567897086 840210 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :(clearing the memory) < 1567897123 497620 :imode!~imode@unaffiliated/imode QUIT :Ping timeout: 265 seconds < 1567897172 109347 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and somehow have the ranges automatically assigned based on position on a stack < 1567897228 83309 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :instead of having the code define the ranges < 1567897285 14352 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :does that sound better? < 1567897343 270320 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I don't know. would you be able to choose the size of the stack frame, like in the subroutine defintion, and access the stack frames below from the subroutine? < 1567897381 489982 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :what does "stack frame" mean? < 1567897409 309130 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :the stack frame is the part of the memory that a subroutine uses for its own purposes < 1567897417 619098 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :that's where it puts its local variables < 1567897481 818239 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :always should be 512 bytes (256 addresses) < 1567897496 399239 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :it may also contain a few other things that help for subroutine linkage, such as the size of the stack frame or a pointer to the previous stack frame to allow to reset the stack pointer when the subroutine exits, and a return address which points into the code for where the subroutine was called from, but you may store those separately in an interpreter like this < 1567897532 183864 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :Lykaina: hmm. but even if it's always 256 words, you should probably allow accessing the stack frames below, to make it easier to pass function call parameters < 1567897539 513558 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :and the other frames can only be accessed indirectly < 1567897572 57115 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :so that a subroutine doesn't have to copy them from global memory area or access them with an indirect access (the latter would be hard unless you at least add a way to get the stack pointer) < 1567897603 922623 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i don't have call parameters at the moment < 1567897635 682176 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :yes, I do understand < 1567897658 273324 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :but you should consider to change them if you want to change how that memory accessworks < 1567897739 456088 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :i'll try something tonight and push it if it works < 1567898002 612440 :imode2!~imode@unaffiliated/imode QUIT :Ping timeout: 240 seconds < 1567898135 253472 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :should i move the srand to set the seed whenever a random number is requested? < 1567898152 701003 :b_jonas!~x@catv-176-63-25-75.catv.broadband.hu PRIVMSG #esoteric :I don't think that would help much < 1567898479 33801 :Lykaina!~lyka@unaffiliated/schrodingerscat PRIVMSG #esoteric :unsigned char submask[SUBMASKSIZE]; // i think that's a proto-stack < 1567899479 713422 :unlimiter!~unlimiter@105.157.22.201 QUIT :Quit: WeeChat 2.5 < 1567899583 212187 :arseniiv!~arseniiv@95.105.2.110.dynamic.ufanet.ru QUIT :Ping timeout: 246 seconds < 1567899673 856450 :tromp_!~tromp@2a02:a210:1585:3200:1d0b:a678:27f6:f1b4 JOIN :#esoteric < 1567899879 602184 :tromp!~tromp@2a02:a210:1585:3200:e0df:8599:cf09:7e1a QUIT :Ping timeout: 250 seconds