< 1558139684 610385 :S_Gautam!uid286066@gateway/web/irccloud.com/x-fnqybbimavljfvfu QUIT :Quit: Connection closed for inactivity < 1558140959 99532 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I thought of a idea of esolang, which is there is some finite number of inputs each of which stores a natural number, and a finite number of registers in the program, each of which stores a queue with natural numbers and/or names of inputs, and each register also has a maximum amount of the sum of its contents, which is defined as a polynomial of the input variables with integer coefficients which must have a natural number result for all possible < 1558141083 914194 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :And then there is operation, which is: make a register empty, check if a register is empty (and jump based on the result), append a element onto a queue (can only be a constant natural number or a constant name of a input) (if that would cause it to exceed the maximum, then it is unchanged), move as many elements from the beginning of one register to the end of another that will fit, output a register, and terminate. < 1558141349 705711 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Do you like this? < 1558146019 473790 :xkapastel!uid17782@gateway/web/irccloud.com/x-aphdblanzgzmbtec QUIT :Quit: Connection closed for inactivity < 1558147913 615253 :FreeFull!~freefull@defocus/sausage-lover QUIT : > 1558152732 693046 PRIVMSG #esoteric :14[[07Talk:Echo Tag14]]4 N10 02https://esolangs.org/w/index.php?oldid=62292 5* 03Zzo38 5* (+472) 10Created page with "Even if ''n'' is large, still the proof should be provided (if it is correct) (just to see if it can be Turing-complete at all); if someone else can prove it Turing-complete f..." < 1558156976 167081 :iconmaster!~iconmaste@2604:6000:b180:d800:e1cb:4702:2556:20c5 JOIN :#esoteric < 1558157784 802227 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric > 1558159643 726919 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62293&oldid=62285 5* 03A 5* (+116) 10I cannot test it. > 1558159732 320759 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62294&oldid=62293 5* 03A 5* (+149) 10Add my test program > 1558159986 583412 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62295&oldid=62294 5* 03A 5* (+0) 10Another irritating micro-edit > 1558160323 106373 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62296&oldid=62295 5* 03A 5* (+416) 10Add a lot of info > 1558160359 150983 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62297&oldid=62296 5* 03A 5* (+0) 10Move signature > 1558160498 507839 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 10 02https://esolangs.org/w/index.php?diff=62298&oldid=62297 5* 03A 5* (-43) 10/* Sketch: A RAM Machine */ < 1558160789 804933 :john_metcalf!~digital_w@host86-139-60-58.range86-139.btcentralplus.com JOIN :#esoteric > 1558160855 11453 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 10 02https://esolangs.org/w/index.php?diff=62299&oldid=62298 5* 03A 5* (-638) 10Sorry. I did not update implementation > 1558161515 773073 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62300&oldid=62299 5* 03A 5* (+213) 10/* Sketch: A RAM Machine */ > 1558162319 418962 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62301&oldid=62300 5* 03A 5* (+126) 10Wonderful! > 1558162635 359730 PRIVMSG #esoteric :14[[07User:A14]]4 M10 02https://esolangs.org/w/index.php?diff=62302&oldid=62160 5* 03A 5* (+384) 10Interesting program form > 1558162787 931840 PRIVMSG #esoteric :14[[07User:A14]]4 M10 02https://esolangs.org/w/index.php?diff=62303&oldid=62302 5* 03A 5* (+70) 10Golfed program > 1558162905 744428 PRIVMSG #esoteric :14[[07User:A14]]4 M10 02https://esolangs.org/w/index.php?diff=62304&oldid=62303 5* 03A 5* (+49) 10 > 1558163288 248131 PRIVMSG #esoteric :14[[07Golf/Feature golf14]]4 N10 02https://esolangs.org/w/index.php?oldid=62305 5* 03A 5* (+501) 10Created page with "Feature golf is a specific type of golf. Its goal is to to write the shortest program that uses up all of the features in a programming language without including dead code...." > 1558163310 748801 PRIVMSG #esoteric :14[[07Golf/Feature golf14]]4 M10 02https://esolangs.org/w/index.php?diff=62306&oldid=62305 5* 03A 5* (+0) 10 < 1558165148 757952 :Frater_EST!~adrianbib@wsip-68-15-198-210.ok.ok.cox.net JOIN :#esoteric < 1558165889 54154 :AnotherTest!~turingcom@ptr-82l26zfnlgwh4k4ewtw.18120a2.ip6.access.telenet.be JOIN :#esoteric < 1558166165 39826 :AnotherTest!~turingcom@ptr-82l26zfnlgwh4k4ewtw.18120a2.ip6.access.telenet.be QUIT :Ping timeout: 258 seconds > 1558166396 20765 PRIVMSG #esoteric :14[[07Talk:Z14]]4 N10 02https://esolangs.org/w/index.php?oldid=62307 5* 03TuxCrafting 5* (+759) 10Created page with "I am trying to implement (well, re-implement) Z, but I'm having trouble understanding what some instructions are supposed to do and running examples. * zz Z, 1558166547 888593 PRIVMSG #esoteric :14[[07Z14]]4 M10 02https://esolangs.org/w/index.php?diff=62308&oldid=60768 5* 03TuxCrafting 5* (-97) 10i'm trying to reimplement it but it's confusing < 1558166764 344397 :Frater_EST!~adrianbib@wsip-68-15-198-210.ok.ok.cox.net PART :#esoteric > 1558167509 201496 PRIVMSG #esoteric :14[[07Golf/Feature golf14]]4 M10 02https://esolangs.org/w/index.php?diff=62309&oldid=62306 5* 03A 5* (-214) 10 < 1558169178 320801 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 245 seconds < 1558169218 973812 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558169650 661700 :atslash!~atslash@static.231.107.9.5.clients.your-server.de QUIT :Quit: This computer has gone to sleep > 1558169897 436642 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 10 02https://esolangs.org/w/index.php?diff=62310&oldid=62301 5* 03A 5* (+204) 10/* Sketch: A RAM Machine */ > 1558170080 841457 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 10 02https://esolangs.org/w/index.php?diff=62311&oldid=62310 5* 03A 5* (-204) 10/* Sketch: A RAM Machine */ < 1558170104 257963 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :huey < 1558174884 954212 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558175063 944167 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 246 seconds > 1558175985 31891 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62312&oldid=62311 5* 03A 5* (+182) 10/* [Ongoing] Equivalency between bitch and Home Row by User:Helen */ > 1558176175 752472 PRIVMSG #esoteric :14[[07Brainfuck implementations14]]4 M10 02https://esolangs.org/w/index.php?diff=62313&oldid=60658 5* 03A 5* (+138) 10/* Normal implementations */ > 1558176315 552542 PRIVMSG #esoteric :14[[07EsoInterpreters14]]4 10 02https://esolangs.org/w/index.php?diff=62314&oldid=53710 5* 03A 5* (+453) 10/* Main table */ > 1558176989 783504 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62315&oldid=62312 5* 03A 5* (+332) 10/* Sketch: A RAM Machine */ < 1558177398 825640 :iconmaster!~iconmaste@2604:6000:b180:d800:e1cb:4702:2556:20c5 QUIT :Quit: Leaving < 1558178992 744962 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric < 1558179028 230862 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558179195 262059 :atslash!~atslash@static.231.107.9.5.clients.your-server.de QUIT :Client Quit < 1558179226 12892 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 258 seconds < 1558179846 325687 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 252 seconds < 1558180069 885314 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1558180150 605900 :Melvar!~melvar@dslc-082-082-054-010.pools.arcor-ip.net QUIT :Quit: WeeChat 2.4 < 1558180388 531749 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558180571 208523 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 248 seconds < 1558180778 769154 :Melvar!~melvar@dslc-082-082-054-010.pools.arcor-ip.net JOIN :#esoteric < 1558181818 860445 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric > 1558182725 420501 PRIVMSG #esoteric :14[[07M-code14]]4 M10 02https://esolangs.org/w/index.php?diff=62316&oldid=57368 5* 03Madk 5* (+2) 10Update download link > 1558182758 449723 PRIVMSG #esoteric :14[[07Grin14]]4 M10 02https://esolangs.org/w/index.php?diff=62317&oldid=57369 5* 03Madk 5* (+2) 10Update download link > 1558182795 386585 PRIVMSG #esoteric :14[[07Tri14]]4 M10 02https://esolangs.org/w/index.php?diff=62318&oldid=57370 5* 03Madk 5* (+3) 10Update download link > 1558182826 481629 PRIVMSG #esoteric :14[[07Tri14]]4 M10 02https://esolangs.org/w/index.php?diff=62319&oldid=62318 5* 03Madk 5* (-1) 10Fix mistake in link update < 1558182838 546559 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric > 1558182919 789183 PRIVMSG #esoteric :14[[07Cardinal14]]4 M10 02https://esolangs.org/w/index.php?diff=62320&oldid=57371 5* 03Madk 5* (+29) 10Update download link (original interpreter) < 1558183063 452445 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 244 seconds > 1558183268 507623 PRIVMSG #esoteric :14[[07Fit14]]4 M10 02https://esolangs.org/w/index.php?diff=62321&oldid=57373 5* 03Madk 5* (+2) 10Update download link > 1558183309 79017 PRIVMSG #esoteric :14[[07Staq14]]4 M10 02https://esolangs.org/w/index.php?diff=62322&oldid=57374 5* 03Madk 5* (+2) 10Update download link > 1558183350 999988 PRIVMSG #esoteric :14[[07PoGo14]]4 M10 02https://esolangs.org/w/index.php?diff=62323&oldid=57375 5* 03Madk 5* (+2) 10Update download link > 1558183400 733951 PRIVMSG #esoteric :14[[07D1ffe7e45e14]]4 M10 02https://esolangs.org/w/index.php?diff=62324&oldid=57376 5* 03Madk 5* (-5) 10Update download link > 1558183424 881161 PRIVMSG #esoteric :14[[07D1ffe7e45e14]]4 M10 02https://esolangs.org/w/index.php?diff=62325&oldid=62324 5* 03Madk 5* (+7) 10Fix download link update mistake > 1558183453 246544 PRIVMSG #esoteric :14[[07Surface14]]4 M10 02https://esolangs.org/w/index.php?diff=62326&oldid=57367 5* 03Madk 5* (+5) 10Update download link > 1558183481 862078 PRIVMSG #esoteric :14[[07Minimal14]]4 M10 02https://esolangs.org/w/index.php?diff=62327&oldid=57377 5* 03Madk 5* (+2) 10Update download link > 1558183523 309499 PRIVMSG #esoteric :14[[07Vrejvax14]]4 M10 02https://esolangs.org/w/index.php?diff=62328&oldid=58896 5* 03Madk 5* (+2) 10Update interpreter download link > 1558183558 392636 PRIVMSG #esoteric :14[[07BrainCursion14]]4 M10 02https://esolangs.org/w/index.php?diff=62329&oldid=57380 5* 03Madk 5* (+2) 10Update download link > 1558183583 150446 PRIVMSG #esoteric :14[[07Filth14]]4 M10 02https://esolangs.org/w/index.php?diff=62330&oldid=57381 5* 03Madk 5* (+2) 10Update download link > 1558183627 543452 PRIVMSG #esoteric :14[[07BF-PDA14]]4 M10 02https://esolangs.org/w/index.php?diff=62331&oldid=57383 5* 03Madk 5* (+2) 10Update download link < 1558184406 282773 :arseniiv!~arseniiv@145.255.0.230 JOIN :#esoteric > 1558184585 80817 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 10 02https://esolangs.org/w/index.php?diff=62332&oldid=62315 5* 03Int-e 5* (+382) 10/* Sketch: A RAM Machine */ nested loops + cosmetics < 1558186033 314126 :unlimiter!~unlimiter@41.141.17.175 JOIN :#esoteric < 1558186048 414620 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558186149 523244 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 252 seconds < 1558186172 124161 :rodgort!~rodgort@68.ip-149-56-14.net QUIT :Quit: Leaving < 1558186447 276902 :rodgort!~rodgort@68.ip-149-56-14.net JOIN :#esoteric < 1558188493 445786 :unlimiter!~unlimiter@41.141.17.175 QUIT :Quit: WeeChat 2.4 < 1558188783 363841 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :my earlier analysis was wrong < 1558189294 871440 :int-e!~noone@int-e.eu PRIVMSG #esoteric :a) what analysis? b) surprise?! > 1558189991 803274 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62333&oldid=62332 5* 03A 5* (-96) 10Oh no, I mis-referred a page. < 1558190007 394067 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 244 seconds < 1558190052 272167 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric > 1558190150 556954 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62334&oldid=62333 5* 03A 5* (+7) 10 Page improvement > 1558190400 722496 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62335&oldid=62334 5* 03A 5* (+3) 10 < 1558190836 244205 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric > 1558190933 751124 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62336&oldid=62335 5* 03A 5* (+71) 10Argh! I had to make another minor edit. Sorry for the inconvenience. < 1558191157 218514 :atslash!~atslash@static.231.107.9.5.clients.your-server.de QUIT :Ping timeout: 246 seconds < 1558191182 967268 :atslash!~atslash@broadband-46-188-0-82.2com.net JOIN :#esoteric < 1558191911 323776 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558192086 58037 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 258 seconds < 1558192246 282706 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 255 seconds > 1558192712 786510 PRIVMSG #esoteric :14[[07Talk:Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=62337&oldid=62336 5* 03A 5* (+245) 10/* Incapability of bitch implementing Popular problems */ < 1558193925 347693 :jericho98!~Mutter@50.7.116.212 JOIN :#esoteric < 1558194706 408518 :jericho98!~Mutter@50.7.116.212 PART #esoteric :"Be back later..." < 1558195301 189706 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558196095 494008 :tromp!~tromp@2a02:a210:1585:3200:b50d:3c03:449b:faf3 QUIT :Remote host closed the connection < 1558197323 979056 :atslash!~atslash@broadband-46-188-0-82.2com.net QUIT :Ping timeout: 246 seconds < 1558197375 235758 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric < 1558197558 108245 :weston!8ea78f5a@gateway/web/freenode/ip.142.167.143.90 JOIN :#esoteric < 1558198085 537858 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric < 1558198359 530437 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Ping timeout: 252 seconds < 1558198551 987235 :unlimiter!~unlimiter@41.141.17.175 JOIN :#esoteric < 1558198709 647978 :atslash!~atslash@static.231.107.9.5.clients.your-server.de QUIT :Read error: Connection reset by peer < 1558198738 899824 :unlimiter!~unlimiter@41.141.17.175 QUIT :Client Quit < 1558198770 969011 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric < 1558199075 964050 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric < 1558199385 235808 :unlimiter!~unlimiter@41.141.17.175 JOIN :#esoteric < 1558199780 41252 :unlimiter!~unlimiter@41.141.17.175 QUIT :Quit: thanks < 1558200163 105889 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Remote host closed the connection < 1558200442 596768 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric < 1558201244 306504 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Remote host closed the connection < 1558202172 700020 :zemhill_______!bfjoust@selene.zem.fi PRIVMSG #esoteric :web.a: points 8.31, score 47.40, rank 1/47 < 1558202180 833278 :zemhill_______!bfjoust@selene.zem.fi PRIVMSG #esoteric :web.a: points -46.00, score 0.00, rank 47/47 (-46) < 1558202248 666051 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric < 1558205626 53517 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Remote host closed the connection > 1558206461 910741 PRIVMSG #esoteric :14[[07Shark14]]4 N10 02https://esolangs.org/w/index.php?oldid=62338 5* 03Madk 5* (+3519) 10Add Shark esolang > 1558207179 852046 PRIVMSG #esoteric :14[[07User:Madk14]]4 10 02https://esolangs.org/w/index.php?diff=62339&oldid=57385 5* 03Madk 5* (+12) 10/* Pages I've created */ > 1558207450 504152 PRIVMSG #esoteric :14[[07M?!14]]4 N10 02https://esolangs.org/w/index.php?oldid=62340 5* 03Mipinggfxgbtftybfhfyhfn 5* (+666) 10Created page with " '''M+-'''is an [[esoteric programming language]] based on [[Brainfuck]] but with less comands: ==Commands== {| class="wikitable" |- ! Command !! Use |- | m || Goes to the nex..." < 1558207475 58771 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric > 1558207499 84687 PRIVMSG #esoteric :14[[07M?!14]]4 10 02https://esolangs.org/w/index.php?diff=62341&oldid=62340 5* 03Mipinggfxgbtftybfhfyhfn 5* (+1) 10/* Commands */ > 1558207527 679517 PRIVMSG #esoteric :14[[07M?!14]]4 10 02https://esolangs.org/w/index.php?diff=62342&oldid=62341 5* 03Mipinggfxgbtftybfhfyhfn 5* (+5) 10/* Commands */ > 1558207638 380281 PRIVMSG #esoteric :14[[07M?!14]]4 10 02https://esolangs.org/w/index.php?diff=62343&oldid=62342 5* 03Mipinggfxgbtftybfhfyhfn 5* (+60) 10 > 1558207654 464872 PRIVMSG #esoteric :14[[07M?!14]]4 10 02https://esolangs.org/w/index.php?diff=62344&oldid=62343 5* 03Mipinggfxgbtftybfhfyhfn 5* (-1) 10 < 1558207682 960911 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I am starting to implement the IHAVE command in sqlnetnews now. > 1558207731 476315 PRIVMSG #esoteric :14[[07M?!14]]4 10 02https://esolangs.org/w/index.php?diff=62345&oldid=62344 5* 03Mipinggfxgbtftybfhfyhfn 5* (+0) 10 > 1558207745 538388 PRIVMSG #esoteric :14[[07M?!14]]4 10 02https://esolangs.org/w/index.php?diff=62346&oldid=62345 5* 03Mipinggfxgbtftybfhfyhfn 5* (+1) 10 < 1558207749 60659 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Ping timeout: 258 seconds < 1558207868 43844 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :And then I can add SUBSCRIBE and UNSUBSCRIBE commands, and a separate program "sqlsubnews" that, when run (probably by anacron), will send messages to the subscribers. > 1558208294 486838 PRIVMSG #esoteric :14[[07Shark14]]4 10 02https://esolangs.org/w/index.php?diff=62347&oldid=62338 5* 03Madk 5* (+76) 10Add cat example program > 1558208306 939025 PRIVMSG #esoteric :14[[07Shark14]]4 M10 02https://esolangs.org/w/index.php?diff=62348&oldid=62347 5* 03Madk 5* (+1) 10Fix formatting > 1558208349 112796 PRIVMSG #esoteric :14[[07Shark14]]4 M10 02https://esolangs.org/w/index.php?diff=62349&oldid=62348 5* 03Madk 5* (-3) 10Remove unneeded terminate instruction at the end of most examples < 1558210936 544711 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric < 1558212746 773431 :atslash!~atslash@static.231.107.9.5.clients.your-server.de QUIT :Quit: This computer has gone to sleep < 1558213083 207439 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 248 seconds < 1558213168 918396 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558214567 242455 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558214760 954326 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 258 seconds < 1558214845 211479 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 246 seconds < 1558214860 274918 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558215644 662749 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :Is there a way to create a total programming language so that the termination requirement is "written into the syntax", instead of requiring some sort of separate checker? < 1558215770 700992 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :yes < 1558215776 923066 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :for example you can require that loop bounds are always literals < 1558215788 631945 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :or not have looping at all < 1558215809 947163 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :what about when using recursion? < 1558216041 483964 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :In Godel,Escher,Bach they describe a program language "BlooP" which requires the loop count to be specified at the top of the loop; it can be calculated but is set when the loop starts. Recursion is also prohibited. < 1558216077 226260 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :yes < 1558216083 29425 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :iirc one of their languages corresponds to primitive recursion < 1558216137 794134 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :rdococ: languages like Coq and Agda the terminatio check is based on the algebraic data syntax < 1558216156 529074 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :for data types it's a reqirement that you pattern match off at least one layer of constructor before you call recursively < 1558216164 281383 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :so f (Foo x) = ... f x ... is fine < 1558216169 372960 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :but f x = ... f x ... is not < 1558216179 327814 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :for codata / coinductive functions it's the opposite < 1558216192 114982 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :each recursive call must be buried inside at least one constructor < 1558216198 725270 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :g x = ... Foo (g x) ... < 1558216216 218083 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :this guarantees that a consumer of g can resolve any pattern match in finite time < 1558216233 24428 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :case g x of Foo y => ... < 1558216238 949104 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :will only have to call g once < 1558216271 917618 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :this allows you to have infinite data structures (really codata structures) without infinite loops < 1558216284 882679 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :hmmm < 1558216290 931669 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :repeat x = Cons x (repeat x) < 1558216403 992303 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :rdococ: note that the termination check for recursive functions allows you to get away with putting a numerical bound on general recursion < 1558216417 343664 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :by way of peano arithmetic < 1558216465 128376 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :f (Succ limit) x = ... f limit x ... < 1558216477 443647 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :the implementation will see that 'limit' is decreasing, even if x isn't < 1558216504 166880 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :what about f (Foo x) = ... f (Foo x) ...? < 1558216506 481108 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :of course, it needs to know that the peano number type is data and not codata! < 1558216523 180370 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :this distincti is very important in total langs < 1558216532 346300 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :unlike, say, Haskell, where everything is codata < 1558216537 864473 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :rdococ: not allowed < 1558216555 170204 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :if you try to use regular recursion on codata then it would not terminate < 1558216561 777871 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :(if the codata is infinite) < 1558216589 772752 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I think the rule is that the argument in the recursive call has to be a strict sub-expression of the parameter, for at least oe parameter < 1558216592 858492 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :one* < 1558216594 181280 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :yeah < 1558216603 824014 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :so you're only allowed to do that if you return codata and comply with the codata rule < 1558216616 333176 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :for example map on a codata list < 1558216620 7297 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :in haskell everything is some bizarre mix of data/codata < 1558216630 16600 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :non-strictness is kind of scow < 1558216636 979494 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :map f Nil = Nil; map f (Cons x xs) = Cons (f x) (map f xs) < 1558216671 166893 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :(in fact you could define a type for infinite lists *only* that has no Nil) < 1558216673 631048 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :this is ok even though you are recursing on an infinite codata structure < 1558216680 150049 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :because you are also producing constructors at every step < 1558216701 637176 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :shachaf: I suppose so < 1558216704 95883 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :in what sense is it data < 1558216716 576681 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :i mean that the least and greatest fixed points are equal < 1558216723 522091 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :hm < 1558216742 225246 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :so you can "fold codata" which doesn't terminate, i guess? < 1558217052 610346 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :but it still feels like rejecting f x = ... f x ... is arbitrary. is there a way to make it feel "non-arbitrary"? < 1558217076 920783 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I don't know what you mean by arbitrary < 1558217079 361343 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :it proves termination < 1558217085 433258 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :obviously, f x = f x would not terminate < 1558217097 366175 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :x has to change at each step and it needs to change in a way that the implementation can verify < 1558217101 477625 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1558217105 569624 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :so the most straightforward rule is that it has to "shrink" in some sense < 1558217114 86830 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :a number counting down to zero, or a tree shrinking < 1558217119 401898 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :(which are actually the same if you use peano numbers) < 1558217132 776877 :rdococ!rdococ@unaffiliated/rdococ PRIVMSG #esoteric :is there a syntax that would enforce this rule without requiring explicit verification? < 1558217148 374065 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :not sure < 1558217154 611006 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :it already feels pretty syntactic to me < 1558217181 421982 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :perhaps you could designate the recursive call at the site of the formal parameter < 1558217189 697766 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :f (Cons @x) = ... recurse ... < 1558217207 273195 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :meaning f (Cons x) = ... f x ... < 1558217214 84647 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :'recurse' keyword means 'call self with arguments designated by @' < 1558217220 33333 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :seems awkward and pointless though < 1558217221 260555 :arseniiv!~arseniiv@145.255.0.230 QUIT :Ping timeout: 255 seconds < 1558217229 493057 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :you could also add an implicit counter to *every* function < 1558217251 131605 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I kind of wish recursion depth was bounded in a language like C. < 1558217262 241203 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :there are verification tools which can enforce that < 1558217265 88087 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :for embedded systems < 1558217265 927252 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So you could know the maximum stack size statically. < 1558217269 831012 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :you can prove-- yeah, that < 1558217275 259128 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 255 seconds < 1558217285 681929 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I also want to be able to use this value at compile-time to allocate "stacks" of the right size. < 1558218345 381865 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Golly. Instead of writing all this C code I should write a compiler for a language that's 50% better than C. < 1558218350 6265 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :That can't be too hard. < 1558218623 476020 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Possibly can be a superset of C with some additonal commands so that it can be compiled into a C code, could be one possibility to do. < 1558218662 434830 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :(However, such thing would presumably need to be inserted after the preprocessor; I am not sure how to insert extra steps after the preprocessor in GCC) < 1558218727 138553 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I don't see enough of a benefit to C compatibility. < 1558218810 787207 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Mainly it seem to me that it might be easier to write without missing stuff in such a case, but maybe not. If you are managing to make all of the stuff by yourself though, then a C compatibility is not needed; you can compile it directly to LLVM or whatever < 1558218845 680805 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Or maybe I should use Zig. I guess it's the best candidate right now. < 1558219494 369476 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :what's zig like < 1558219514 506192 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :https://ziglang.org/documentation/master/ < 1558219523 186212 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :um < 1558219526 435212 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I don't need to read a document < 1558219526 495234 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :they seem to have pretty reasonable taste? < 1558219529 562107 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :i haven't used it < 1558219541 453922 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :but often i look at some individual thing and it seems reasonable < 1558219543 146452 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :how's it compare to rust < 1558219601 711167 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :no borrow checking < 1558219705 499041 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ok < 1558219856 483933 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I thought before of making something too, which exposes all features of LLVM (including @llvm.compiler.used), some of which would be done in system-dependent include files, and also powerful macros. < 1558220208 943087 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Remote host closed the connection < 1558220915 154729 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Some things in LLVM is good such as, you can use the carry of an addition, and you can specify various kind of metadata for use with optimization and other stuff, and exception handling, and bit manipulation, and appending linkage (which unfortunately is only usable for some special variables), etc. < 1558221007 37032 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :But also some things isn't very good, such as there is no version of @llvm.experimental.widenable.condition() for types other than i1. (Also, for use appending linkage and some other features, one thing to do could be to support a ".llvmo" file format, which you can combine into one ".o" file.) < 1558221227 932224 :AnotherTest!~turingcom@d51a4b8e1.access.telenet.be JOIN :#esoteric < 1558221494 939420 :AnotherTest!~turingcom@d51a4b8e1.access.telenet.be QUIT :Ping timeout: 246 seconds < 1558221598 70686 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :kmc: what language should i use < 1558221616 339706 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :don't know don't care < 1558221708 344697 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :hatters gonna hat < 1558222034 279078 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 JOIN :#esoteric < 1558222299 230040 :tromp!~tromp@2a02:a210:1585:3200:6459:b2fb:d850:59b8 QUIT :Ping timeout: 248 seconds < 1558223135 197520 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1558223178 909556 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 258 seconds < 1558223281 153617 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life