< 1592527810 944184 :sebbu2!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1592527868 864817 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 256 seconds > 1592528484 437385 PRIVMSG #esoteric :14[[07International Phonetic Esoteric Language14]]4 10 02https://esolangs.org/w/index.php?diff=73974&oldid=73811 5* 03Bigyihsuan 5* (+274) 10/* IO */ > 1592528555 130967 PRIVMSG #esoteric :14[[07International Phonetic Esoteric Language14]]4 10 02https://esolangs.org/w/index.php?diff=73975&oldid=73974 5* 03Bigyihsuan 5* (+85) 10/* Plosives: Stack Operations */ > 1592528571 504695 PRIVMSG #esoteric :14[[07International Phonetic Esoteric Language14]]4 10 02https://esolangs.org/w/index.php?diff=73976&oldid=73975 5* 03Bigyihsuan 5* (+0) 10/* IO */ > 1592528973 901446 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73977&oldid=73969 5* 03ZippyMagician 5* (+1066) 10Self-interpreter > 1592529175 581105 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73978&oldid=73977 5* 03ZippyMagician 5* (+40) 10Clarification (self-interpreter) > 1592529365 920487 PRIVMSG #esoteric :14[[07International Phonetic Esoteric Language14]]4 10 02https://esolangs.org/w/index.php?diff=73979&oldid=73976 5* 03Bigyihsuan 5* (+830) 10/* Overview */ > 1592529598 459479 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73980&oldid=73978 5* 03ZippyMagician 5* (-34) 10Marked as implemented > 1592529608 300256 PRIVMSG #esoteric :14[[07International Phonetic Esoteric Language14]]4 10 02https://esolangs.org/w/index.php?diff=73981&oldid=73979 5* 03Bigyihsuan 5* (+303) 10/* The Register */ < 1592532097 659773 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :Sometimes, in order to win the game, you must concede. < 1592532158 339557 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Which game? Magic: The Gathering? < 1592532211 188802 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :Yes, although maybe other games too I don't know. < 1592532322 545342 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :How can you win that game by conceding? < 1592532378 381047 :Phantom__Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1592532427 364315 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :Well, sometimes it is possible in case of team games or subgames. < 1592532692 538503 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :For example, see: http://zzo38computer.org/textfile/miscellaneous/magic_card/puzzle.5 < 1592534174 692873 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :Apparently, Wizards of the Coast seems to really hate Time Spiral block. But I think is better than most blocks, and some other people also think. At least, this is what some people wrote on the comments. < 1592535079 507672 :Soni!~quassel@unaffiliated/soniex2 QUIT :Quit: http://quassel-irc.org - Chat comfortably. Anywhere. < 1592535315 9760 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1592536194 451185 :Phantom__Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Ping timeout: 240 seconds < 1592537327 900659 :ArthurSt1ong!~ArthurStr@nat-pool-13-124.soborka.net QUIT :Quit: leaving < 1592537348 946150 :ArthurStrong!~ArthurStr@nat-pool-13-124.soborka.net JOIN :#esoteric < 1592539905 629845 :ArthurStrong!~ArthurStr@nat-pool-13-124.soborka.net PRIVMSG #esoteric :Hi all. Dear lazyweb, what are practical uses of regex backresolves? Wondering... < 1592544466 581844 :Soni!~quassel@unaffiliated/soniex2 JOIN :#esoteric < 1592544475 922065 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1592544501 881722 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ArthurStrong: do you mean "backreferences"? not sure about /practical/, but some people have used them for some unexpectedly powerful esoprograms < 1592544504 535191 :adu!~arobbins@c-76-111-99-194.hsd1.md.comcast.net QUIT :Quit: adu < 1592544664 281850 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :for example, here's a regex (not made by me!) that divides a number (expressed in bijective unary) by sqrt(2): https://codegolf.stackexchange.com/questions/198427/shift-right-by-half-a-bit/198428#198428 < 1592544791 678926 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :similarly, here's a regex (made by the same person as the above regex) that matches factorials (expressed in bijective unary): https://codegolf.stackexchange.com/questions/121731/is-this-number-a-factorial/178979#178979 < 1592545193 746093 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :on a related note, are all linear bound automata primitive recursive? < 1592547189 229344 :Cale!~cale@CPEf48e38ee8583-CM0c473de9d680.cpe.net.cable.rogers.com QUIT :Ping timeout: 265 seconds < 1592547325 378129 :tromp!~tromp@2a02:a210:ca3:2800:2160:3556:f605:27df JOIN :#esoteric < 1592547600 570686 :Cale!~cale@2607:fea8:9960:35:55f2:17e9:76b6:59e0 JOIN :#esoteric < 1592547930 752537 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :They said JavaScript doesn't have a integer type; well, it does now, and I think it did even when that message was written < 1592547951 333916 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :(However, its integer type is signed, not unsigned.) < 1592551722 521669 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`5 w < 1592551726 122561 :HackEso!~h@unaffiliated/fizzie/bot/hackeso PRIVMSG #esoteric :1/1:gray//Gray is e common misspalling of grey. \ currying//Functions are curried by taking curry(f). \ topology//Topology is another name for topos theory. \ ssr//SSR is Steven's Sausage Roll. \ itay//Itay is Christmas in Italy. < 1592552037 933918 :rain1!~rain1@unaffiliated/rain1 JOIN :#esoteric < 1592552974 197337 :LKoen!~LKoen___@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr JOIN :#esoteric < 1592553323 927851 :cpressey!~cpressey@79-72-203-48.dynamic.dsl.as9105.com JOIN :#esoteric < 1592554426 971231 :imode!~linear@unaffiliated/imode QUIT :Ping timeout: 256 seconds < 1592555466 457805 :Phantom__Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric > 1592556345 454602 PRIVMSG #esoteric :14[[07Tandem14]]4 N10 02https://esolangs.org/w/index.php?oldid=73982 5* 03Chris Pressey 5* (+14554) 10Created page with "'''Tandem''' is an experimental rewriting language, designed by [[Chris Pressey]] in June 2020, where the rewrite rules form a Kleene algebra. The object being rewritten by a..." > 1592556496 532888 PRIVMSG #esoteric :14[[07Tandem14]]4 M10 02https://esolangs.org/w/index.php?diff=73983&oldid=73982 5* 03Chris Pressey 5* (-3) 10/* Implementing Automata in Tandem */ grammar > 1592556794 801969 PRIVMSG #esoteric :14[[07Tandem14]]4 10 02https://esolangs.org/w/index.php?diff=73984&oldid=73983 5* 03Chris Pressey 5* (+203) 10/* Syntax */ Describe the escape sequences allowed in string literals. > 1592556855 305153 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=73985&oldid=73951 5* 03Chris Pressey 5* (+13) 10/* T */ Add Tandem. > 1592557472 150385 PRIVMSG #esoteric :14[[07Tandem14]]4 10 02https://esolangs.org/w/index.php?diff=73986&oldid=73984 5* 03Chris Pressey 5* (+94) 10/* Examples */ Clarify why this example never matches. > 1592557483 16041 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73987&oldid=73980 5* 03ZippyMagician 5* (+20) 10Fix to O/G commands > 1592560899 174398 PRIVMSG #esoteric :14[[07Tandem14]]4 10 02https://esolangs.org/w/index.php?diff=73988&oldid=73986 5* 03Chris Pressey 5* (+42) 10/* Algebraic properties */ Don't let's confuse CNF and DNF. > 1592560987 811592 PRIVMSG #esoteric :14[[07BF-ASM:814]]4 M10 02https://esolangs.org/w/index.php?diff=73989&oldid=73832 5* 03DmilkaSTD 5* (+622) 10some documentation things > 1592561025 79609 PRIVMSG #esoteric :14[[07BF-ASM:814]]4 M10 02https://esolangs.org/w/index.php?diff=73990&oldid=73989 5* 03DmilkaSTD 5* (+18) 10Whoops > 1592561539 529363 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73991&oldid=73987 5* 03X39 5* (+4117) 10Made Specification into table with proper MUST/SHOULD/UNDEFINED/MAY/MUSTNOT verbs > 1592561785 763011 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73992&oldid=73991 5* 03X39 5* (+62) 10Renamed Headers < 1592561798 868112 :Sgeo!~Sgeo@ool-18b982ad.dyn.optonline.net QUIT :Read error: Connection reset by peer > 1592561850 410360 PRIVMSG #esoteric :14[[07BF-ASM:814]]4 M10 02https://esolangs.org/w/index.php?diff=73993&oldid=73990 5* 03DmilkaSTD 5* (+105) 10comments syntax < 1592562007 923108 :S_Gautam!uid286066@gateway/web/irccloud.com/x-ksrgtvrkemdqxfva JOIN :#esoteric > 1592562026 839386 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73994&oldid=73992 5* 03X39 5* (+355) 10/* Specification */ Added details about initial values < 1592562565 365196 :TheLie!~TheLie@2a02:8106:215:3300:844d:dece:9bd4:fbb2 JOIN :#esoteric < 1592563394 909702 :arseniiv!~arseniiv@136.169.210.76 JOIN :#esoteric < 1592564520 759375 :cpressey!~cpressey@79-72-203-48.dynamic.dsl.as9105.com PRIVMSG #esoteric :I just realized that enqueuing an event in a language like JavaScript is a lot like prepending a call frame to the bottom of the call stack. When the last function returns, instead of exiting (transferring control back to the OS), it transfers it to the event handler. < 1592564527 775503 :cpressey!~cpressey@79-72-203-48.dynamic.dsl.as9105.com PRIVMSG #esoteric :The analogy's not perfect of course. < 1592564718 536989 :cpressey!~cpressey@79-72-203-48.dynamic.dsl.as9105.com PRIVMSG #esoteric :I didn't realize until today that JavaScript's event queue actually contains the handlers themselves (I kind of thought there were looked up at the time the event is to be handled, but no. They're stored in the queue. If there is no handler, nothing's enqueued.) < 1592564811 720658 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :that makes perfect sense since you can have multiple handlers created different ways for the same event < 1592564862 542624 :cpressey!~cpressey@79-72-203-48.dynamic.dsl.as9105.com PRIVMSG #esoteric :Yes, and there's no sense enqueing something if you know there's no handler for it. < 1592565062 633656 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :yeah, especially since there are quite a lot of events that could happen < 1592565630 293436 :user24!~user24@2a02:810a:1440:7304:c853:4381:8641:c7bd JOIN :#esoteric > 1592565664 331294 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=73995&oldid=73994 5* 03X39 5* (+1074) 10Moved examples into table with according informations & expectations attached to them > 1592565712 313816 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=73996&oldid=73995 5* 03X39 5* (+14) 10/* Programs */ Added `Specification` to Compliance header < 1592566189 781894 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1592566249 984734 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 264 seconds < 1592566360 62165 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life < 1592566580 143770 :cpressey1!~cpressey@79-72-202-76.dynamic.dsl.as9105.com JOIN :#esoteric > 1592566604 467590 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=73997&oldid=73996 5* 03X39 5* (+11) 10/* Implementations */ Updated input modes < 1592566633 30697 :cpressey!~cpressey@79-72-203-48.dynamic.dsl.as9105.com QUIT :Ping timeout: 256 seconds < 1592567483 549734 :t20kdc!~20kdc@cpc139340-aztw33-2-0-cust225.18-1.cable.virginm.net JOIN :#esoteric > 1592568348 411584 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=73998&oldid=73997 5* 03PythonshellDebugwindow 5* (+164) 10/* Programs */ eof cat < 1592568617 502820 :cpressey1!~cpressey@79-72-202-76.dynamic.dsl.as9105.com QUIT :Quit: WeeChat 1.9.1 > 1592568683 626318 PRIVMSG #esoteric :14[[07UsableSeed14]]4 M10 02https://esolangs.org/w/index.php?diff=73999&oldid=66292 5* 03PythonshellDebugwindow 5* (+108) 10 > 1592569019 643302 PRIVMSG #esoteric :14[[07User:PythonshellDebugwindow/InputOnlyLangs14]]4 M10 02https://esolangs.org/w/index.php?diff=74000&oldid=73787 5* 03PythonshellDebugwindow 5* (+16) 10 < 1592569143 519296 :adu!~arobbins@c-76-111-99-194.hsd1.md.comcast.net JOIN :#esoteric < 1592569294 501365 :sprocklem!~sprocklem@unaffiliated/sprocklem QUIT :Ping timeout: 240 seconds < 1592569421 937518 :sprocklem!~sprocklem@unaffiliated/sprocklem JOIN :#esoteric > 1592569740 348893 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74001&oldid=73998 5* 03X39 5* (-26) 10/* Programs */ Removed note that explains behavior according to specification < 1592571584 505485 :S_Gautam!uid286066@gateway/web/irccloud.com/x-ksrgtvrkemdqxfva QUIT :Quit: Connection closed for inactivity > 1592572177 137392 PRIVMSG #esoteric :14[[07Livefish14]]4 M10 02https://esolangs.org/w/index.php?diff=74002&oldid=73097 5* 03PythonshellDebugwindow 5* (+21) 10/* Lua */ fix < 1592572458 882511 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com JOIN :#esoteric > 1592572880 252371 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74003&oldid=74001 5* 03Geek Joystick 5* (+216) 10/* Programs */ < 1592573754 10834 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hi folks (hehe) > 1592573780 316824 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74004&oldid=74003 5* 03ZippyMagician 5* (-1442) 10 < 1592573870 104123 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :suppose you have a function `partition :: Integer -> [a] -> [[a]]` which for usual values of the first argument works like that: < 1592573870 219080 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :partition 3 [1..10] = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]] < 1592573870 219132 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :what would you say about `partition 0`? (I have an answer of my own but I’ll spoil the problem later) < 1592574063 773508 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :an infinite list of empty lists? < 1592574090 538385 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :yes this comes to mind immediately but I think this definition is quite unhelpful and there’s a better one < 1592574136 473620 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :which is coherent with definition of another function at 0, which is quite controversial for general public but algebraically solid < 1592574147 973698 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I won’t spoil what function yet > 1592574219 591772 PRIVMSG #esoteric :14[[07Special:Log/move14]]4 move10 02 5* 03Ais523 5* 10moved [[02Sir Felix Delazar10]] to [[User:SirFelixDelazar]]: appears to be a User: page created in the main namespace by mistake > 1592574226 929180 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74006&oldid=74004 5* 03ZippyMagician 5* (-10) 10Fix category in infobox > 1592574326 282464 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74007&oldid=74006 5* 03Ais523 5* (+2) 10/* Implementations */ fix section header > 1592574340 656358 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74008&oldid=74007 5* 03ZippyMagician 5* (-10) 10Fix link > 1592574368 377603 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74009&oldid=74008 5* 03Geek Joystick 5* (-103) 10/* Implementations */ > 1592574525 681983 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74010&oldid=74009 5* 03ZippyMagician 5* (+149) 10Add Multiplication programs > 1592574609 322553 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74011&oldid=74010 5* 03ZippyMagician 5* (-67) 10Remove credits for non-major programs < 1592574618 941228 :sprocklem!~sprocklem@unaffiliated/sprocklem QUIT :Ping timeout: 256 seconds < 1592574674 575118 :sprocklem!~sprocklem@unaffiliated/sprocklem JOIN :#esoteric < 1592574927 853407 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :oh incidentally isn’t there a function in one of the bots which would post a message after a given timeout, or approximately at a given time? > 1592574951 622879 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74012&oldid=74011 5* 03ZippyMagician 5* (+1) 10Fix < 1592575083 71439 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :"partition 0" seems too much like "divide by 0" to me, I would leave it undefined < 1592575461 128006 :user24!~user24@2a02:810a:1440:7304:c853:4381:8641:c7bd QUIT :Quit: Leaving > 1592575857 596439 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74013&oldid=74012 5* 03Geek Joystick 5* (+388) 10/* Programs */ > 1592576283 341085 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74014&oldid=74013 5* 03ZippyMagician 5* (+17) 10Fix info/indentation > 1592576598 374639 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74015&oldid=74014 5* 03X39 5* (+2363) 10/* Implementations */ Added more detailed info about supported IO < 1592576607 805829 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, it's obvious what the /last/ element of the resulting list is < 1592576623 410317 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the only controversy is as to how many empty elements appear before it < 1592576642 952847 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :a naive implementation would surely put infinitely many empty elements there, though > 1592576644 540229 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74016&oldid=74015 5* 03X39 5* (+6) 10/* Implementations */ Fixed INN & PNN < 1592576656 647407 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(unless this is one of those "9 recurring = minus 1" theorems) < 1592576675 557852 :ArthurStrong!~ArthurStr@nat-pool-13-124.soborka.net PRIVMSG #esoteric :ais523: thanks! < 1592576797 945055 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :thinknig about it, the number of elements that appear earlier should be 0/0, which is NaN, so I'm going to claim "the output is a list consisting of NaN empty lists followed by the original list" < 1592576814 603928 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not that this is a concept that most languages can easily represent :-D < 1592576966 502530 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :…I guess a further ramification of this is that the output does not compare equal with itself > 1592576978 253403 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74017&oldid=74016 5* 03Geek Joystick 5* (-1) 10 > 1592577126 374699 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74018&oldid=74017 5* 03ZippyMagician 5* (+0) 10Fix Zippy's implementation details > 1592577378 742281 PRIVMSG #esoteric :14[[07GORBITSA/bf-interpreter14]]4 N10 02https://esolangs.org/w/index.php?oldid=74019 5* 03ZippyMagician 5* (+10779) 10Created page with "Created by Gorbit99. Runs in ROM mode with char input/output, only positive numbers allowed (0-255) >+[ Read in code until # ,>+++++++[-<----->]< [ If not # >>+< Set..." > 1592577409 739100 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74020&oldid=74018 5* 03Geek Joystick 5* (+9) 10/* Implementations */ < 1592577433 750288 :LKoen!~LKoen___@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr QUIT :Remote host closed the connection > 1592577686 986588 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74021&oldid=74020 5* 03SirFelixDelazar 5* (+20) 10/* Implementations */ < 1592577714 492628 :sprocklem!~sprocklem@unaffiliated/sprocklem QUIT :Ping timeout: 240 seconds > 1592577765 886971 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74022&oldid=74021 5* 03SirFelixDelazar 5* (+22) 10/* Implementations */ < 1592577803 951214 :sprocklem!~sprocklem@unaffiliated/sprocklem JOIN :#esoteric > 1592577807 504654 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74023&oldid=74022 5* 03X39 5* (+0) 10/* Implementations */ Updated my implementation details < 1592577959 123837 :Arcorann!~awych@121-200-6-58.79c806.syd.nbn.aussiebb.net QUIT :Read error: Connection reset by peer > 1592578043 305628 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74024&oldid=74023 5* 03ZippyMagician 5* (+368) 10Add brainfuck interpreter > 1592578094 50457 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74025&oldid=74024 5* 03ZippyMagician 5* (+5) 10Fix link > 1592579464 303405 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74026&oldid=74025 5* 03Megarev 5* (+106) 10/* Programs */ < 1592579593 189319 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: yeah something like that < 1592579641 889353 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : "partition 0" seems too much like "divide by 0" to me, I would leave it undefined => understandable < 1592579670 292427 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : ais523: yeah something like that => I meant the first version where there are zero []s, though NaN []s is interesting > 1592579708 43265 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74027&oldid=74026 5* 03Megarev 5* (+4) 10/* A 10x10 Box (By Megarev) */ > 1592579792 480241 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74028&oldid=74027 5* 03Megarev 5* (+67) 10/* A 10x10 Box (By Megarev) */ < 1592579869 716717 :ChanServ!ChanServ@services. MODE #esoteric +o :ais523 < 1592579885 352139 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not doing any moderation, but ChanServ is apparently going to go down for a while < 1592579910 784680 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :meaning that it'll be helpful to have someone pre-opped just in case op powers are needed < 1592579925 495527 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :otherwise there'll be no way to moderate the channel < 1592579965 391638 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :too reasonable to be the truth^W^W^W^W^W^W < 1592579995 1467 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :is x % 0 normally considered undefined? I can't see how it would have any sensible value but x < 1592580053 816930 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: yeah when I finally learned it may be defined as x, now I don’t see anything other else, but the majority of, say, programming languages conservatively/still-unknowingly disagrees < 1592580070 687744 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it may depend on what edge case rules you use < 1592580087 904052 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esoteric :ais523: it's undefined in C99 at least < 1592580094 788701 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I just checked the specs of a language I'm working on and it said that the return value of a modulus x % y is always in the range 0 to y-1 inclusive < 1592580117 318222 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which means that it needs to reject x % 0 as a range error, but then it also rejects x % -1 as a range error < 1592580125 474935 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :whereas I think most programming languages return 0 for integer x < 1592580133 688652 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> 2 `mod` -1 < 1592580136 66966 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : error: < 1592580136 67004 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Precedence parsing error < 1592580136 168394 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : cannot mix ‘mod’ [infixl 7] and prefix `-' [infixl 6] in the same in... > 1592580139 552522 PRIVMSG #esoteric :14[[07GORBITSA/bf-interpreter14]]4 M10 02https://esolangs.org/w/index.php?diff=74029&oldid=74019 5* 03PythonshellDebugwindow 5* (+49) 10 < 1592580140 538857 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> 2 `mod` (-1) < 1592580142 294596 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 0 < 1592580145 345338 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> 2 `rem` (-1) < 1592580147 996102 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 0 < 1592580165 836822 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I like Knuth’s definition IIRC, though I think there were arguments for another one which is close but it works with euclidean algorithm, I always forget in what regard < 1592580180 443449 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(this is a language where having controlled errors is useful, so I don't want to make more cases work than are necessary) < 1592580305 994105 :rain1!~rain1@unaffiliated/rain1 PRIVMSG #esoteric :what's the argument for x % 0 = x? < 1592580345 114459 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(x / y) * y + (x % y) = x < 1592580360 449706 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :with y = 0, the * y becomes * 0 < 1592580364 616452 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so you get (x % y) = x < 1592580370 434777 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :err, (x % 0) = x < 1592580376 990138 :rain1!~rain1@unaffiliated/rain1 PRIVMSG #esoteric :How is it that (x/0)*0 = 0? < 1592580397 594603 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the argument relies on the identity z*0 = 0 for all z < 1592580404 460917 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this is the only weak point in it < 1592580421 801827 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in that it's quite reasonable to claim that that identity is unreasonable where division by zero is concerned < 1592580500 989138 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :rain1: you may first define mod n as a function from Z to Z/nZ (or e. g. from R to R/nR) with some properties, in this case mod 0 is Z → Z/0 ≅ Z and is the identity. Then you can map Z/nZ to Z in some way, like the usual [0..n) for nonzero n, but for n = 0, the all of Z will still be reasonable < 1592580524 769503 :rain1!~rain1@unaffiliated/rain1 PRIVMSG #esoteric :ooh < 1592580527 871825 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :with some properties => why, this should just be a ring morphism < 1592580527 871899 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :for what it's worth, in declarative languages, it seems obviously correct to have x / 0 = fail for nonzero x, and 0 / 0 = unconstrained number < 1592580539 783946 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :nonzero* < 1592580552 834916 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in that case, x % 0 = x is the only consistent ruling if you're dealing with numbers that can go both negative and positive < 1592580593 957348 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I haven't really decided how to deal with negative numbers in my declarative languages yet < 1592580602 331746 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :even Prologs differ amongst themselves < 1592580680 909092 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : nonzero* => I’m not sufficient again; it should be an epimorphism < 1592580685 189478 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :fwiw, Wikipedia's definition of modular arithmetic says "Given an integer n > 1, called a modulus, two integers are said to be congruent modulo n if n is a divisor of their difference, that is, if there is an integer k such that a − b = kn." If you ignore the n > 1 part, it's consistent with the choice x % 0 = x. < 1592580696 56722 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :(No matter how much it offends my sensibilities.) < 1592580715 129850 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :cpressey: yeah, that’s indeed consistent < 1592580719 224370 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm fairly satisfied that x % 0 can't reasonably be anything /but/ x, if it's anything at all < 1592580726 79407 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I think deciding that it's undefined is also reasonable < 1592580728 962697 :adu!~arobbins@c-76-111-99-194.hsd1.md.comcast.net QUIT :*.net *.split < 1592580728 962739 :t20kdc!~20kdc@cpc139340-aztw33-2-0-cust225.18-1.cable.virginm.net QUIT :*.net *.split < 1592580729 101641 :Phantom__Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :*.net *.split < 1592580729 802411 :wmww!wmwwmatrix@gateway/shell/matrix.org/x-vfhpnpvahmggsrdj QUIT :*.net *.split < 1592580730 615722 :xelxebar!~xelxebar@gateway/tor-sasl/xelxebar QUIT :*.net *.split < 1592580732 763095 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and the choice may depend on the domain of x < 1592580746 984335 :adu!~arobbins@c-76-111-99-194.hsd1.md.comcast.net JOIN :#esoteric < 1592580747 85938 :t20kdc!~20kdc@cpc139340-aztw33-2-0-cust225.18-1.cable.virginm.net JOIN :#esoteric < 1592580747 85995 :Phantom__Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1592580747 86008 :xelxebar!~xelxebar@gateway/tor-sasl/xelxebar JOIN :#esoteric < 1592580747 86039 :wmww!wmwwmatrix@gateway/shell/matrix.org/x-vfhpnpvahmggsrdj JOIN :#esoteric < 1592580763 800548 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :more elaborated, (x % n = y % n) <=> (x ≡ y (mod n)) holds with this definition of % < 1592580786 231866 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :is (mod 0) generally considered defined? < 1592580794 923814 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :also, does this work for negative n? < 1592580809 321280 :xelxebar!~xelxebar@gateway/tor-sasl/xelxebar QUIT :Max SendQ exceeded < 1592580812 985059 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(that said, negative moduli are a mess anyway) < 1592580834 823496 :xelxebar!~xelxebar@gateway/tor-sasl/xelxebar JOIN :#esoteric < 1592580862 462484 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: yeah, (mod −n) should be the same as (mod n), as (−n)Z = nZ, though I don’t know how widely that’s avoided in usage < 1592580933 623762 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :algebraically, ≡ (mod n) is the same as ≡ (mod I) for an ideal I = nZ. These relations are defined for any ideal, the same as we can have (mod [a normal subgroup]) for groups < 1592580962 153356 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :there should be no conflations in using this notation this way IIRC < 1592580976 643899 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-geovbxeenfngixse QUIT :Ping timeout: 244 seconds < 1592580987 326985 :wmww!wmwwmatrix@gateway/shell/matrix.org/x-vfhpnpvahmggsrdj QUIT :Ping timeout: 252 seconds < 1592580999 347749 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I know very little algebra < 1592581131 13392 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I know enough to quotient by an equivalence relation, and then wrote all my papers in terms of that < 1592581167 963135 :xylochoron[m]!xylochoron@gateway/shell/matrix.org/x-qlnaakxjabsxxnlv QUIT :Ping timeout: 240 seconds < 1592581205 123940 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :This week I designed a rewriting language and I think the set of rewrite rules forms a Kleene algebra. < 1592581212 417154 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :I put it on the wiki this morning. < 1592581244 477802 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :(Notwithstanding that I probably know less algebra than either of you) < 1592581245 620634 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :but that one should be consomething with all the structure, though I need to say I don’t understand why do many textbook authors not mention equivalence relations when defining quotient groups, rings and algebras < 1592581266 797385 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :wow that was annoyingly difficult to find in Recent Changes < 1592581273 851159 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there's been so much activity recently < 1592581280 590707 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :though they won’t be able to avoid it if they choose to work with monoids or rigs heheheheh < 1592581317 710570 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :cpressey: ais523: what’s it called? < 1592581341 566490 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :arseniiv: I think they prefer to speak in terms of homomorphisms, since it amounts to basically the same thing? < 1592581362 8703 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: https://esolangs.org/wiki/Tandem < 1592581398 131552 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I also created an esolang recently, https://esolangs.org/wiki/Annihilator < 1592581416 450975 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> 4 `mod` (-7) -- may use different representatives though < 1592581418 767870 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : -3 < 1592581435 572073 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :cpressey: they like normal subgroups and ideals and that’s very good these things exist at all but sometimes they don’t, and anyways many quotient objects may be formulated as usual quotient sets with an induced structure, and that is the basic thing anyone needs to read stated in clear text, I think < 1592581451 975968 :spruit11!~unknown@ip56522cc1.speed.planet.nl PRIVMSG #esoteric :> 4 `mod` 0 < 1592581454 802489 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : *Exception: divide by zero < 1592581457 100723 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> (-4) `mod` (-7) < 1592581459 657346 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : -4 < 1592581463 724121 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> (-4) `rem` (-7) < 1592581465 633712 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : -4 < 1592581476 231341 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> (-4) `mod` (7) < 1592581476 453497 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I can’t get over The waterfall model still < 1592581478 580830 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 3 < 1592581480 642019 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :> (-4) `rem` (7) < 1592581483 26875 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : -4 < 1592581503 467629 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: what bothers you about it? < 1592581529 952602 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: not that something bothers me, it’s just too neat a thing < 1592581535 155994 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :actually, the main thing that bothers me about it is that it was easier to prove TC than it should have been < 1592581535 268411 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :arseniiv: I do agree that a clear explanation of quotients in abstract algebra would be nice to have and I've never really seen one; I'm still pieceing the ideas together, myself. < 1592581543 823323 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which suggests that maybe there's an even simpler language along those lines < 1592581558 277438 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :how that was discovered that recently is strange! < 1592581565 940922 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :normally the easiest-to-implement languages are things like 2-Echo Tag which are a complete pain to prove < 1592581580 925023 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: and I discovered it at least twice before I noticed, possibly three times < 1592581583 80433 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : which suggests that maybe there's an even simpler language along those lines => that would be even more mesmerizing < 1592581642 221171 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :one thing I noticed is that The Waterfall Model can trivially implement linear recurrence relations, but I suspect those aren't TC < 1592581648 662692 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :would be fun if they were though < 1592581689 211889 :int-e!~noone@int-e.eu PRIVMSG #esoteric :ais523: `rem` is the one that doesn't give representatives because it matches `quot` which rounds towards zero, whereas `div` rounds towards negative infinity (which is where a negative divisor makes a difference). < 1592581737 564456 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right < 1592581967 657124 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :cpressey: the basic idea, for any algebraic model or even a structure with relations, is for the equivalence relation to be consistent (or what it’s called) with them, and that precisely gives us to induce that same kind of structure in the quotient set. Consistency is simple: ~ is consistent with a relation R iff (x1 ~ y1 and … and xn ~ yn) implies R(x1, …, xn) <=> R(y1, …, yn). For an operation, one just takes a corresponding relation: e. g. < 1592581967 814113 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :for + one takes (x, y, z) ↦ x + y = z. In general this would give us ~ is consistent with o when (x1 = y1 and … and xn = yn) implies o(x1, …, xn) = o(y1, …, yn) < 1592582212 600370 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :arseniiv: yeah, I think I get it at this point, but it's taken me a while to get to this point. As I see it it's a homomorphism, and as such it has to preserve the properties of all of the operators. Which is a bit annoying in my particular application of it - some of those operators aren;t really relevant in the quotient algebra - I guess I have to say they're still there but we can safely ignore them < 1592582223 111394 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :that tells us that we can unambiguously define a relation or an operation on equivalence classes (by their representatives), and AFAIK this is the most general condition for that < 1592582263 150777 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com PRIVMSG #esoteric :alas, I must be off now - have a good weekend < 1592582264 833822 :cpressey!~cpressey@79-72-202-76.dynamic.dsl.as9105.com QUIT :Quit: WeeChat 1.9.1 < 1592582265 640014 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : yeah it taken me too a while to recognize all the cogs underlying < 1592582282 100392 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :@tell cpressey have a good one too! < 1592582282 100443 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Consider it noted. > 1592582362 712499 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74030&oldid=74028 5* 03ZippyMagician 5* (+4) 10/* Programs */ < 1592582665 131768 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :what I like is how one can overgeneralize this framework to structures which have several carriers and also maybe “constant domains” which are the same for any structure of this type < 1592582726 504778 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :in operations and relations’ signatures, carriers would be like type variables and the latter domains would be like type constants < 1592582806 291479 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :in this way we could say metric spaces are certain instances of this kind of structure. where there are a carrier X and a constant domain R involved. Though I think isometries are still more refined that morphisms for that kind of structure, I should check < 1592582874 810975 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :also maybe one could incorporate topological spaces and confluence spaces and whatnot in this framework too, using a more elaborate language in signatures < 1592582972 529510 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :as it’s particularly well-known that dependent types help describing axioms of the structure in its definition directly (with all the operations and relations), so maybe some higher types may allow describing these spaces in the analogous manner < 1592582990 463689 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :not that it’s useful by itself of course < 1592583905 444474 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: at [x], [y], when x is called in [x], shouldn’t the result be [], [a b z], [b a z], [y]? (in the article, there’s [x] instead of []). If so, maybe you wanted to define x as x in the first definition? > 1592584017 967252 PRIVMSG #esoteric :14[[07Annihilator14]]4 10 02https://esolangs.org/w/index.php?diff=74031&oldid=73920 5* 03Ais523 5* (+5) 10/* Example */ fix thinko > 1592584031 971807 PRIVMSG #esoteric :14[[07Annihilator14]]4 10 02https://esolangs.org/w/index.php?diff=74032&oldid=74031 5* 03Ais523 5* (+5) 10/* Computational class */ here, too < 1592584040 260765 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: yes, sorry < 1592584053 765669 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this sort of thing is common when you design an esolang in your head and don't have an implementation < 1592584062 503335 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :yeah < 1592584076 217077 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I think I ended up much the same way many times < 1592584101 390693 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :some of my esolangs are designed to investigate profound ideas in computation, or for proving things TC, or whatever < 1592584114 229726 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but some are just random ideas that I thought it would be interesting to document, and Annihilator is one of those < 1592584150 503191 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :the last one which is finite state (thank to int-e’s good eye) is an example of that: initially I defined things in such a way a program only returned 0 (if halted) < 1592584187 78643 :gitlogger!~gitlogger@206.ip-51-91-102.eu JOIN :#esoteric < 1592584220 565100 :kspalaiologos!~kspalaiol@176.221.122.71 JOIN :#esoteric > 1592584227 698654 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74033&oldid=74030 5* 03PythonshellDebugwindow 5* (+83) 10/* Cat program */ > 1592584646 719822 PRIVMSG #esoteric :14[[07Gecho14]]4 M10 02https://esolangs.org/w/index.php?diff=74034&oldid=70798 5* 03PythonshellDebugwindow 5* (+50) 10link + cats > 1592584833 61679 PRIVMSG #esoteric :14[[07Category:Finite state automata14]]4 M10 02https://esolangs.org/w/index.php?diff=74035&oldid=22635 5* 03PythonshellDebugwindow 5* (+23) 10cat > 1592584941 952192 PRIVMSG #esoteric :14[[07BFStack14]]4 M10 02https://esolangs.org/w/index.php?diff=74036&oldid=73005 5* 03PythonshellDebugwindow 5* (-1) 10rm period < 1592585059 636206 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu JOIN :#esoteric < 1592585130 28699 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :what the heck happened while I wasn't here? https://esolangs.org/logs/ webpage is unreachable (ping fizzie) and https://github.com/KrzysztofSzewczyk/esologs/ is missing two or three days < 1592585182 312796 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :ugh < 1592585183 51786 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :no idea < 1592585225 276697 :TheLie!~TheLie@2a02:8106:215:3300:844d:dece:9bd4:fbb2 QUIT :Remote host closed the connection < 1592585225 502338 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :clog is still here, so presumably it was logging < 1592585255 149356 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yep < 1592585346 916533 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :I've filled my log gaps < 1592585398 894341 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :and I know the reason - a netsplit < 1592585415 65546 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :my bot has died because I didn't yet set up a reliable way of automagically getting it up (lol) < 1592585704 115205 :gitlogger!~gitlogger@206.ip-51-91-102.eu QUIT :Remote host closed the connection < 1592585721 652289 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :kspalaiologos: I see < 1592585736 255884 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :thanks < 1592585738 108417 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :done < 1592585741 540015 :gitlogger!~gitlogger@206.ip-51-91-102.eu JOIN :#esoteric < 1592585746 207747 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :the bot will no longer die on netsplits < 1592585748 455940 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :and it will rejoin < 1592585751 723047 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :nice! < 1592585755 296784 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :some stupid perl engineering < 1592585768 550054 :TheLie!~TheLie@2a02:8106:215:3300:844d:dece:9bd4:fbb2 JOIN :#esoteric < 1592585790 683120 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :just make sure the rejoin has some reasonable limits and sleeps so it doesn't fall into one of those stupid reconned-rejoin-die loops that some bots fall into < 1592585823 175470 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :it's done using a lock file < 1592585836 191766 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :when the bot quits, it's removing the lock file, and when it's ran, it creates a lock file < 1592585861 526214 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :the update.pl script (I put it in cron and it will run every 30min) will push the logs to github AND re-run the bot if the lock is missing < 1592585876 691029 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :kspalaiologos: sure, but I mean a loop with like reconnecting successfully every 10 minutes for three hours, after which a mod wakes up and bans them < 1592585957 539883 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :even every 30 minutes might be a problem if it does so indefinitely, because this channel is often slow with mods < 1592585984 90061 :sebbu2!~sebbu@unaffiliated/sebbu NICK :sebbu < 1592585986 466473 :kspalaiologos!~kspalaiol@176.221.122.71 PRIVMSG #esoteric :I'll add reconnection attempts < 1592586013 600450 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :ideally you probably want some kind of incremental timeouts, where it reconnects immediately the first time, but then with progressively more sleep, and after like 14 attempts it waits a day between reconnections < 1592586034 131684 :kspalaiologos!~kspalaiol@176.221.122.71 QUIT :Read error: Connection reset by peer < 1592586143 549245 :kspalaiologos!~root@206.ip-51-91-102.eu JOIN :#esoteric < 1592586146 438303 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :my IRC client crashed < 1592586154 792171 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :reconnecting once every half hour doesn't seem excessively spammy to me? < 1592586172 4934 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :anyways, I've added a mechanism that will stop attempting after there have been 5 reconnect attempts before < 1592586178 833047 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's 48 quitjoins a day, there's normally much more conversation than that < 1592586179 986701 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and it will drop me an e-mail < 1592586191 338006 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :ais523: it's probably borderline < 1592586201 532833 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :on some days we have very little traffic < 1592586201 926867 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :make sure it doesn't email you every half-hour, that can get annoying quickly < 1592586210 216475 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I once accidentally configured my server to email me every minute < 1592586229 52600 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :luckily I was online at the time and, unsurprisingly, noticed pretty quickly < 1592586257 498626 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :if it will mail me every half an hour, I'll notice it fsater < 1592586260 870046 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and I run my own mailserver so there was no issue with address reputation as a consequence < 1592586268 459384 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :also, the counter zeroes, so 5 * 30min = 2,5h < 1592586281 294593 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :a mail every 2 and 1/2 hour isn't much trouble for me < 1592586309 898113 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :doesn't that mean it'll try to connect 4 times every 2½ hours? < 1592586336 356826 :S_Gautam!uid286066@gateway/web/irccloud.com/x-najyjjlsxfjahsui JOIN :#esoteric < 1592586383 923288 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :tries once => wait for 30 min => tries 2nd time => wait for 30min => tries 3rd time => wait for 30min => tries 4th time => wait for 30min => tries 5th time => errrr send me an email, stop attempting < 1592586388 693261 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :@tell cpressey wait, if R & R = 0 then 0 = (R | S) & (R | S) = R & R | R & S | S & R | S & S = R & S | S & R = R & S | R & S = R & S, is that right?.. < 1592586388 804347 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Consider it noted. < 1592586393 53847 :S_Gautam!uid286066@gateway/web/irccloud.com/x-najyjjlsxfjahsui QUIT :Client Quit < 1592586404 87810 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :if R&R=0 then R must be 0 < 1592586419 309657 :S_Gautam!uid286066@gateway/web/irccloud.com/x-kwkvekaqjfxxxemu JOIN :#esoteric > 1592586424 588556 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03Gorbit99 5* 10New user account < 1592586452 277686 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not in Tandem, where R&R is artificially 0 because & is more like an exclusive-and < 1592586452 611371 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :kspalaiologos: hehe there’s another meaning to &, see https://esolangs.org/wiki/Tandem :) < 1592586458 97109 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :oh f.ck < 1592586463 994359 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :the bot spilled its stderr on my screen < 1592586478 303953 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :also, I love esolangs, they make concepts like "exclusive-and" viable < 1592586478 421381 :S_Gautam!uid286066@gateway/web/irccloud.com/x-kwkvekaqjfxxxemu QUIT :Client Quit < 1592586481 15530 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I can't see anything < 1592586483 726300 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :did it quit? < 1592586497 229788 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :gitlogger is still online; is that your bot? < 1592586506 244876 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :yes, ah, I see the problem < 1592586507 913578 :S_Gautam!uid286066@gateway/web/irccloud.com/x-rhnglfxszegnegxe JOIN :#esoteric < 1592586508 246765 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :wchar print < 1592586531 925506 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :ais523: hmm, I thought you were working on one of these declarative languages, with the intent that it should be more expressive in a declarative way than Brachylog < 1592586601 14 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :alright, /redraw fixes the problem < 1592586618 452689 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: yes < 1592586621 169275 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :@tell cpressey so AFAIU the R & R = 0 is always true only for atomic rules, but the example above shows complex rules won’t be annihilated when conjusquared < 1592586621 280391 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Consider it noted. < 1592586652 849365 :kspalaiologos!~root@206.ip-51-91-102.eu QUIT :Quit: leaving < 1592586669 15810 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: is there actually a requirement for | to distribute over &? < 1592586694 633232 :wmww!wmwwmatrix@gateway/shell/matrix.org/x-clrjgffdvjuyssuf JOIN :#esoteric < 1592586702 45082 :kspalaiologos!~root@206.ip-51-91-102.eu JOIN :#esoteric < 1592586715 15444 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: hm maybe not, I had read it in “Conjunction distributes over disjunction: Ri & (Rj | Rk) = (Ri & Rj) | (Ri & Rk) (and the other direction too, because it's commutative.)” < 1592586822 241805 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :wait, this is the needed distributivity, I thought there is the other one < 1592586847 957631 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hm < 1592586908 758857 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :it should be formally proven in Agda^W^W < 1592587000 773057 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :were there languages like Tandem before? Seems very cool to me at the end < 1592587018 392811 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what property of it do you consider interesting? < 1592587042 643439 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there are certainly languages which play around in a similar space in terms of semantics, but they don't necessarily have the same properties that Tandem does < 1592587089 251875 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I haven’t thought of rewriting many disjoint places before, though I can see it may be grown from my questions about rewriting S-expressions a while ago, dumb me < 1592587226 988682 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :also a while ago I made a string-rewriting thing which used if the rule was applied succesfully to continue applying following rules, though that wasn’t by all means minimal and I artifically bounded it to sub-TC by requiring placing a finite repeat count for each loop > 1592587239 581592 PRIVMSG #esoteric :14[[07Esolang:Introduce yourself14]]4 10 02https://esolangs.org/w/index.php?diff=74037&oldid=73967 5* 03Gorbit99 5* (+117) 10 > 1592587249 404971 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74038&oldid=74033 5* 03Gorbit99 5* (-713) 10fixed some incorrect info < 1592587253 871991 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I intended it to be a text-generating tool but it ended up unwieldy < 1592587272 5240 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I spent too much time yesterday and two days ago figuring 3sp < 1592587302 789352 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :this language seems just... so volatile, so spaghetti-y that I can't find a good way of programming it other than either genetic algorithm OR compiling some predictable assembly into large-ass code < 1592587320 397046 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the latter approach is the better one I think < 1592587324 718159 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although, the hardest part is startup < 1592587332 32999 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I'll end up with malbolge 2.0 < 1592587341 139536 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :with programs being bigger than the observable universe < 1592587344 318619 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which places some fairly extreme constraints on your program because the startup code has to run every iteration < 1592587358 669008 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I did such a thing with asm2bf while implementing labels < 1592587365 539174 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :the entire code runs inside a large loop < 1592587382 244193 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :start with "freestart 3*", where you get to initialize memory as you like separately from the program, as a wimpmode < 1592587390 267639 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that isn't too hard to program in once you see the tricks < 1592587399 428252 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : with programs being bigger than the observable universe => hm that gives an idea of executing compressed programs... surely some languages would allow that? < 1592587399 651496 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :it's 100% doable, but I just can't notice some things < 1592587418 156554 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :if you managed to write a good malbolge interpreter that would run my programs compressed < 1592587420 757338 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: in https://esolangs.org/wiki/Tip the program is infinitely long, but compresses well < 1592587429 294855 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I'd really really appreciate it :p < 1592587446 505173 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what sort of repetition normally exists within your programs? < 1592587454 422665 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :my malbolge programs? no-ops < 1592587466 789357 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :to nail the memory adresses < 1592587470 723035 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :do they execute/get encrypted? or are they jumped over? > 1592587478 530382 PRIVMSG #esoteric :14[[07User:PythonshellDebugwindow/Sandbox14]]4 M10 02https://esolangs.org/w/index.php?diff=74039&oldid=73245 5* 03PythonshellDebugwindow 5* (+8) 10force toc < 1592587481 895897 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :50/50 I'd say < 1592587492 386967 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :you'd have to figure out what does each one do < 1592587499 893986 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :but I believe it's all doable < 1592587500 453564 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :kspalaiologos: no thanks :D I don’t even into Malbolge, I mean in the sense I don’t even remember how it works at all. It ciphers something and has several opcodes and that’s all I remember < 1592587510 113387 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the hard part isn't so much running the compressed program, but updating it as it encrypts < 1592587515 683214 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :the malbolge code follows a lot of repetitions < 1592587520 170562 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :within the compressed program < 1592587533 425356 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I mean, you could theoretically parse my malbolge programs into some form of readable assembly using regex < 1592587543 656195 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :because I haven't gone crazy on golfing the output > 1592587559 88682 PRIVMSG #esoteric :14[[07User:PythonshellDebugwindow/200114]]4 M10 02https://esolangs.org/w/index.php?diff=74040&oldid=72878 5* 03PythonshellDebugwindow 5* (+38) 10rdr < 1592587603 357100 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I compile them from a very sophisticated assembly < 1592587614 192291 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'd say a "compressed Malbolge executor" would be trivial, with an appropriately designed compression format, if not for the fact that Malbolge is self-modifying and you need to remember in what ways the program has self-modified < 1592587616 88251 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :my current opus magnum is a forth-like interpreter in Malbolge < 1592587639 605092 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :it's overall around two megabytes of my handcrafted assembly code < 1592587648 173238 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and it works, very slowly < 1592587657 175314 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I've left a fact(4) program to run overnight < 1592587660 996736 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and it produced correct result < 1592587669 750701 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I wonder if it would be efficient to store the original program, plus a count of encryptions that have been performed on each memory cell, plus a separate sparse array for memory cells that have been modified directly < 1592587678 282531 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and do dynamic RLE on the encryption counts < 1592587687 695772 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I.. don't think so < 1592587706 23958 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :because Malbolge follows the von neumann architecture, so you store data with the code < 1592587714 634301 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :right, that's what the final array is for < 1592587715 186362 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and the code can grow quite big < 1592587717 450535 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : I don’t even into Malbolge => am not* < 1592587725 889776 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I mean - my malbolge programs often swap < 1592587730 486595 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :to produce a meaningful result < 1592587735 578819 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and I have a machine with 16 gigabytes of RAM < 1592587748 857013 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think with most Malbolge programs, the proportion of the memory that is used as useful data is very small, right? < 1592587756 711606 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :yes < 1592587764 459886 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :if you find out the storage format, you're pretty much home < 1592587767 66007 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's almost all either a) padding, b) self-encrypting code where the encryption isn't useful it just happens > 1592587773 698089 PRIVMSG #esoteric :14[[07Template:Cs14]]4 M10 02https://esolangs.org/w/index.php?diff=74041&oldid=73533 5* 03PythonshellDebugwindow 5* (+29) 10 < 1592587774 712229 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :yes < 1592587790 536290 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : my current opus magnum is a forth-like interpreter in Malbolge => wow > 1592587793 713899 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74042&oldid=74038 5* 03Gorbit99 5* (-5) 10typo < 1592587814 566565 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and at any given instant in time, there are going to be large runs in the number of times that specific instructions have encrypted > 1592587834 44925 PRIVMSG #esoteric :14[[07Category:Particle automata14]]4 M10 02https://esolangs.org/w/index.php?diff=74043&oldid=8177 5* 03PythonshellDebugwindow 5* (+33) 10cat < 1592587836 454874 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :yes, and a viable thing is also guessing the encryption patterns < 1592587840 277147 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so if we just store it in terms of ranges, "from address 10000 to address 12345 every instruction has encrypted 5 times" < 1592587853 524539 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then the encryption counts shouldn't need much memory to store < 1592587854 384452 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :like, if you place a no-op somewhere, after executing it can turn into a movd, a jump, a halt, and god knows what else < 1592587875 679595 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :when you're preserving functions, for example the movd wrapper, the movd is executed, and then it turns into a nop, and then back again < 1592587878 699599 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that's called a cycle < 1592587882 703098 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :or at least that's how I call it < 1592587894 439439 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I don't think there's proper terminology for malbolge < 1592587895 217170 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :working out what's in memory from original value plus encryption count is constant time, if the address hasn't been written through d < 1592587937 358510 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :…does anyone write Malbolge programs where addresses are written through d and /then/ encrypted? < 1592587979 125872 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :(BTW what would you advice when one does want to write a translator but doesn’t want to hand-wite a parser nor to use an existing parser framework nor to complete their own framework at last? Maybe there still is an option?) < 1592587984 807158 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that seems a bit unlikely to me because it's a hard operation to make work, the original Malbolge intepreter actually segfaults if the written value is outside the ASCII range (presumably because the case was never tested) < 1592588005 857987 :int-e!~noone@int-e.eu PRIVMSG #esoteric :arseniiv: Train a neural network on examples ;-) < 1592588022 99614 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: haven't you excluded all the cases apart from persuading someone else to write a new parser framework and using that? < 1592588054 149017 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: oh! that’s an interesting case though I don’t want to go that way yet < 1592588067 25691 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :well, depends on what do you mean by this < 1592588083 884363 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or, well, waiting for someone to write a new parser framework and using it < 1592588084 219385 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :for example, if I have a movd, I call it, and then restore the old instruction back < 1592588098 173783 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that's not the most efficient approach, but it's simple and reliable < 1592588107 790970 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :so my proposition is < 1592588119 646295 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :actually, another option that isn't logically excluded is to abandon your own parser framework, write an entirely new one and use it, but it seems like more effort than the options that have already been excluded < 1592588133 436259 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :somehow finding out where the real instructions are stored, identify the calling and restoring code, and then build upon that to optimize real instruction calls < 1592588153 484755 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ooh, I think I realised the right format for storing memory < 1592588166 154930 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if a value is in the ASCII range, you store it as an encryption count, starting from some constant ASCII character < 1592588174 575245 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if outside the range, you just store it as the number < 1592588179 462047 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then you use some sort of dynamic RLE-ing < 1592588197 818572 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: hmmm hm I’ll go persuade some friends then :D // oh, that new idea is what I think I would end up doing some time after, though that new framework would be just a rewriting of the larger portion of the old and that’s definitely still a work so I procrastinate all I can < 1592588245 577151 :Sgeo!~Sgeo@ool-18b982ad.dyn.optonline.net JOIN :#esoteric < 1592588247 296303 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :(also do you have a SAT solver somewhere inside, I didn’t think there can be so many missed perfectly valid alternatives at all :D) < 1592588273 623696 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I was trying to run through the truth table in my head < 1592588284 625553 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or, not the full table, but at least identifying the variables < 1592588291 905955 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hm that’s particularly useful < 1592588300 394572 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's similar enough to esoprogramming that it didn't seem that much out of character > 1592588314 354010 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74044&oldid=74042 5* 03ZippyMagician 5* (+159) 10Explanation < 1592588328 394248 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :yeah I even saw the contracted truth tables or what was they called, they can be useful for manipulating in the head < 1592588333 889499 :int-e!~noone@int-e.eu PRIVMSG #esoteric :arseniiv: it's like solving a Sudoku ;) < 1592588362 51858 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :int-e: the thing I don’t enjoy too much but do when there’s nothing else to do, yeah < 1592588443 836201 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I'm no good at Sudokus, really. Fortunately there are plenty of other logic puzzles that exercise your internal SAT solver. :) < 1592588450 747947 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :(when there’s nothing else to do and a sudoku nearby; I won’t try googling one or downloading a sudoku app. Though once I had a good one in an old phone, which marked possible variations with a good clear font) < 1592588465 687595 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :int-e: lolol < 1592588480 678741 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I should remember the “internal SAT solver” thing < 1592588502 99028 :int-e!~noone@int-e.eu PRIVMSG #esoteric :arseniiv: that was *your* idea > 1592588526 300347 PRIVMSG #esoteric :14[[07User:PythonshellDebugwindow/AllTheCats14]]4 N10 02https://esolangs.org/w/index.php?oldid=74045 5* 03PythonshellDebugwindow 5* (+524) 10. < 1592588528 493790 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I pretend it wasn’t < 1592588541 165052 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ah > 1592588542 873467 PRIVMSG #esoteric :14[[07Talk:GORBITSA14]]4 N10 02https://esolangs.org/w/index.php?oldid=74046 5* 03X39 5* (+291) 10Created page with "== GORBITSA Program Format == It was never specified that GORBITSA format is as followed
Instructions must be separated by spaces, an instruction consists of a val..." > 1592588566 15030 PRIVMSG #esoteric :14[[07Talk:GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74047&oldid=74046 5* 03X39 5* (+42) 10 < 1592588566 961727 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :no, I phrased that sufficiently differently so I wouldn’t think this form all by myself < 1592588577 167501 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :so no you gen thanks after all < 1592588580 736467 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :get* > 1592588645 165852 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74048&oldid=74044 5* 03X39 5* (-48) 10/* Specification */ Fixed mistakes < 1592588785 599903 :xylochoron[m]!xylochoron@gateway/shell/matrix.org/x-qhcarlsqwaltjvcf JOIN :#esoteric < 1592588785 717546 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-jmhwavtpwlgnzlgw JOIN :#esoteric < 1592588829 16496 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :okay I think handcrafted top-down parsers aren’t yet too bad a taste, especially for a grammar like Tandem has < 1592588864 781164 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :also top-down parsing does seem like the thing most comfortable to do by hand < 1592588956 939344 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"Recursive descent" is the usual word, and they're pretty common to handcraft. < 1592588961 471294 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Go's parser is one of those. < 1592588967 349576 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :would someone like to proofread / help me making an interpreter for this: https://esolangs.org/wiki/Esofun < 1592588980 512690 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :ultimately I plan on creating _the ultimate_ golfing language < 1592588997 292689 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :also do you know Pratt parsers? I implemented a toy with them once but I think they aren’t much better in error reporting (and other UX things for a parser framework’s client) than other approaches so I ended up leaving them where they were < 1592589007 874163 :int-e!~noone@int-e.eu PRIVMSG #esoteric :kspalaiologos: pfft < 1592589043 552309 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :what :p < 1592589047 401640 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :kspalaiologos: but that description is still too long < 1592589051 960050 :int-e!~noone@int-e.eu PRIVMSG #esoteric :"ultimate " < 1592589065 175682 :int-e!~noone@int-e.eu PRIVMSG #esoteric :okay, *almost* anything < 1592589068 302679 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :the ultimate antepenultimatum < 1592589082 285606 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :it'd be ultimate due to it's design goals < 1592589083 996657 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :just look at them < 1592589110 660644 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I like partial orders for the reason there may be more than one maximal elements :D < 1592589142 845636 :int-e!~noone@int-e.eu PRIVMSG #esoteric :kspalaiologos: I'll read it when I've found the ultimate natural number. < 1592589194 804872 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( naming of art periods is silly, but I think we have not yet had an ultimate one. ) < 1592589209 848626 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm not too keen on stack-based golfing languages, they're great for linear programs in the linear-logic sense (i.e. programs where each input and intermediate value is used exactly once) but it's common to want to use values multiple times < 1592589230 690667 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and stack-based languages often have to waste a considerable portion of their command-space expressing how that happens < 1592589248 881362 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :int-e: the historical periods too, though maybe they aren’t that bad in English and other languages, I didn’t look at these < 1592589276 748284 :int-e!~noone@int-e.eu PRIVMSG #esoteric :arseniiv: that's related, but art periods are more finely grained < 1592589287 561572 :int-e!~noone@int-e.eu PRIVMSG #esoteric :so the silliness becomes more obvious < 1592589344 284342 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I also think that in golfing languages, it's normally a mistake for there to be any distinction between a string and a list of characters, or between a character and its codepoint (the only time when it isn't is if you have overloaded operators) < 1592589398 75450 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :ais523: I don't think so - stack based approach opens opportunities for tacit and concentative programming < 1592589409 642852 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and so far it's been proven that these paradigms shine when it comes to code golf < 1592589412 770595 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :tacit languages normally don't have a stack < 1592589424 725549 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : so the silliness becomes more obvious => also in different art forms they use the same word for different periods, AFAIR < 1592589431 718156 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :stacks aren't incompatible with the idea of tacit programming, but also aren't required < 1592589460 557472 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :forth is a tacit and concentative programming language < 1592589466 577209 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :so is J, APL, K and so forth < 1592589486 810029 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :forth isn't tacit in a way that saves bytes, though < 1592589521 875376 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :well, I plan on adding absurd amount of builtins < 1592589527 962420 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :triggered by various adverbs < 1592589541 251147 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :this makes me think that well, that's a lot of room for optimizations < 1592589541 807629 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm actually going the other way with my golfing languages < 1592589552 975745 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :trying to reduce the number of builtins so that they can have shorter names < 1592589565 76337 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :then it's not good for golfing, because you'll get outgolfed by Mathematica < 1592589568 641216 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but making each of them crazily context-sensitive to increase how powerful it is < 1592589583 272460 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that's exactly like the adverb system works in my language. < 1592589601 613814 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's not that rare for a full program that does something in, say, Jelly to be shorter than the name of the builtin in Mathematica < 1592589668 774135 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :yep, Mathematica surely takes the eloquent path to naming < 1592589670 553127 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :sigh, Jelly < 1592589681 26025 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :anyway, one major category of builtins that doesn't seem to be mentioned is builtins with block arguments < 1592589683 977095 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :if mathematica has names like Jelly builtins, and had them triggered by adverbs < 1592589687 21321 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :then well < 1592589717 623608 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :most mathematica builtins take lots of parameters though, and need them to avoid being too inflexible < 1592589744 617997 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :256 adverbs, 256 instructions = 65536 possible builtins to squish into the language < 1592589750 138231 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :are there golf languages utilizing Hindley—Milner typing? Though I think I asked that and someone answered already < 1592589757 597680 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that you have accessible using two keystrokes < 1592589765 664996 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and sometimes, in 70% of times, using a single keystroke < 1592589788 187078 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :arseniiv: I answered https://esolangs.org/wiki/Husk to a similar question < 1592589802 343714 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :kspalaiologos: but how would one program in it^W^W^W^W^W^W^W < 1592589824 364279 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: ah! thanks I think it was you that time even < 1592589831 25200 :int-e!~noone@int-e.eu PRIVMSG #esoteric :arseniiv: counting to 7 is too much to ask < 1592589831 359225 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :kspalaiologos: you can't have 256 of each and have them both accessible in a single byte < 1592589843 567156 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :unless you insist on having exactly one adverb on every instruction < 1592589850 469715 :int-e!~noone@int-e.eu PRIVMSG #esoteric :arseniiv: but I think you deleted everything except the kspalaiologos: part < 1592589915 466153 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :int-e: that’s intentional, yeah. Hm or I got lost in the semantics < 1592589921 117735 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :ais523: adverbs are toggle/set < 1592589929 710572 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :so you can have the adverb already set, so you don't have to type it again < 1592589941 31889 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :arseniiv: that's the only real problem < 1592589942 923215 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :kspalaiologos: how do you distinguish between an adverb and an instruction? < 1592589947 124180 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :programming will be hard as heck < 1592589948 346921 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you can't have 256 of each < 1592589956 745353 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you need a bit to say which is which < 1592589962 994468 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :ais523: no, you're getting it wrong < 1592589969 151594 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :let's use pseudocode < 1592589983 228947 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :"toggle adverb B; do operation; do operation;" < 1592589993 540712 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :1st and 2nd operation will work with the adverb < 1592589996 91933 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :b toggled < 1592590002 171743 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :kspalaiologos: you have 256 "toggle adverb" bytes and 256 "do operation" bytes < 1592590008 826873 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's more than 256 possibilities for each byte < 1592590030 322799 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :or, in literal code, tB.. < 1592590043 737305 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :instruction t toggles an adverb < 1592590054 135810 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the total number of adverbs + the total number of instructions needs to equal 256, if you want an 8-bit character set < 1592590077 374411 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I'm afraid that you can't parse this language without ambiguities < 1592590088 105589 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh wow, now /that's/ an interesting answer < 1592590104 468006 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :you're looking at this problem like, if B is an adverb I set with tB, B is not usable as an instructio < 1592590107 651023 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if you can make that work, the language got a lot more interesting < 1592590111 155688 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and this is false, because you can < 1592590136 740844 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :there are also tons upon tons of type corrections and most operations introduce automatic reduce < 1592590142 577418 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :because the main datatype is a stack of lists < 1592590143 133306 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, is "toggle adverb" an instruction? < 1592590162 132075 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :it's `t' < 1592590171 965875 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :inb4: you can have t as an adverb < 1592590202 697559 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, I see < 1592590204 975021 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :current adverb list is in pont 5, any other adverb can be flipped, but it makes no sense, because it doesn't change anything < 1592590213 432224 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so instead of 1 byte to toggle and 1 byte per instruction < 1592590222 605600 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you need, in effect, 2 bytes to operate a toggle < 1592590228 633085 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :yes < 1592590229 305938 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but the instructions are 1 byte each when not toggled < 1592590234 97371 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :yes < 1592590244 666908 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I also plan on somehow optimizing the toggles for size < 1592590252 856176 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think this can be a sensible way to design a language < 1592590261 297456 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although it's possible that your numbers are off < 1592590270 278025 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I plan on adding the instruction that will unpack a character to bits < 1592590277 556572 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :256 sets seems like it's maybe too much < 1592590279 956516 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and then set the adverbs in given range with this < 1592590293 341098 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that's why I'm allowing to set for example adverb state to a list < 1592590304 127573 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :so you can compress your adverbs and then unpack them in runtime, and pop it to the adverb list < 1592590305 525067 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :err, 2²⁵⁶ sets is definitely too much < 1592590314 892911 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :even though there will be a lot of overlap < 1592590317 214792 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :because there will be an instruction for compression/decompression < 1592590343 332314 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :I also plan on implementing logical date operations < 1592590353 45461 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :unlike literally any other non-eso language out there < 1592590356 622325 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :maybe just have 8 bits of adverbs, for a total of 256 instruction sets, and have the toggle instruction unpack a literal byte? < 1592590368 991641 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that's one way to do it < 1592590374 555891 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :i'll consider it < 1592590433 678808 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :ah, and you can also bend the type correction rules < 1592590458 799056 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and I plan on adding a builtin to override all the existing instructions via the link mechanism < 1592590478 62750 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :so that you can create a link bound to either an instruction or an ID, that will execute and then pass the control to another link < 1592590480 972728 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :with the same name < 1592590503 439665 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :so you could e.g. override 0 with f0RN < 1592590513 972599 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :this has no effect, but you could theoretically put something useful there < 1592590540 879243 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :you can also declare identifier links, not bound to an instruction, rather, an identifier < 1592590545 807284 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that you can call using '. syntax < 1592590561 903827 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I take it this is designed to be a golfing language for writing large programs, then? < 1592590575 422333 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hm now I thought “simple complex” and suddenly there is an idea of writing programs as cell complexes < 1592590591 118775 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :well, yes < 1592590599 123084 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :because writing simple programs in it makes no sense < 1592590603 566343 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :but for large scale code golf, it's perfect < 1592590612 455862 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :and very competetive, because most of the times you can golf the hell out of the code < 1592590807 130811 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :imagine, you have to for example golf a SKI calculus evaluator < 1592590833 976788 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :it'd be quite easy with functional languages and all that fluff, but stuff like osable or jelly don't seem like they have a simply and small way of solving this problem < 1592590847 203556 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :while in this language, there's a high chance you'd get it done in well under 50 characters < 1592590868 366261 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :better, directed ones. Starting with 2-cells, one has a big selection of polygons to choose from, 3-cells may vary in form further, but maybe even with 2-complexes which consist of 0-, 1- and 2-cells, one can encode something in a good way. There can be edges (1-cells) which are attached only by one of their vertices, any number of this kind of edge sticking from any vertex. Maybe one could use boundary and coboundary operators to define actions… And < 1592590868 477324 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric : maybe the state of a program can be made a form on the complex, or a collection of forms of all degrees (here, 0-, 1- and 2-, each on cells of a corresponding order). Hmm < 1592590871 359805 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that seems like an interesting challenge, actually < 1592590959 842143 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ais523: kspalaiologos: is there a way algebraic types could work in a golflang? < 1592591015 449799 :kspalaiologos!~root@206.ip-51-91-102.eu PRIVMSG #esoteric :that's a bit hairy when I think about it, but I guess it's doable < 1592591022 874670 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what do you mean by algebraic types? sum types and product types? < 1592591036 781680 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :normally golflangs are untyped, so you just use heterogenous lists for everything < 1592591037 671288 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :tagged sum types < 1592591047 26365 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :with products in each alternative < 1592591048 561582 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :e.g. instead of a(1,2) you use ['a',1,2] < 1592591073 39965 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :though it can be tagged sums + products not packed together < 1592591082 549717 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or, well, you use whatever representation gives you the shortest code, but golflangs are normally good at operating on lists even if they have distinguished elements < 1592591116 814402 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I’d say heterogeneous lists would suffice if there’s something like pattern matching < 1592591177 574872 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :though I don’t think one can do something feasible without constructing case tables < 1592591185 539925 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :and they would take up space < 1592591199 988591 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm thinking about how I'd write this program < 1592591207 660424 :kspalaiologos!~root@206.ip-51-91-102.eu QUIT :Quit: leaving < 1592591220 993591 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :my current plan is to use executable code as the tags < 1592591235 604312 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and just eval it to do the equivalent of the case table < 1592591246 608845 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that works best if you have only one table, of course < 1592591308 829352 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hm how frequently is there an instruction which takes [f, args…] to f(args…)? < 1592591330 125138 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in Jelly it's a two-byter < 1592591353 256882 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :maybe a third when it's part of a larger program, to disambiguate what applies to what < 1592591380 158860 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :though one table constraint is not good for big tasks < 1592591386 601088 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :would be vḤ, I think < 1592591397 71860 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :no, other way round, Ḥv < 1592591460 826372 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :err, Ḣv < 1592591469 22463 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :like this: https://tio.run/##y0rNyan8///hjkVl////j1YPVtcx1DHSMY4FAA < 1592592998 679239 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I guess you could simply use numeric tags, and index into a list of code fragments < 1592593216 175906 :LKoen!~LKoen___@81.255.219.130 JOIN :#esoteric > 1592593730 599972 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74049&oldid=74048 5* 03Megarev 5* (+162) 10/* Programs */ > 1592593747 566725 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74050&oldid=74049 5* 03Megarev 5* (+8) 10/* Cool Stairs (By Megarev) */ < 1592594109 697450 :S_Gautam!uid286066@gateway/web/irccloud.com/x-rhnglfxszegnegxe QUIT :Quit: Connection closed for inactivity < 1592595274 453928 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :I was working on my own golf programming language involving the PC character set < 1592595471 583083 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :Its data types are: number (a rational number with an optional French suit), list (can contain data of multiple types), function, dictionary (key/value pairs with no duplicate keys), mark (there is only one kind of mark; this is similar to the mark in PostScript). < 1592597234 494096 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :SKI combinator calculus in 40 bytes of Jelly, and I haven't really tried to properly golf it yet: https://tio.run/##y0rNyan8//9Rw5zDO47uebiz5XDLsU3JCUD@o6Y1D3fMBzIOLX7UMPPhzmYgs@zhju0Pd@57uHOWjrX@o4a5QPahJVz@D3d3H1p0aOvh@UA9ZfqHtvo83N11aKv9////o6Oj1YvVddQz1WMhBDI/Wz02FgA < 1592597272 439286 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or to write the program itself, “øżṄÄƲc`“€ḟ“£’ṃ“vḷṾṚ,;/”Ṿ¤¶Oị¢µß€v/µLỊµ? < 1592597389 85182 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :evaluation is eager, function before argument; it goes into an infinite loop (sadly not tail-recursive) if the SKI term doesn't normalize, or prints out some Jelly code that implements the function in question if it does normalize < 1592597495 926859 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :come to think of it, this also shows why writing golfing languages designed for large programs is kind-of pointless: you could instead write a small decompressor and use eval, as is done here > 1592597602 128141 PRIVMSG #esoteric :14[[07Beautiful day14]]4 N10 02https://esolangs.org/w/index.php?oldid=74051 5* 03Hakerh400 5* (+2098) 10+[[Beautiful day]] > 1592597605 631004 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=74052&oldid=73985 5* 03Hakerh400 5* (+20) 10+[[Beautiful day]] > 1592597610 521746 PRIVMSG #esoteric :14[[07User:Hakerh40014]]4 10 02https://esolangs.org/w/index.php?diff=74053&oldid=73775 5* 03Hakerh400 5* (+20) 10+[[Beautiful day]] < 1592597674 477983 :ais523!~ais523@unaffiliated/ais523 MODE #esoteric -o :ais523 < 1592597678 122285 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :services should be working again now < 1592597777 579777 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :uh, that's a lot of scrollback I should read later. is there something that should really concern me? < 1592597811 123574 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you mean from today? or from the earlier logs that have now been fixed? < 1592597819 822931 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's just been basic, on-topic conversation, there's just been a lot of it < 1592597826 574623 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :from today, at least < 1592597826 798291 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :from today, after I entered < 1592597846 847697 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :there wasn't much from before that, I looked at the one logs server that was still available < 1592597874 154443 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :only even though I was joined, I was looking at other more urgent stuff < 1592598120 374966 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :sadly Jelly's escaping syntax blows up exponentially, so my SKI interpreter in Jelly isn't going to work on nontrivial programs < 1592598420 416140 :ais523!~ais523@unaffiliated/ais523 QUIT :Quit: quit < 1592598757 774262 :t20kdc!~20kdc@cpc139340-aztw33-2-0-cust225.18-1.cable.virginm.net PRIVMSG #esoteric :looking at tio.run, I'm curious as to how the BitBitJump interpreter is supposed to work > 1592598778 203769 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74054&oldid=74050 5* 03ZippyMagician 5* (+1113) 10Add tic-tac-toe example < 1592598861 299204 :t20kdc!~20kdc@cpc139340-aztw33-2-0-cust225.18-1.cable.virginm.net PRIVMSG #esoteric :aaah, someone has created a standardized assembly notation for BitBitJump, that explains it > 1592599334 261466 PRIVMSG #esoteric :14[[07Beautiful day14]]4 M10 02https://esolangs.org/w/index.php?diff=74055&oldid=74051 5* 03PythonshellDebugwindow 5* (+72) 10/* Interpreters */ cats > 1592599479 830099 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03TrolledWoods 5* 10New user account > 1592599602 394563 PRIVMSG #esoteric :14[[07Esolang:Introduce yourself14]]4 M10 02https://esolangs.org/w/index.php?diff=74056&oldid=74037 5* 03TrolledWoods 5* (+95) 10/* Introductions */ > 1592599797 686554 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74057&oldid=74054 5* 03TrolledWoods 5* (+361) 10/* Programs */ < 1592599845 300372 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :"trying to reduce the number of builtins so that they can have shorter names" => does that really help? you can have lots of builtins but huffmanize them so that common ones are encoded to short names. you don't lose a lot by adding extra builtins with long names in a golf language. > 1592599879 225577 PRIVMSG #esoteric :14[[07GORBITSA14]]4 10 02https://esolangs.org/w/index.php?diff=74058&oldid=74057 5* 03TrolledWoods 5* (+1) 10/* Saurons eye (By TrolledWoods) */ < 1592600297 13905 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :kspalaiologos: but not many people actually do golfing on large programs (... says the guy who submitted a 202 byte program for a simple golf challenge) < 1592600596 762155 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :" sadly Jelly's escaping syntax blows up exponentially" => that's sad. it's a pity that K&R didn't define a short escape syntax for a backslash in a string literal other than "\\", so now you can only use "\x5C" because nobody managed to standardize a short escape syntax later, by fear that nobody else would speak it < 1592600624 451663 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :and it might be too late because backslash followed by anything means something in some languages < 1592600645 738922 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :you can still define an escape syntax for your language, but not for anything that will spread and be uniform everywhere < 1592600669 729223 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :well, technically "\x5C" or "\??/" < 1592600827 49200 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :or "\134" I guess, but "\x5C seems the best option < 1592600837 273377 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :so that's what I usually use < 1592602180 405467 :TheLie!~TheLie@2a02:8106:215:3300:844d:dece:9bd4:fbb2 QUIT :Ping timeout: 244 seconds > 1592602764 515891 PRIVMSG #esoteric :14[[07GORBITSA14]]4 M10 02https://esolangs.org/w/index.php?diff=74059&oldid=74058 5* 03X39 5* (+1) 10/* Specification */ Fixed Typos < 1592603134 625458 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :b_jonas: how do you think, is there a better way to escape a character than x ↦ xx, xx ↦ xxx, xxx ↦ xxxx? < 1592603269 423062 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: that would be ugly, how would you put a different escape starting with x after that? < 1592603302 902116 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :xxxxxd? < 1592603311 521692 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ah < 1592603314 481478 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :but how do you distinguish wh... < 1592603397 985273 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hm it seems a while ago I ended up with a way both unambiguously parsable and resembling this one < 1592603404 590474 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :ideally K&R should have said something like \m is an escape for a backslash, and then everyone copies that together with \n and \t, and perl's and php's quoting functions would turn a backslash to that < 1592603445 264544 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :and then \mm is a two-level escape of a backslash, while \m\m is an escape for two backslashes, \mn is a double escape for a newline etc < 1592603485 139109 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :ah, yeah, \ \m \mm \mmm is the way I think that was < 1592603599 393716 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :what would you suggest for the case of paired characters? Like, in C# and newer Python3 there are `{` and `}` in format strings, which escape as `{{` and `}}`. This explodes as well as `\\` < 1592603643 613078 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :in some dump files that I both write and read, I use an escape format where "\x10" is an escape character, to unescape remove it and xor the next byte with 0x20, so a line feed is escaped by "\x10J" and the character itself is escaped as "\x10P", and I use "\x1F" as the string delimiter and if that one came up in a string that would be escaped as "\x10_" too < 1592603683 515585 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :for something like C/perl/php/sql source code I wouldn't recommend this, you want them to be printable ascii rather than control characters < 1592603714 292771 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :b_jonas: how do you read those files though? < 1592603755 632153 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: I hate python's format string syntax in first place, for reasons unrelated to that escape syntax, but luckily python also offers a more traditional format mechanism with a format syntax like C's printf, so that's what I always use < 1592603809 764083 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: what do you mean how I read them? I either read them with perl or python scripts where I have a function that does the unescaping, and they're easier to read than CSVs because I can read them line by line and a line break always means the end of the record with no mucking about with escaped line breaks, < 1592603823 462208 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I advocated (and I think I still do) US, RS, GS and FS as a CSV replacement but unfortunately they aren’t printable either, though many editors would print them good, but the other issue people wouldn’t be able to input them well < 1592603844 39280 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :b_jonas: ah, I see < 1592603865 471651 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :or by eyeballing at them in a text editor, which displays control characters in some fancy way, and again it's easy because then there are no escaped line breaks, so every record is a single line < 1592603893 414518 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :I also work with CSVs, because I interface with existing programs that read and write them, and quoting line breaks is more ugly there < 1592603908 332862 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :US, RS, GS and FS => I need to add them to my AHK script, for some reason they aren’t there—at least to test various text editors < 1592603944 402853 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :yeah, escaped line breaks aren’t good for the eyes < 1592603955 579772 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :have you ever tried to implement a CSV reader and writer that handles quoted line breaks, quoted field separators, and quoted double quotes, correctly in all corner cases, including detecting malformed input and including accepting either "\n" or "\r\n" as the field separator but preserving the distinction between them inside quoted strings? < 1592603969 614460 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :I have written such a csv reader and writer, and I believe it's correct now, but it's UGLY AS HELL < 1592603977 23803 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :I hate whoever invented these quoting standards < 1592603998 673426 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :b_jonas: including detecting malformed input => hopefully I won’t need to do that! < 1592604089 203735 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :okay I suggest using `{|` and `|}` as escapes for `{` and `}` for example. Is it good? < 1592604091 559842 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :whereas the reader and writer for my dump format is trivial, so trivial that I implemented a writer even in VBA, which is such a horrible language that I choose dump everything and then process them in external code rather than try to implement anything nontrivial in VBA directly. I could similarly easily write a reader for this format in VBA, though I haven't done yet, and it would be trivial, at least < 1592604097 594818 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :the parsing and unescaping parts would be trivial. < 1592604122 261984 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: again, no clue, because I hate braced format strings in first place < 1592604168 422447 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :VBA is horrible, I agree as someone who wrote in it and in VB6 for some time when there was no internet access and prior to finding a CD with Delphi < 1592604200 928100 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :b_jonas: let’s pretend they aren’t for format strings < 1592604231 111425 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :though I won’t name another application from the top of the head < 1592604232 42935 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :though I haven't tried to use the foreign call interface of VBA yet, but maybe I should, linking a DLL and calling my own C functions might work better than dumping to a file in some cases < 1592604245 467027 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :I should definitely experiment with how easy or difficult that is < 1592604270 388271 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: no clue then, I can't really tell how you should escape something unless there's an actualy application that I can imagine < 1592604309 233163 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :meanwhile, I managed to cause a rules debate in the M:tG 3-card blind thread < 1592604311 991057 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I think FFI declarations were more or less good but I didn’t write them those times, only marveled at someone’s registry access code from wherever < 1592604337 219244 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :VBA should interoperate well with COM+! (I’ll show myself out) < 1592604355 955391 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :I submitted a deck based on a judgement I received in a private message from the then GM in the previous thread, and the players somehow don't want to use that, despite that in general we use most of the rules from that thread. < 1592604408 171420 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: yes, if I was a windows programmer then I wouldn't even try to use VBA, just call the VBA interface of this application through some COM or whatever interface that is from a non-VBA program < 1592604414 196290 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :a C++ or C# program or something < 1592604433 787418 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :I know there's such an interface, but given that I'm not a windows program and don't want to become one, I have never learned how that thing works < 1592604467 336971 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :maybe C# would be better these times though I didn’t try, I avoid < 1592604496 475757 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :I mean I did try C# and wrote much in it but didn’t try connections of this sort < 1592604510 498978 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :it's still not ideal, because the application interface has a few functions that you can access from the UI and I really want to access them from VBA but there's no interface yet, plus a few of the interface functions have bugs < 1592604521 474805 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :but still much better than the terrible UI and trying to do everything manually with it < 1592604633 239031 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :arseniiv: I have also thought to use US, RS, GS, FS, and the SQLite command-line interface supports this format, too. < 1592604665 444174 :TheLie!~TheLie@2a02:8106:215:3300:844d:dece:9bd4:fbb2 JOIN :#esoteric < 1592604672 685364 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :zzo38: neat! didn’t know, thanks < 1592604678 340709 :zzo38!~zzo38@host-24-207-48-139.public.eastlink.ca PRIVMSG #esoteric :(And when doing that, I have used \x10 as an escape character, too) < 1592604793 319029 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :admittedly I cheat, and use a second escaping mechanism: "\x0B" is a one-byte escape for "\r\n", because that's by far the most common thing I have to escape < 1592604820 805990 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :but this doesn't change the properties of the format much, it's still very easy to write and read < 1592604885 88499 :LKoen!~LKoen___@81.255.219.130 QUIT :Quit: Leaving < 1592604923 888429 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :interestingly, I see AHK pastes US and RS in full but stumbles on GS and FS for some reason < 1592605882 493557 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :if anyone’s interested how to add them to AHK, I found a simple and working way: send things like `{U+001c}` (this for FS) > 1592606155 586468 PRIVMSG #esoteric :14[[07Talk:Functional deadfish14]]4 N10 02https://esolangs.org/w/index.php?oldid=74060 5* 0320kdc 5* (+284) 10Note a possible spec flaw. < 1592606184 848744 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: what is "AHK"? < 1592606527 190525 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :b_jonas: AutoHotkey, a Windows automation tool which allows to define hotkey actions and send strings (aside other things). I use it with a large script to send almost all the unicode characters I post here and elsewhere, by typing LaTeX-like sequences (which wasn’t a good move but now I have what I have), like \rd␣ will send ⌟ < 1592606556 140406 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :arseniiv: ok < 1592606579 374195 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :12345 wow I accidentally used IRC formatting < 1592606591 138418 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :hm hm < 1592606625 968141 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :evidently FS…US are used for formatting here too. I thought that would be some other unprintable characters < 1592606665 772182 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :GG ohdeerK < 1592606692 846521 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :wrong channel < 1592608227 346274 :arseniiv!~arseniiv@136.169.210.76 PRIVMSG #esoteric :rewritten the data model for cpressey’s Tandem almost two times now, it’s time to sleep… < 1592608513 863301 :arseniiv!~arseniiv@136.169.210.76 QUIT :Ping timeout: 264 seconds < 1592608577 230556 :TheLie!~TheLie@2a02:8106:215:3300:844d:dece:9bd4:fbb2 QUIT :Remote host closed the connection < 1592608698 243166 :heroux!sandroco@gateway/shell/insomnia247/x-ckmhznuajalxvjoa QUIT :Ping timeout: 265 seconds < 1592608964 483071 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1592609324 762228 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1592609397 544965 :heroux!sandroco@gateway/shell/insomnia247/x-mylhvyqodmqgpzou JOIN :#esoteric < 1592609494 955480 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 260 seconds < 1592609500 285564 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life < 1592609789 487373 :tromp!~tromp@2a02:a210:ca3:2800:2160:3556:f605:27df QUIT :Ping timeout: 272 seconds < 1592610367 195693 :b_jonas!~x@catv-176-63-11-158.catv.broadband.hu PRIVMSG #esoteric :and... I accidentally spawned a small debate about US customary units :(