< 1635207422 923192 :Lord_of_Life_!~Lord@user/lord-of-life/x-2819915 JOIN #esolangs Lord_of_Life :Lord < 1635207461 150701 :Lord_of_Life!~Lord@user/lord-of-life/x-2819915 QUIT :Ping timeout: 244 seconds < 1635207502 314097 :Lord_of_Life_!~Lord@user/lord-of-life/x-2819915 NICK :Lord_of_Life < 1635210699 444420 :int-e!~noone@int-e.eu PRIVMSG #esolangs :Hmm, maybe chroma isn't quite as impossible as it seemed at first... < 1635210929 223735 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :int-e: it's good when a puzzle feels that way < 1635210953 266251 :int-e!~noone@int-e.eu PRIVMSG #esolangs :I still wish the levels were smaller though < 1635211005 568652 :int-e!~noone@int-e.eu PRIVMSG #esolangs :Simply because I prefer solving ten small levels in two hours than solving one big one. < 1635211014 85278 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :What size do you want? < 1635211014 755299 :int-e!~noone@int-e.eu PRIVMSG #esolangs :s/than/to/ < 1635211073 905366 :int-e!~noone@int-e.eu PRIVMSG #esolangs :something where solutions are 50-200 moves rather than 500-2000 :P < 1635211108 576623 :int-e!~noone@int-e.eu PRIVMSG #esolangs :Anyway, progress: https://int-e.eu/~bf3/tmp/chroma.png < 1635211355 723889 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :I prefer Hero Hearts myself (some levels do need 2000 moves or more, but many need many less moves). I also like to make up my own levels and classes of objects < 1635211544 469717 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :You can also try to make up your own smaller levels in Chroma too I suppose, if you want to do < 1635211604 208914 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :These are of a class of puzzle games involving grid based turn based level based puzzle games with deterministic rules < 1635211615 239801 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :Which others are there? Probably there are many < 1635212270 499660 :int-e!~noone@int-e.eu PRIVMSG #esolangs :there are a ton of sokoban derivatives < 1635212404 588600 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :Yes, there are many games like that, but do you have a list? There is also some game where there isn't pushing other objects around but still meets the other criteria < 1635212608 803114 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :(Also have you made up your own?) < 1635212813 996694 :int-e!~noone@int-e.eu PRIVMSG #esolangs :No, I don't have a list. A Monster's Expedition, Fish Fillets, XSok, small ones like Vertebrae, 5 Step Steve... there are many more that I forgot. And many games have (easy) Sokoban puzzles as minigames. < 1635212899 905153 :int-e!~noone@int-e.eu PRIVMSG #esolangs :and "grid-based" is too broad to even consider an enumeration... it includes stuff like Rush Hour which has moving pieces but no agent. Even the 15 puzzle is grid-based. < 1635212915 959764 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :Another game I have played is Sokoball, which is similar to Sokoban in some ways, but once a box is placed on a target, the box disappears so that you can now walk over it and put another box there too; there are also some new pieces such as arrows to walk only one way, and tiles that cause all other tiles in a line with it ti slide toward you, etc. < 1635212932 779273 :int-e!~noone@int-e.eu PRIVMSG #esolangs :Though I guess in that case you can think of the empty space as the agent. < 1635212952 735166 :int-e!~noone@int-e.eu PRIVMSG #esolangs :(With the power to swap places with an adjacent piece) < 1635212965 785445 :int-e!~noone@int-e.eu PRIVMSG #esolangs :And no, I have not tried to make my own puzzles. < 1635212975 190465 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :Xsok is more general in that you can define your own kind of pieces, although it is rather limited. < 1635213163 742219 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :There is a Game Boy Advance game called "Brain N Bells"; I have the source code too. That game has no pushable objects (although since the source code is available, such objects could be added). < 1635213206 101226 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :int-e: it seems we will very soon see whether my guild hall theory is correct < 1635213278 102916 :SGautam!uid286066@id-286066.ilkley.irccloud.com QUIT :Quit: Connection closed for inactivity < 1635213323 213075 :int-e!~noone@int-e.eu PRIVMSG #esolangs :no logistics problem, sadly... those replicas are too good < 1635213382 422612 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :I want to port Chroma, Brain N Bells, and other games to Free Hero Mesh too. A converter could also be made Xsok -> Free Hero Mesh, maybe (as long as the pictures are square and can be changed to the required palette, if necessary; I haven't checked the palettes). (Maybe better graphics can also be made for Xsok since I think the included ones aren't very good) < 1635213464 438585 :int-e!~noone@int-e.eu PRIVMSG #esolangs :I guess Baba is You would also make the list. But Recursed wouldn't because it has platforming elements. < 1635213519 148987 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :Platform elements are accepiable if it still uses a rectangular grid and is turn based rather than time based < 1635213600 253153 :int-e!~noone@int-e.eu PRIVMSG #esolangs :hmm > 1635213632 387950 PRIVMSG #esolangs :14[[07SRL++14]]4 M10 02https://esolangs.org/w/index.php?diff=89066&oldid=89053 5* 03TheJonyMyster 5* (+0) 10bear => beer < 1635213651 767886 :int-e!~noone@int-e.eu PRIVMSG #esolangs :so if all coordinates are exact pixels... < 1635213652 877645 :int-e!~noone@int-e.eu PRIVMSG #esolangs ::P < 1635213790 124209 :int-e!~noone@int-e.eu PRIVMSG #esolangs :Anyway, no, Recursed has grid-based level layouts but boxes can be pushed horizontally by pixels, and jumping is smooth and there's a timing element to jumps (mainly because you can throw stuff mid jump) < 1635213847 842157 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :OK. < 1635213980 305081 :int-e!~noone@int-e.eu PRIVMSG #esolangs :err, s/pushed/placed/ < 1635214028 257822 :int-e!~noone@int-e.eu PRIVMSG #esolangs :(you move boxes by picking them up, carrying them to another place, then putting them down; it's not sokoban-like at all, really) < 1635214906 573755 :ais523!~ais523@213.205.240.73 JOIN #esolangs ais523 :(this is obviously not my real name) < 1635214934 825672 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :I finished writing the world's fastest FizzBuzz: https://codegolf.stackexchange.com/a/236630 < 1635214952 69316 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :it has reminded me to complain about the x86(-64) CPUID instruction < 1635214971 98575 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :I'm not sure how it's possible to design an API like that < 1635215002 997606 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :specifically, there are a number of possible CPUID commands, some of which will and some of which won't be implemented on any given CPU < 1635215044 73675 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :they're divided into two sets, "normal" and "extended" (the former have small numbers, the larger have small numbers except with 0x8000000 added) < 1635215081 618499 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :if you try to use a command that isn't implemented, but its number is lower than another command in the same set, it returns all-zeroes < 1635215101 58062 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :if you try to use a command that isn't implemented and its number is *higher* than any other implemented command in the same set, it returns garbage, rather than all-zeroes < 1635215140 466344 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :so you have to use a special CPUID command, CPUID command 0 or 0x80000000, to ask for the highest implemented command, before you can safely call any of the others < 1635215206 629809 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :the CPUs clearly know what their maximum implemented command is – why not make all the unimplemented ones return zeroes, rather than only the commands whose number is less than a particular number that you have to always have to ask for < 1635215249 9311 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :oh, also all these commands have four return values, which they return in eax, ebx, ecx, edx, even though you probably only wanted one of those values (and ebx is a call-preserved register and gets clobbered anyway) < 1635215306 689239 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :the other weird thing is that CPUID does a pipeline flush as a side effect, which is just strange (there are less side-effecty ways to get the same effect, and no particular reason you'd want to do a pipeline flush and CPUID at the same time) < 1635215359 521904 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :maybe it's the oldest way to do a pipeline flush, and the more sensible ways only exist on newer processors < 1635215440 372356 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :…actually, maybe it really is the only way, the other instructions only seem to flush subsets of the pipeline, rather than *everything* < 1635215446 852324 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :still makes no sense though < 1635216925 947266 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :(now I'm wondering why you'd ever want to flush the entire CPU pipeline, rather than just the bits of it you cared about) < 1635217587 53541 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :Some games include solutions; that is helpful if reimplementing it in Free Hero Mesh since then the autotest mode can be used, to verify that the implementation is correct. < 1635217605 570199 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :I think that the modern x86 is too complicated designed < 1635217718 379210 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :I don't like how prefix-heavy the instruction set is < 1635217723 92420 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :it isn't Huffman-coded very well < 1635217754 621834 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :also I don't know how to feel about `lea` in particular < 1635217777 910945 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635217789 771018 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca PRIVMSG #esolangs :(I think the old x86 (8088) isn't quite too bad, though) < 1635217994 627127 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :it is obviously possible to do a lot better, but backwards compatibility is an important selling point < 1635218067 892135 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Ping timeout: 260 seconds < 1635218788 623318 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :…out of all the "move with sign-extension" opcodes, why is 32-bit to 32-bit the one with the shortest encoding? that one isn't even useful < 1635218806 685968 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :and there's a note in the manual saying that you should just use a regular move instead < 1635218901 499376 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :the instruction seems to have been newly added on x86-64, and they picked one of the few one-byte opcodes for *that* < 1635218946 642804 :ais523!~ais523@213.205.240.73 PRIVMSG #esolangs :(you can prefix it into a 32-bit to 64-bit sign-extend, but it's completely useless without the prefix) < 1635219699 601919 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635219995 576159 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Ping timeout: 260 seconds < 1635220156 83644 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite < 1635220578 591738 :dermato!~dermatobr@cpe-70-114-219-76.austin.res.rr.com QUIT :Ping timeout: 260 seconds < 1635220671 651671 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635220685 951899 :dermato!~dermatobr@cpe-70-114-219-76.austin.res.rr.com JOIN #esolangs dermato :dermato < 1635220787 604805 :ais523!~ais523@213.205.240.73 QUIT :Ping timeout: 264 seconds < 1635220967 702996 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Ping timeout: 264 seconds < 1635221393 901685 :Hooloovoo!~Hooloovoo@hax0rbana.org NICK :Hoolooboo < 1635221735 324155 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635221981 274881 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Ping timeout: 245 seconds < 1635224531 630322 :Kit!~NotApplic@2603-6010-a141-6fa3-1eb8-5900-cbae-6f7a.res6.spectrum.com QUIT :Ping timeout: 264 seconds < 1635224575 362220 :NotApplicable!~NotApplic@2603-6010-a141-6fa3-e148-621b-b76c-30ae.res6.spectrum.com JOIN #esolangs * :realname < 1635224582 594022 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635224880 644714 :NotApplicable1!~NotApplic@2603-6010-a141-6fa3-e148-621b-b76c-30ae.res6.spectrum.com JOIN #esolangs * :realname < 1635224895 577538 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Ping timeout: 260 seconds < 1635224956 269350 :NotApplicable!~NotApplic@2603-6010-a141-6fa3-e148-621b-b76c-30ae.res6.spectrum.com QUIT :Ping timeout: 245 seconds < 1635226936 612386 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635227231 610641 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Ping timeout: 264 seconds < 1635227964 630490 :dyeplexer!~dyeplexer@user/dyeplexer JOIN #esolangs dyeplexer :t b k ky jt h bc < 1635229077 890546 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635232033 6561 :immibis!~hexchat@62.156.144.218 QUIT :Remote host closed the connection < 1635232055 691688 :immibis!~hexchat@62.156.144.218 JOIN #esolangs * :realname < 1635233650 412023 :Sgeo!~Sgeo@user/sgeo QUIT :Read error: Connection reset by peer < 1635235391 321276 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :04:16:45 Simply because I prefer solving ten small levels in two hours than solving one big one. -- but the thing is that you sometimes need to drag some item from one room to another one < 1635235396 599391 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :at least in XOR < 1635235549 673914 :hendursa1!~weechat@user/hendursaga JOIN #esolangs hendursaga :weechat < 1635235559 240752 :riv!river@tilde.team/user/river PRIVMSG #esolangs :nice fizzbuzz < 1635235719 627802 :hendursaga!~weechat@user/hendursaga QUIT :Ping timeout: 276 seconds < 1635236833 439817 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Quit: https://quassel-irc.org - Chat comfortably. Anywhere. < 1635236903 932419 :spruit11!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635237043 902308 :Guest95!~Guest95@out-207-52.elettra.trieste.it JOIN #esolangs * :[https://web.libera.chat] Guest95 < 1635237163 810241 :spruit11!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Client Quit < 1635237221 907018 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635237416 601012 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Client Quit < 1635237434 618479 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635237678 99391 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Client Quit < 1635237750 614717 :egelbot!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635237860 227050 :egelbot!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b QUIT :Client Quit < 1635237912 914550 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b JOIN #esolangs * :anon < 1635237960 522826 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :the most stupid thing in reddit ban is that I'm unable to add new mods to my cats subreddit -- later they'll just remove it "because being unmoderated" < 1635238190 49399 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :together with inability to even report content the ban is obviously isn't something to protect the website from something bad but rather opposite -- it's a tool for admins to express their hate and to ruin the community that users build < 1635238589 902646 :Guest95!~Guest95@out-207-52.elettra.trieste.it QUIT :Ping timeout: 256 seconds < 1635238912 902371 :Guest95!~Guest95@out-207-52.elettra.trieste.it JOIN #esolangs * :[https://web.libera.chat] Guest95 < 1635239911 859750 :hendursa1!~weechat@user/hendursaga QUIT :Remote host closed the connection < 1635240176 633855 :hendursa1!~weechat@user/hendursaga JOIN #esolangs hendursaga :weechat < 1635240645 988385 :riv!river@tilde.team/user/river PRIVMSG #esolangs :that's a shame < 1635240833 904775 :Guest95!~Guest95@out-207-52.elettra.trieste.it QUIT :Ping timeout: 256 seconds < 1635241522 605853 :dyeplexer!~dyeplexer@user/dyeplexer QUIT :Ping timeout: 260 seconds < 1635241965 877258 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b NICK :egelbot < 1635242101 885520 :egelbot!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b NICK :sprout < 1635242388 883127 :dyeplexer!~dyeplexer@user/dyeplexer JOIN #esolangs dyeplexer :t b k ky jt h bc < 1635243994 787575 :nakilon!~nakilon@user/nakilon QUIT :Quit: rasengan did nothing wrong < 1635246578 464037 :wib_jonas!~wib_jonas@business-37-191-60-209.business.broadband.hu JOIN #esolangs * :[https://web.libera.chat] wib_jonas < 1635247969 958291 :tech_exorcist!txrcst@user/tech-exorcist/x-0447479 JOIN #esolangs tech_exorcist :he/him < 1635251026 328608 :dutch!~DutchIngr@user/dutch QUIT :Ping timeout: 252 seconds < 1635251247 591888 :dutch!~DutchIngr@user/dutch JOIN #esolangs DutchIngraham :dutch < 1635251640 879408 :arseniiv!~arseniiv@136.169.235.33 JOIN #esolangs * :the chaotic arseniiv < 1635251724 582442 :nakilon!~nakilon@user/nakilon JOIN #esolangs nakilon :Victor Maslov < 1635252378 798702 :SGautam!uid286066@id-286066.ilkley.irccloud.com JOIN #esolangs SGautam :Siddharth Gautam < 1635252901 660210 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :thanks to someone on this channel who mentioned Oracle Cloud -- I've just migrated to there from Yandex Cloud since that doesn't have server Free Tier < 1635255851 564757 :NotApplicable1!~NotApplic@2603-6010-a141-6fa3-e148-621b-b76c-30ae.res6.spectrum.com QUIT :Ping timeout: 264 seconds < 1635256054 552845 :Sgeo!~Sgeo@user/sgeo JOIN #esolangs Sgeo :realname < 1635256303 348629 :Thelie!~Thelie@business-24-134-17-157.pool2.vodafone-ip.de JOIN #esolangs * :Thelie < 1635257721 403949 :NotApplicable!~NotApplic@2603-6010-a141-6fa3-b59f-164c-8963-4169.res6.spectrum.com JOIN #esolangs * :realname < 1635258108 645242 :Koen!~Koen@2a01cb0407597a00ad609bcfb31a14c3.ipv6.abo.wanadoo.fr JOIN #esolangs * :Koen < 1635259679 338299 :tech_exorcist!txrcst@user/tech-exorcist/x-0447479 QUIT :Remote host closed the connection < 1635259717 820944 :tech_exorcist!txrcst@user/tech-exorcist/x-0447479 JOIN #esolangs tech_exorcist :he/him < 1635260097 136212 :hendursa1!~weechat@user/hendursaga QUIT :Quit: hendursa1 < 1635260128 349935 :hendursaga!~weechat@user/hendursaga JOIN #esolangs hendursaga :weechat < 1635260333 382806 :tech_exorcist!txrcst@user/tech-exorcist/x-0447479 QUIT :Quit: see you later < 1635262638 962956 :tech_exorcist!txrcst@user/tech-exorcist/x-0447479 JOIN #esolangs tech_exorcist :he/him < 1635264118 367238 :Thelie!~Thelie@business-24-134-17-157.pool2.vodafone-ip.de QUIT :Remote host closed the connection < 1635264585 872572 :wib_jonas!~wib_jonas@business-37-191-60-209.business.broadband.hu QUIT :Quit: Client closed < 1635266311 908021 :arseniiv!~arseniiv@136.169.235.33 QUIT :Ping timeout: 260 seconds > 1635267190 89765 PRIVMSG #esolangs :14[[07EPL Main14]]4 10 02https://esolangs.org/w/index.php?diff=89067&oldid=88452 5* 03Aboba228 5* (+18) 10/* Hello, world Program for Windows */ > 1635267230 217350 PRIVMSG #esolangs :14[[07Sleep14]]4 N10 02https://esolangs.org/w/index.php?oldid=89068 5* 03PixelatedStarfish 5* (+34) 10Created page with "[http://sleep.dashnine.org/ Sleep]" < 1635268102 607103 :arseniiv!~arseniiv@136.169.235.33 JOIN #esolangs * :the chaotic arseniiv > 1635268298 69423 PRIVMSG #esolangs :14[[07EPL Main14]]4 10 02https://esolangs.org/w/index.php?diff=89069&oldid=89067 5* 03Timofeyka 5* (-18) 10Undo revision 89067 by [[Special:Contributions/Aboba228|Aboba228]] ([[User talk:Aboba228|talk]]) < 1635268467 895380 :sprock!~sprock@user/sprock QUIT :Ping timeout: 260 seconds < 1635268518 927920 :Koen!~Koen@2a01cb0407597a00ad609bcfb31a14c3.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection < 1635268646 943562 :Koen!~Koen@lfbn-idf2-1-325-70.w82-123.abo.wanadoo.fr JOIN #esolangs * :Koen > 1635269516 31531 PRIVMSG #esolangs :14[[07Jaune14]]4 10 02https://esolangs.org/w/index.php?diff=89070&oldid=88853 5* 03CoffeeHax17 5* (+115) 10/* Interpreters */ < 1635270035 908452 :Guest8428!~Guest84@213.184.238.154 JOIN #esolangs * :[https://web.libera.chat] Guest84 < 1635270192 241279 :Guest8428!~Guest84@213.184.238.154 QUIT :Client Quit < 1635270241 483643 :Koen!~Koen@lfbn-idf2-1-325-70.w82-123.abo.wanadoo.fr QUIT :Remote host closed the connection > 1635270448 250494 PRIVMSG #esolangs :14[[07User:CoffeeHax1714]]4 10 02https://esolangs.org/w/index.php?diff=89071&oldid=78797 5* 03CoffeeHax17 5* (+55) 10/* Hi there! */ < 1635271554 782728 :SGautam!uid286066@id-286066.ilkley.irccloud.com QUIT :Quit: Connection closed for inactivity > 1635271634 216652 PRIVMSG #esolangs :14[[07JSMeth14]]4 10 02https://esolangs.org/w/index.php?diff=89072&oldid=89036 5* 03CoffeeHax17 5* (+886) 10Added Tape JavaScript constructor > 1635271989 957513 PRIVMSG #esolangs :14[[07JSMeth14]]4 M10 02https://esolangs.org/w/index.php?diff=89073&oldid=89072 5* 03CoffeeHax17 5* (-27) 10Removed category > 1635272018 85150 PRIVMSG #esolangs :14[[07JSMeth14]]4 M10 02https://esolangs.org/w/index.php?diff=89074&oldid=89073 5* 03CoffeeHax17 5* (-2) 10 < 1635272065 956549 :riv!river@tilde.team/user/river PRIVMSG #esolangs :hmm < 1635272076 563222 :riv!river@tilde.team/user/river PRIVMSG #esolangs :you can make a compiler frmo an interpreter and vice versa < 1635272129 332201 :riv!river@tilde.team/user/river PRIVMSG #esolangs :if our platform is the language B, and the host language is L. let c : B -> L be a compiler, and i : B -> () be an interpreter (not a pure function) < 1635272213 615144 :riv!river@tilde.team/user/river PRIVMSG #esolangs :correction c : L -> < 1635272215 765063 :riv!river@tilde.team/user/river PRIVMSG #esolangs :correction c : L -> B < 1635272254 753397 :riv!river@tilde.team/user/river PRIVMSG #esolangs :given a self interpreter for self : B -> (), then you can do: i'(program) = self(c(program)) < 1635272336 794661 :riv!river@tilde.team/user/river PRIVMSG #esolangs :other way, let "i" : L be the source code for the interpreter i, then c(program) = "i"(program) < 1635272355 827140 :riv!river@tilde.team/user/river PRIVMSG #esolangs :so the fake interpreter compiles the program and runs a self interpreter < 1635272366 539316 :riv!river@tilde.team/user/river PRIVMSG #esolangs :the fake compiler just sticks the interpreter and input program together < 1635272541 843417 :NotApplicable!~NotApplic@2603-6010-a141-6fa3-b59f-164c-8963-4169.res6.spectrum.com QUIT :Remote host closed the connection < 1635272559 684358 :NotApplicable!~NotApplic@2603-6010-a141-6fa3-4bc3-d9d3-dc16-2d08.res6.spectrum.com JOIN #esolangs * :realname < 1635272704 570586 :riv!river@tilde.team/user/river PRIVMSG #esolangs :i guess you can iterate this < 1635272713 118638 :olsner!~salparot@c83-252-230-207.bredband.tele2.se PRIVMSG #esolangs :are you rediscovering the futamura projection? < 1635272730 682801 :riv!river@tilde.team/user/river PRIVMSG #esolangs :take an interpreter and make it worse/slower by adding a level of compilation and self-interpretation < 1635272935 239596 :riv!river@tilde.team/user/river PRIVMSG #esolangs :this is much simpler and easier to implement than futamura < 1635272952 566804 :riv!river@tilde.team/user/river PRIVMSG #esolangs :bbut it makes things worse instead of better < 1635273090 118469 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Futamura's reasoning shouldn't require a good specializer. Like, you should be able to make a slow compiler-compiler in the same fashion. < 1635273151 613119 :riv!river@tilde.team/user/river PRIVMSG #esolangs :fair enough < 1635273491 96129 :tech_exorcist_!txrcst@user/tech-exorcist/x-0447479 JOIN #esolangs tech_exorcist :he/him < 1635273498 951758 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :ACTION mumbles something about theory and practice < 1635273510 660104 :dyeplexer!~dyeplexer@user/dyeplexer QUIT :Remote host closed the connection < 1635273538 351580 :tech_exorcist!txrcst@user/tech-exorcist/x-0447479 QUIT :Remote host closed the connection < 1635273632 541670 :riv!river@tilde.team/user/river PRIVMSG #esolangs :say that again clearer? < 1635273908 250860 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :the requirements usually differ for interpreters and compilers. the biggest difference is that for interpreters you usually want zero overhead to start interpreting, compilers it's the opposite < 1635273952 355650 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :right? for a compiler you usually don't care that much that it takes minutes to compile something, with interpreters it's the exact opposite > 1635273968 122660 PRIVMSG #esolangs :14[[07Tiltedc14]]4 M10 02https://esolangs.org/w/index.php?diff=89075&oldid=89055 5* 03Rphii 5* (+144) 10/* Disadvantages */ con: file size < 1635274017 574661 :riv!river@tilde.team/user/river PRIVMSG #esolangs :yes that's a nice view < 1635274033 515459 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :though I have to admit something like Haskell seems to be very good at marrying both requirements < 1635274039 448163 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :*ghc < 1635274041 394465 :riv!river@tilde.team/user/river PRIVMSG #esolangs :if you measure the overhead of the setup and the execution < 1635274052 651795 :riv!river@tilde.team/user/river PRIVMSG #esolangs :that tells you whether something is an interpreter or compiler < 1635274066 587716 :riv!river@tilde.team/user/river PRIVMSG #esolangs :more overhead in execution means interpreter, more overhead in setup means compiler < 1635274080 877701 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :something like that yah < 1635274085 708103 :riv!river@tilde.team/user/river PRIVMSG #esolangs :never thought about it this way before > 1635274223 340138 PRIVMSG #esolangs :14[[07Tiltedc14]]4 M10 02https://esolangs.org/w/index.php?diff=89076&oldid=89075 5* 03Rphii 5* (+245) 10/* Advantages */ pro: looks (and more) > 1635274258 255126 PRIVMSG #esolangs :14[[07Jaune14]]4 M10 02https://esolangs.org/w/index.php?diff=89077&oldid=89070 5* 03CoffeeHax17 5* (+2) 10/* Multiplier */ Replaced code. Previous jaune programme would loop indefinitely for value 1 of 1st cell. > 1635274877 349787 PRIVMSG #esolangs :14[[07Jaune14]]4 10 02https://esolangs.org/w/index.php?diff=89078&oldid=89077 5* 03CoffeeHax17 5* (-6610) 10Removed common lisp implementation code. The source is very long and takes the focus away from the language itself. Please add a link with the source code instead if necessary. > 1635275880 553392 PRIVMSG #esolangs :14[[07JSMeth14]]4 M10 02https://esolangs.org/w/index.php?diff=89079&oldid=89074 5* 03CoffeeHax17 5* (+1) 10/* Real JavaScript implementation */ < 1635276620 843372 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :sprout: I don't think that's true. you could have a high-level language that is interpreted but also requires significant preprocessing of the whole program. < 1635276820 186364 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :riv: just imagine a Haskell interpreter: not only does it have to read the whole program because names can be defined in any order and referenced earlier, but also may have to typecheck the whole program to figure out what instance to use in any one place, < 1635276833 745922 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :and if you use enough extensions for Haskell, that typechecking could take a lot of time < 1635278114 464104 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :b_jonas: but then it would fail to meet a simple requirement for an interpreter. which is "start running the program as fast as possible" < 1635278136 403879 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :which is, of course, a requirement I invented. but feels plausible < 1635278294 513896 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :you can request that, but not all interpreters can do that, and there can be languages (like Haskell) where it's not possible, probably even esolangs where it's not possible even for a typical program (as opposed to only evil programs in Haskell) < 1635278605 902273 :sprock!~sprock@user/sprock JOIN #esolangs sprock :Maeve Sproule < 1635278836 532604 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :sure, but then I would argue those aren't interpreters in the conventional/pragmatic sense < 1635278846 647344 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :let's agree to disagree < 1635279053 17830 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :sprout: you can certainly say that, I just don't understand the framing where that's the distinction between a compiler and an interpreter < 1635279132 961269 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :sprout: A fast GLSL interpreter typically compiles to GPU-specific native code before execution, as a counterexample. < 1635279148 299767 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :emphasis on 'fast' < 1635279171 961289 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Well, your requirement is where "fast" comes from. It's not a theoretical requirement, but one borne from software engineering. < 1635279203 655231 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :it's just an observation. you do care that Python doesn't spend minutes compiling scripts before you run them, for C++ not so much < 1635279271 931611 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :I suppose that this is one reason why Futamura's projections are nice. They cut through this problem by showing that compilers are specialized interpreters, creating an interpreter-compiler relationship which doesn't care about relative speeds. < 1635279292 520506 :tm512!~tm512@user/tm512 PRIVMSG #esolangs :I wouldn't say that an interpreter has to begin execution as fast as possible. there might be cases where you don't want that, like maybe to achieve improved performance when the code is actually running < 1635279355 431740 :tm512!~tm512@user/tm512 PRIVMSG #esolangs :like it'd be faster to just start interpreting source code directly rather than compiling to bytecode first, but a bytecode intepreter generally achieves better performance after the initial compile overhead < 1635279379 836480 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :I am going to hold my ground on this! < 1635279415 755370 :tm512!~tm512@user/tm512 PRIVMSG #esolangs :for something very simple that's executed often, you might want to skip bytecode compilation, but if it's something that only starts up infrequently and runs for a long while, the extra startup time could be worth the tradeoff < 1635279447 230370 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :sprout: I agree that, as an engineering principle, an interactive environment ought to be low-latency. But there's just too many counterexamples if we try to make it formal. < 1635279474 932986 :tm512!~tm512@user/tm512 PRIVMSG #esolangs :but with a lot of stuff you can precompile the bytecode, so like a source code or AST interpreter is never really necessary afaict < 1635279494 569698 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Suppose that an interpreter sorts its input program somehow before executing (e.g. as in BASIC); would you say that an interpreter is not a real interpreter if it uses a suboptimal sorting algorithm? < 1635279499 540076 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :Corbin: apart from some general observation that there's some trade-off there possibly < 1635279567 419095 :sprout!~quassel@2a02:a467:ccd6:1:e876:dcb:76b1:818b PRIVMSG #esolangs :something about all abstractions go wrong < 1635280054 392093 :NotApplicable!~NotApplic@2603-6010-a141-6fa3-4bc3-d9d3-dc16-2d08.res6.spectrum.com NICK :Kit < 1635280494 990162 :tech_exorcist_!txrcst@user/tech-exorcist/x-0447479 QUIT :Quit: see you tomorrow < 1635284343 886345 :sprock!~sprock@user/sprock QUIT :Ping timeout: 260 seconds < 1635291539 661116 :sprock!~sprock@user/sprock JOIN #esolangs sprock :Maeve Sproule