< 1572742340 561862 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Ping timeout: 276 seconds < 1572742607 52544 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :a personal God quaquaquaqua with white beard quaquaquaqua outside time without extension < 1572742891 124290 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :whatwhatwhatwhat < 1572742900 104699 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: fungot has got you? < 1572742900 221963 :fungot!~fungot@unaffiliated/fizzie/bot/fungot PRIVMSG #esoteric :int-e: come here, my snuggly green cutie-pie! a little you value those of your own. < 1572742909 637502 :int-e!~noone@int-e.eu PRIVMSG #esoteric :good one < 1572742911 950862 :int-e!~noone@int-e.eu PRIVMSG #esoteric :^style < 1572742911 987124 :fungot!~fungot@unaffiliated/fizzie/bot/fungot PRIVMSG #esoteric :Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots* pa qwantz sms speeches ss wp ukparl youtube < 1572742921 474595 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(despite the source ;-) ) < 1572742957 843808 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: The problem is I had to wake up early so I only got three hours of sleep last night. < 1572743977 142255 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu PRIVMSG #esoteric :shachaf: is the white beard outside all four simultaneous sides of time? < 1572744070 363779 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu PRIVMSG #esoteric :`? time cube < 1572744071 501382 :HackEso!~h@unaffiliated/fizzie/bot/hackeso PRIVMSG #esoteric :EARTH HAS 4 CORNER SIMULTANEOUS 4-DAY TIME CUBE IN ONLY 24 HOUR ROTATION. 4 CORNER DAYS, CUBES 4 QUAD EARTH. Bible A Lie & Word Is Lies. Navel Connects 4 Corner 4s. God Is Born Of A Mother - She Left Belly B. Signature. Your dirty lying teachers use only the midnight to midnight 1 day (ignoring 3 other days) Time to not foul (already wrong) bible time. Lie that corrupts earth you educated stupid fools. < 1572744466 262370 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite < 1572744686 532635 :nyeto!~NYETO@c-68-33-90-156.hsd1.md.comcast.net JOIN :#esoteric < 1572745019 548482 :nyeto!~NYETO@c-68-33-90-156.hsd1.md.comcast.net PART :#esoteric < 1572745226 572169 :imode!~linear@unaffiliated/imode QUIT :Ping timeout: 276 seconds > 1572749035 984411 PRIVMSG #esoteric :14[[07Metatape14]]4 10 02https://esolangs.org/w/index.php?diff=66934&oldid=66920 5* 03HactarCE 5* (+583) 10Added BCT emulator > 1572749067 444498 PRIVMSG #esoteric :14[[07Metatape14]]4 M10 02https://esolangs.org/w/index.php?diff=66935&oldid=66934 5* 03HactarCE 5* (+0) 10Capitalize "Bitwise Cyclic Tag" to fix link > 1572749157 404462 PRIVMSG #esoteric :14[[07Metatape14]]4 M10 02https://esolangs.org/w/index.php?diff=66936&oldid=66935 5* 03HactarCE 5* (+0) 10Change line wrapping in BCT emulator to be more A E S T H E T I C < 1572749943 81616 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1572756097 31510 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net JOIN :#esoteric < 1572766037 129968 :imode!~linear@unaffiliated/imode QUIT :Ping timeout: 240 seconds < 1572767902 145041 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric > 1572770104 452935 PRIVMSG #esoteric :14[[07Flurry14]]4 N10 02https://esolangs.org/w/index.php?oldid=66937 5* 03Challenger5 5* (+1840) 10Created page with "Flurry is a strict functional programming language created by [[User:Challenger5]] and inspired by [[Brain-Flak]]. The main difference in execution model is that there is only..." > 1572770135 469840 PRIVMSG #esoteric :14[[07User:Challenger514]]4 10 02https://esolangs.org/w/index.php?diff=66938&oldid=57258 5* 03Challenger5 5* (+54) 10 < 1572771728 252193 :heroux_!sandroco@gateway/shell/insomnia247/x-itidsuowxwwxardd JOIN :#esoteric < 1572771746 597903 :myname!~myname@ks300980.kimsufi.com QUIT :Ping timeout: 276 seconds < 1572771758 874186 :myname!~myname@ks300980.kimsufi.com JOIN :#esoteric < 1572771779 235138 :heroux!sandroco@gateway/shell/insomnia247/x-ucgyyoiwshjqfxhi QUIT :Remote host closed the connection < 1572771783 312882 :heroux_!sandroco@gateway/shell/insomnia247/x-itidsuowxwwxardd NICK :heroux < 1572774297 847682 :Sgeo!~Sgeo@ool-18b982ad.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1572774324 924565 :Sgeo!~Sgeo@ool-18b982ad.dyn.optonline.net JOIN :#esoteric < 1572777906 870628 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru JOIN :#esoteric < 1572779959 894035 :atslash!~atslash@static.231.107.9.5.clients.your-server.de QUIT :Quit: This computer has gone to sleep > 1572781476 514808 PRIVMSG #esoteric :14[[07Pac14]]4 N10 02https://esolangs.org/w/index.php?oldid=66939 5* 03CMinusMinus 5* (+389) 10Created page with "'''PAC''' is an esoteric programming language, created by [[User:CMinusMinus]], consisting of "point and click adventure" commands. {| class="wikitable" |- ! Command !! Acti..." < 1572782426 928181 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru QUIT :Ping timeout: 240 seconds < 1572783411 643963 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1572784135 246923 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu PRIVMSG #esoteric :is there a tetris game for keyboard where there are ten buttons in a row that set the horizontal positions of the piece directly, and doubled four buttons to set its orientation? I wonder if you could play that faster than tetris games with traditional controls < 1572785884 946149 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru JOIN :#esoteric < 1572786105 841464 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos JOIN :#esoteric < 1572786325 596510 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Read error: Connection reset by peer < 1572787448 542370 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos QUIT :Ping timeout: 260 seconds < 1572788285 441879 :xkapastel!uid17782@gateway/web/irccloud.com/x-mxlgdixgcrkgrvap JOIN :#esoteric < 1572788391 669558 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos JOIN :#esoteric < 1572789209 33759 :kritixil1thos!~kritixili@gateway/tor-sasl/kritixilithos JOIN :#esoteric > 1572790245 307617 PRIVMSG #esoteric :14[[07Turi14]]4 10 02https://esolangs.org/w/index.php?diff=66940&oldid=57328 5* 03Osmarks 5* (-7) 10 > 1572790342 706882 PRIVMSG #esoteric :14[[07Turi14]]4 10 02https://esolangs.org/w/index.php?diff=66941&oldid=66940 5* 03Osmarks 5* (+23) 10 > 1572790388 733669 PRIVMSG #esoteric :14[[07Turi14]]4 10 02https://esolangs.org/w/index.php?diff=66942&oldid=66941 5* 03Osmarks 5* (+1) 10 < 1572794546 980863 :atslash!~atslash@46.188.0.82 JOIN :#esoteric < 1572794823 954423 :atslash!~atslash@46.188.0.82 QUIT :Ping timeout: 264 seconds < 1572795723 943622 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru QUIT :Ping timeout: 264 seconds < 1572795965 736361 :kritixil1thos!~kritixili@gateway/tor-sasl/kritixilithos QUIT :Quit: leaving < 1572796647 997553 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos QUIT :Quit: leaving < 1572796818 219177 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net QUIT :Quit: leaving < 1572797248 968406 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru JOIN :#esoteric < 1572798167 644378 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1572800072 368857 :cabat!~Fede_26@93-35-162-67.ip55.fastwebnet.it JOIN :#esoteric < 1572802054 924926 :xkapastel!uid17782@gateway/web/irccloud.com/x-mxlgdixgcrkgrvap QUIT :Quit: Connection closed for inactivity < 1572805877 542304 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos JOIN :#esoteric < 1572806885 304706 :kspalaiologos!~kspalaiol@176.221.122.71 JOIN :#esoteric < 1572807173 254865 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos QUIT :Remote host closed the connection < 1572807286 646645 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos JOIN :#esoteric < 1572807299 763372 :cabat!~Fede_26@93-35-162-67.ip55.fastwebnet.it QUIT :Ping timeout: 268 seconds < 1572807451 67481 :cabat!~Fede_26@93-35-162-67.ip55.fastwebnet.it JOIN :#esoteric < 1572807570 106531 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos PRIVMSG #esoteric :is a 2-counter machine where all the commands are ordered, eg after the execution of ADD, the instruction right below it is executed next, [specifically ADD(r) instead of ADD(r,c) and JZSUB(r,c) instead of JZSUB(r,c1,c2)], still TC? < 1572807611 578508 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :ACTION head explodes < 1572807619 213341 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :what's r, what's c < 1572807630 606723 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :jzsub <- jump if sub is zero? < 1572807641 67862 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(subtraction result) < 1572807705 287368 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos PRIVMSG #esoteric :whoops should be INC and JZDEC, jzdec is jump if zero else decrement, r is register and c is command < 1572807747 286670 :cabat!~Fede_26@93-35-162-67.ip55.fastwebnet.it QUIT :Ping timeout: 265 seconds < 1572807798 905571 :cabat!~Fede_26@93-36-25-141.ip58.fastwebnet.it JOIN :#esoteric < 1572807844 17376 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos PRIVMSG #esoteric :because the wikipedia article on counter machine gives the instruction set as "{ INC ( r, z ), JZDEC ( r, ztrue, zfalse) }", but the esolangs article (in words) seems to imply INC(r) and JZDEC(r,c) but I can't tell < 1572808004 470401 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I don't think so, no. < 1572808145 741803 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :oh, nevermind, that's absolutely TC. < 1572808180 546483 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if by JZSUB(r, c) you mean "jump to c, otherwise jump to ip+1" > 1572808252 950800 PRIVMSG #esoteric :14[[07User:CMinusMinus14]]4 10 02https://esolangs.org/w/index.php?diff=66943&oldid=66933 5* 03CMinusMinus 5* (+8) 10 > 1572808259 498481 PRIVMSG #esoteric :14[[07User:CMinusMinus14]]4 10 02https://esolangs.org/w/index.php?diff=66944&oldid=66943 5* 03CMinusMinus 5* (+1) 10 < 1572808352 718593 :cabat!~Fede_26@93-36-25-141.ip58.fastwebnet.it QUIT :Read error: Connection reset by peer < 1572808454 7775 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :that's how most assembly languages work. > 1572809078 811905 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66945&oldid=66939 5* 03CMinusMinus 5* (+711) 10 > 1572809164 966437 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66946&oldid=66945 5* 03CMinusMinus 5* (+7) 10 > 1572809232 478931 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66947&oldid=66946 5* 03CMinusMinus 5* (+54) 10 < 1572809600 942227 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos PRIVMSG #esoteric :imode: yes < 1572809654 507229 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos PRIVMSG #esoteric :okay thanks, I'll try to figure out the details myself < 1572809712 143562 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode what do you think of code vs spec < 1572809737 32558 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :some say they are one in the same. Typically, I think this way, but as I think about it, it seems very wrong way to think. < 1572809742 350776 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :code is based on a shit ton of assumptions < 1572809748 143422 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :because of the underlying impl < 1572809755 962446 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :spec is just english > 1572810150 408260 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66948&oldid=66947 5* 03CMinusMinus 5* (+59) 10 > 1572810183 246783 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66949&oldid=66948 5* 03CMinusMinus 5* (+17) 10 > 1572810254 410916 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66950&oldid=66949 5* 03CMinusMinus 5* (-12) 10 < 1572810647 81649 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :lf94: code vs. spec? in an ideal world, they'd be one and the same. < 1572810670 862763 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :how can you say that though, when code depends on an underlying implementation? < 1572810679 951692 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :1 = 1 can mean anything in code. < 1572810685 326184 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :define underlying implementation. you obviously have a case in mind. < 1572810695 873970 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :so like < 1572810702 61229 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :if we used C to define a spec < 1572810718 927428 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :it wouldn't be good, because C has undefined behavior, thus the spec has undefined behavior... < 1572810727 760360 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :plus the semantics can change based on the variant of C < 1572810732 788945 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos QUIT :Quit: leaving < 1572810744 728835 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :at least when you write in english, it is direct < 1572810757 648877 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :that's not how that works. just because C's standard contains undefined behavior doesn't mean the specification (reference implementation, if you will) has undefined behavior. < 1572810776 383448 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :just because english has the capability to be ambiguous does not mean a specification written in english is ambiguous. < 1572810790 281372 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :right, we can be very specific and unambigious < 1572810794 482183 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :but with C it really depends < 1572810798 644592 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it really doesn't. < 1572810811 51612 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :can you think of a way to prove yourself wrong? < 1572810818 815782 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :can you provide proof of your statements? < 1572810835 803222 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :or even what you mean by "spec" vs "code". < 1572810859 155850 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :ACTION thinks < 1572810862 485329 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :because you have definitions that are loosely defind between people. < 1572810870 566914 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(I am asking for you to try and break your argument against me, yourself btw XD) < 1572810890 382298 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what is my argument, exactly. < 1572810898 310680 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :spec and code are the same < 1572810900 565743 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :or can be < 1572810902 431468 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :er < 1572810910 655945 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :spec and code can be equally specific, or non-ambigious < 1572810931 387305 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :In the context of C I guess < 1572810932 288241 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it's interesting that you built that up from "in an ideal world, they'd be one and the same". < 1572810947 717334 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :If we use something like Coq - ok, then yes, I 100% agree < 1572810961 493201 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :But Coq is also like writing with your teeth < 1572810978 476814 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :how about you define "spec" and "code" for me. < 1572811005 263072 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :A specification describes what should be done, how it should be done < 1572811017 56249 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :congratulations, that's suddenly most codebases. < 1572811020 341971 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Code that implements a specification is like building the machine < 1572811023 928352 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if not all of them. no, actually, all of them. < 1572811036 704196 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I know what you are saying... < 1572811039 317081 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :"what should be done" "how it should be done". < 1572811050 361539 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :unless you give those things definition they mean nothing. < 1572811053 200327 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :"place the number 2 into the register a" < 1572811059 132976 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :how do you specify this in C? < 1572811086 956396 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :A spec is a blueprint < 1572811087 303987 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it depends. what is register A, what does "place the number 2" mean, what does "place X into Y" mean, etc. < 1572811096 179997 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Code is the manifestation < 1572811119 892477 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Maybe that's the power of a spec imode < 1572811122 377049 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :your thoughts lack actual definitions to anything you're stating. < 1572811125 59877 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :It can leave some ambigiuity... > 1572811125 468787 PRIVMSG #esoteric :14[[07Chess14]]4 10 02https://esolangs.org/w/index.php?diff=66951&oldid=23198 5* 03CMinusMinus 5* (+8) 10 < 1572811127 869343 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so. < 1572811130 282857 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :no. < 1572811146 8982 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :specifications are intended to be as unambiguous as possible. otherwise they're just "rough guidelines". < 1572811150 984666 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1572811164 70479 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if I hand you a specification I do not expect you to take liberties unless as directed. < 1572811170 745449 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :this is a human process. < 1572811182 467405 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :A lot of specs do not paint a full picture though < 1572811195 982651 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :vs code, which is the whole picture as you build it < 1572811210 806880 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :read the last part of the second to last message I sent. < 1572811225 490643 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :> lack of definitions < because I'm exploring the semantics of these lol, sorry... < 1572811226 539804 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it's the same case for "implementation defined" behavior within C. < 1572811227 105167 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : :1:6: error: parse error on input ‘of’ < 1572811235 272506 :kspalaiologos!~kspalaiol@176.221.122.71 QUIT :Quit: Leaving < 1572811235 346797 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :no, you're just babbling. < 1572811241 317016 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :yes < 1572811242 59950 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :there's a difference. < 1572811244 448454 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :what's wrong with that < 1572811271 889681 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :don't paint "babbling" as "exploration", because nothing of what you say has any substance. what is "code" vs. a "specification". if we don't have definitions we can't have a conversation. < 1572811289 886579 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :hm now i'm hitting that logs not loading bug < 1572811316 46087 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode: sorry to upset you. I will stop talking now. < 1572811330 394545 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it's not upsetting, I've just asked for some definitions. :P < 1572811352 661671 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I don't know what the definitions are - that's basically what I'm trying to figure out... < 1572811365 952072 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :start with a working definition and then tear it to bits. < 1572811376 468950 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :if spec and code can accomplish the same things, they are essentially the same, except one can do work right away < 1572811393 140266 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :for instance, a specification is a set of rules governing what a conforming example of an instance of that specification should follow. < 1572811408 368235 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :or do. < 1572811432 318375 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :code is commonly defined as encoded instructions intended to be consumed by a computer or a piece of software. < 1572811446 91882 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if you ask if these two can be the same, you have to say "what does it mean for them to be the same or different". < 1572811455 608076 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :they're different definitions. how can you construe them to be the same. < 1572811484 654252 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :code is a collection of instructions to be carried out by a computer < 1572811488 344716 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :paradoxically, the difference is that a specification can leave some details unspecified < 1572811493 748892 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :spec is a collection of instructions to be carried out by a human < 1572811509 929049 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :oerjan: I said this, but imode shot it down fast :) < 1572811516 772396 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :oerjan: I can leave a lot of details unspecified in code, though. such as how something is actually done. < 1572811527 579657 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :of course that's pretty shallow considering you can always find out what's done commonly. < 1572811543 835907 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :The main semantic difference I see is one is read by computers and the other a human < 1572811551 483352 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :code is commonly read by humans. < 1572811565 791044 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :in fact it's the foundation of a couple million careers. :P < 1572811631 838539 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :sad, miserable careers, but careers nevertheless < 1572811655 575870 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :If I write a spec in C, I have to understand C and english < 1572811665 792723 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :you just have to understand C, actually. < 1572811667 106388 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :and I write a spec in English, I just have to understand English < 1572811675 157775 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Also English is going to be around for at least 100 years < 1572811697 50193 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION thinks of Z, although he doesn't know much about it < 1572811701 481211 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I don't get where "I have to understand C and English" comes from. you just have to understand C to read a spec written in C. < 1572811701 598296 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode: a lot of C code uses English in comments and variables < 1572811721 610947 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :lf94: tell that to C programmers who don't use english comments and variable names. < 1572811733 8138 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :a lot of C...not all < 1572811735 232585 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :of which there are many in my personal circles. < 1572811748 492646 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I'm sure you've seen C written in an APL-like style < 1572811754 44899 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I'm definitely not talking about that. < 1572811759 204281 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :nor am I. < 1572811770 893171 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Also, Plan 9 style C sucks too < 1572811809 743416 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if I specify a virtual machine in C, and I declare that this implementation of a virtual machine is "the specification of this machine", then you should be able to take it as the specification of that machine. < 1572811811 432920 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :https://en.wikipedia.org/wiki/Z_notation < 1572811828 509488 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :substitute C for your language of choice. < 1572811865 216003 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :put it to you this way: if I was handed two text files, how could I tell which one is a specification. < 1572811888 128657 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :then you should be able to take it as the specification of that machine => reference implementation, yeah < 1572811888 463429 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Right...by whoever tells you... < 1572811889 976502 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :Z is good. TLA+ is good. < 1572811922 26794 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :The nice thing about an English spec though is that it's tech agnostic < 1572811924 527580 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :arseniiv: pretty much what I'm getting to. < 1572811927 541611 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :lf94: oh really? < 1572811941 174885 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what does that have to do with technical specifications written in it? < 1572811972 271070 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Because you don't need to depend now on things with their own specs < 1572811982 383238 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :spec rabbit hole < 1572811993 552145 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :you have to introduce new terms, some of which you may have imported from other piece of literature, which may depend on other pieces... < 1572812012 44365 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :just because you have adopted a vocabulary does not mean there's not a chain of documents that defined that vocabulary. < 1572812023 216172 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :I like taking math examples when I think about interfaces or specs or something, though I don’t know a way to define loose spec following in general < 1572812028 515910 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :There is some research project in this discussion. :p < 1572812057 319609 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :for example, a field; field axioms are an interface, or a spec, and concrete fields are its implementations < 1572812058 678141 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :lf94: here's a challenge. I hand you two text files, you build me a decider to determine which one's the specification. < 1572812069 971257 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :undecidable obviously < 1572812074 586893 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :it's whatever you tell me is < 1572812075 686610 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :(field axioms + the language) < 1572812079 30177 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :correct. so why are you trying to approximate it. < 1572812094 369180 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :right < 1572812096 936535 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :you are confusing a technical issue with a human one. < 1572812099 215907 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :so I guess now the conversation changes < 1572812104 746822 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :are english or code specs better? < 1572812118 579024 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :define better. < 1572812124 768389 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :and why do we have to have a "better". < 1572812132 576086 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :good point < 1572812148 641011 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :an underspecified specification can exist regardless of language. < 1572812158 16107 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :a nonconforming implementation can exist regardless of language. < 1572812171 212233 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :are english or code specs better for long term archival of instructions to build something? < 1572812207 727417 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :but if we have, say, a finite field? this is too not a concrete thing, it could be another spec, but it clearly “implements” a field spec < 1572812216 306573 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :1. why archival. 2. can you expect humans to be able to read either language in 10,000 years? 3. is the result even runnable in 10,000 years? < 1572812276 83955 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I can have some paper tape containing the baudot encoded specification of a piece of software. it does not mean that 1. someone will be around to read it. 2. a machine is available to decode it. 3. a human will be around to read it. 4. hardware will be present to run the result. < 1572812340 911927 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :1 and 3 are different. 1 pertains to anything that has consciousness and the ability to read symbols. 3 pertains to humans and human languages specifically. < 1572812341 420204 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :"why archival" is like "why exist" < 1572812355 576942 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :archival so it can exist again, if it a useful tool. < 1572812368 210829 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :2. i definitely expect english to be read in 10,000 years. < 1572812377 931664 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what is so useful a tool that it cannot last through ages on its own. < 1572812394 922830 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :an obscure one :) < 1572812408 232694 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :we have not stopped using hammers. they are useful tools. I am not aware of an "archival grade hammer". < 1572812409 461500 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :what do you mean by 3 < 1572812430 388467 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :the spec of a hammer fits in your brain though < 1572812436 959794 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :literally one look at a hammer -> bam you have the spec < 1572812449 67729 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :aha, you've come across a clue. < 1572812460 975905 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :all code is logically complex though. < 1572812467 832178 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :that's an odd presumption. < 1572812468 964267 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :it's a big "problem" < 1572812477 215013 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :it's true < 1572812486 68356 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :have you ever written a piece of code that you could in good conscience throw away. < 1572812505 71906 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :all code I've written is basically "thrown away". < 1572812512 578724 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I think the only code that isn't worth throwing away is like, assembly < 1572812521 404205 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :a lot of code is written to be thrown away and then isn't < 1572812524 677908 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and just grows like a katamari < 1572812531 446092 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric : are english or code specs better for long term archival of instructions to build something? => as the other time, I’d suggest the examples are the king. If we have a language and many various means to illustrate its structure and semantics even just internally, some one could understand it. But not without many examples. E. g. what’s the sense of this language?: { ε, ac, bc, abcc, aabccc, abbccc, aabbcccc, … } — probably < 1572812531 545433 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :you’ll recognize what is that “…”, but if I showed you only { ac, bc }, would you be that sure? (hopefully no) < 1572812555 449641 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :concepts that last centuries are ones simple enough to be rediscovered at a glance by common humans. < 1572812586 46597 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :either as self-evident consequences of the universe we live in or as incredibly popular ideas that never fell out of following. < 1572812620 759046 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :so concepts mean more than specs? < 1572812634 985243 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :mean more / are more valuable < 1572812647 186568 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I would say that makes specs even more valuable < 1572812671 782449 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the concept of a turing machine has lasted a century in about 10 or more years. < 1572812689 804081 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :1936, iirc. < 1572812723 507529 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :but a turing machine has a spec < 1572812732 346138 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :a turing machine is a concept. it has a definition. < 1572812745 921258 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :a spec is a just a giant definition isnt it < 1572812751 260057 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :why giant? < 1572812761 809210 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :a definition is usually short, in the common sense < 1572812777 975239 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :"to be called a square, a rectangle's sides have to be equal in length." < 1572812783 883538 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :so concepts mean more than specs? => personally I’d say it depends. A concept may be pretty vague and work, which means there are noncanonical choices to be made to make it a complete spec but any of that choices would make a useful thing exchangeable with things resulted from other choices < 1572812804 924774 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I'd say that's a specification for a square. < 1572812807 96067 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :ok so let me ask this then < 1572812819 298790 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :for example should the tape of TM be infinite in all directions or just in one? < 1572812823 859180 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :would you rather write a spec in code, or in english, knowing it has to last the next 150 years? < 1572812830 723509 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :arseniiv: just one. as defined by turing. < 1572812866 905898 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I'd say code. because I have a runnable example of it. but why not _both_. < 1572812878 24352 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :You can do both of course < 1572812886 709598 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I have an english description of Mode, I have a Go description of Mode, I have a C description of Mode. < 1572812886 848673 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :More work :) < 1572812892 851224 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :imode: hm I should have picked another thing to illustrate my argument then < 1572812895 899104 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Having many descriptions is probably the best < 1572812905 720374 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if you wanna last years the key is redundancy. < 1572812911 36662 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if you wanna last centuries the key is virality. < 1572812940 770464 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :pretty aphoristic < 1572812944 743980 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :lol < 1572812982 180735 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :. o O ( if you wanna last millenia then no luck ) < 1572812992 300861 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Thank you imode for the discussion :) < 1572813010 144785 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :(hm there should be something closer to million years) < 1572813013 344426 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Based on this, I would build an English spec as a generalization of the thing I'm building < 1572813019 861207 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :np. if I had to offer a piece of advice, don't focus on building the monolith from 2001. build things that are so small they're universal and portable, then evangelize the fuck out of them. < 1572813026 829234 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the things you write are transient. the good bits are in them somewhere. < 1572813034 780827 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :So it would be specified as I build, since you encounter problems as you build < 1572813065 616846 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :That's a good idea you know < 1572813068 623841 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :"micro specs" > 1572813079 647059 PRIVMSG #esoteric :14[[07Pac14]]4 10 02https://esolangs.org/w/index.php?diff=66952&oldid=66950 5* 03JonoCode9374 5* (+1520) 10/* Links */ < 1572813088 217262 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :or specs so small they really are just definitions of many things < 1572813094 727701 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :OTOH gluing different standalone programs is the part I’m least comfortable with < 1572813108 892994 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if it's small enough you can throw it away and rewrite it from memory it's probably worth keeping. < 1572813343 843953 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :one has to eventually realize they're going to die eventually. and short of inscribing the details of their thoughts/software/language/etc on a chemically stable medium orbiting a planetary body with a stable orbit, the things you do have to carry on to the next generation, and the one after that... etc. < 1572813796 113941 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :lf94: question, what motivated your line of questioning? < 1572813902 357121 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :https://github.com/narenratan/jonesforth_arm64_apl this is nuts. < 1572814191 414662 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :lf94: didn't you say you wanted an APL-style language that maps neatly to assembly and has first-class functions and comprehension syntax? < 1572814456 659358 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :yeah < 1572814458 216227 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :is this it? < 1572814460 219657 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric ::D < 1572814503 717961 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode: what motivated me is writing software right now is a big mental hurdle because of human reasons < 1572814514 690810 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :i want to write things that last < 1572814524 149086 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what human reasons? < 1572814525 157965 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :the only lang I see this is true of is anything in C < 1572814547 907974 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I just cant get over that a lot of shit I write is just going to rot < 1572814577 49599 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what have you written? < 1572814779 418481 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Most of the stuff of value I've written in JS < 1572814813 462451 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what're the things you value? < 1572814819 96198 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :base64 over irc; steganographic program to hide text in text; a level viewer < 1572814833 528759 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :things that have actual use as tools < 1572814852 233988 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :https://github.com/lf94 < 1572815202 837975 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :and why will they rot? < 1572815244 266752 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :you seem to have written a good many useful things, I don't know why you think they'll "rot". < 1572815376 174883 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I dunno, I expect none of this to work after 20 years. < 1572815384 27191 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :_Maybe_ some Rust stuff. < 1572815392 877516 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :can you give me a justification as to why you think that. < 1572815421 787941 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the technology required to run the things you wrote isn't exactly uncommon. < 1572815429 432845 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :complex. but not uncommon. < 1572815452 237548 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :along with that, a lot of this is certainly transcribable to a new language. < 1572816196 936614 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :have kids, teach them to maintain your code. easy way. < 1572816307 366109 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I should build a Mode-to-WASM transpiler. < 1572816321 848127 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :cash in on the eventual hype. < 1572817241 568886 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs JOIN :#esoteric < 1572817244 144870 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :hi < 1572817490 698179 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :hi. < 1572817500 259086 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :i have an eso idea < 1572817540 140127 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :is it on the wiki. < 1572817548 49118 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :no < 1572817561 436485 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :you have a 2d table with circles standing up -- wheels < 1572817566 577105 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :the wheels are divided into segments < 1572817581 943990 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :you can push a wheel and make it roll for a bit < 1572817594 406756 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :a wheel hitting a wheel perpendicular to itself will make it drop < 1572817609 236700 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :dropped wheels are useless < 1572817629 821851 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :two wheels must contact in specific ways to do stuff < 1572817729 653141 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 QUIT :*.net *.split < 1572817729 653194 :zemhill_________!bfjoust@selene.zem.fi QUIT :*.net *.split < 1572818047 615164 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 JOIN :#esoteric < 1572818047 615221 :zemhill_________!bfjoust@selene.zem.fi JOIN :#esoteric < 1572818972 404103 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode the hype has come and gone < 1572818977 362908 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :around wasm < 1572819179 851770 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I could probably just generate assembly using Mode at this point... < 1572819228 578446 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :maybe I should toy with that over the week. < 1572819309 173020 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :having multiple targets is going to be a little challenging. I guess, anyway. the same forms are gonna be generated regardless of the architecture. < 1572819320 383643 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs PRIVMSG #esoteric :i like corewar < 1572819365 553087 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :dup drop swap last new zero one add subtract while repeat equal less < 1572819371 955618 :andrewtheircer!5d565177@93-86-81-119.dynamic.isp.telekom.rs QUIT :Remote host closed the connection < 1572819383 667932 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :process run halt < 1572819386 760509 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :16 commands. < 1572819387 243504 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :sounds like a good mantra < 1572819421 334999 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric ::.;$,01+-[]=<{}# < 1572819424 772993 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :once I had an avatar which depicted all reserved words of a language < 1572819463 401077 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :BTW I really like your idea with {} < 1572819472 361227 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :what does # do and where is `self`? < 1572819486 629872 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :# is 'self'. < 1572819504 443441 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :but it can also be 'halt', if you start each process as having its identifier in the queue. < 1572819532 360448 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :polymorphism of specifications < 1572819535 889945 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so 16 commands either way. 'halt' is unneeded: you can always phrase things so that termination is at the end. < 1572819555 189892 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :yeah, I'm trying to specify "core" vs. "extended" command sets. < 1572819562 37104 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I have a theory that ,1[] is all you need. < 1572819589 199722 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :seems too minimal < 1572819626 636212 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode target subleq < 1572819637 142342 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :one instruction set computer < 1572819655 85165 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :this is actually one of my goals < 1572819659 591966 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :when i make a lang < 1572819947 634727 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :I like that I liberated myself from μ-recursion when generalizing Minsky machine < 1572820246 16479 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :now maybe we need a good name for the operator < 1572820246 116086 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :x :: (as -> b) -> (as -> b -> b) -> (as -> c) -> (as -> b -> c) -> b < 1572820246 162461 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :x z s q f args = search (z args) where < 1572820246 162508 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric : search i = if f args i == q args then i else search (s args i) < 1572820318 10294 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :something like maybe < 1572820347 227301 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :existsOr < 1572820419 123492 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :Or do what the js community is doing, using ? < 1572820438 831227 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :object.prop?.inner?.innerinner? < 1572820444 85629 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :I meant -or as a suffix there :D < 1572820521 75030 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :there’s no or, if the value doesn’t occur in the range of `f args`, we loop forever < 1572820566 936443 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :findOrFail < 1572820568 325071 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :B) < 1572820579 331001 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :no, better: find-or-floop < 1572820583 242745 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(floop -> forever loop < 1572820584 397863 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :) < 1572820604 845870 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :this is one of the ways to add TC to a set of operations on several inductive types < 1572820622 326325 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :μ operator doesn’t generalize nicely < 1572820623 620846 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :add looping: turing complete, right? < 1572820635 500245 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :yeah, something like that < 1572820667 932401 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :when I generalized MM, I saw there were many noncanonical choices made < 1572820674 469144 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :I unmade them < 1572820706 133575 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :this had an effect so that I want to evangelize generalized MM somewhere :P < 1572820716 74071 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :lol < 1572820728 847845 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I'm not familiar with what MM is - is it that counting machine? < 1572820736 597272 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :yeah < 1572820739 811655 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :ah ok < 1572820753 87111 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I've really had subleq machine stuck in my head for the past week. < 1572820770 864195 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :actually kritixilithos had mentioned it earlier today, I mean not a generalized one < 1572820784 931235 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :it has only INC and JZDEC < 1572820802 197594 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :lf94: oh sorry I’m conflating two frameworks now < 1572820833 887621 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :when talking about that `x` operator, I talked about generalized recursive functions < 1572820847 387243 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :> generalize recursive functions < 1572820849 161102 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : error: < 1572820849 253655 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : • Variable not in scope: generalize :: t0 -> t1 -> t < 1572820849 253698 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : • Perhaps you meant ‘generate’ (imported from Lambdabot.Plugin.Haskell.E... < 1572820855 66924 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :what is that exactly < 1572820855 472372 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :> butts < 1572820856 977707 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : error: Variable not in scope: butts < 1572820859 450548 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :or is this just fancy talk < 1572820865 278015 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :@quote < 1572820865 324223 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Weyl says: In these days the angel of topology and the devil of abstract algebra fight for the soul of every individual discipline of mathematics. < 1572820866 964021 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :for a function that can iterate over any x < 1572820886 98315 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :map: [T] -> [Q] < 1572820891 611478 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :something like that < 1572820931 725502 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu PRIVMSG #esoteric :arseniiv: isn't that basically a pointer machine though? < 1572820938 589848 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :lf94: like simple recursive functions, which is a definition of computability for functions on N, but the generalized ones take on any finite set of algebraic types < 1572820964 442516 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :sorry all that went over my head < 1572820968 807290 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :b_jonas: which one, { INC, JZDEC }? < 1572820975 271346 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu PRIVMSG #esoteric :you know, one that has registers that point into algebraic structures allocated on the heap, can construct new algebraic structures with their fields filled from registers, test between variants, have arbitrary control < 1572820986 992388 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :> computability for functions on N < < 1572820989 117557 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : :1:36: error: < 1572820989 210211 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : parse error (possibly incorrect indentation or mismatched brackets) < 1572820990 617368 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu PRIVMSG #esoteric :arseniiv: the generalized Minsky Machines < 1572820997 461204 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :what does this really mean < 1572821003 252795 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :lf94: I’m to blame to, I conflated two things I had thoughts about and hadn’t even noticed it quickly < 1572821029 135879 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :"N" <- natural numbers? < 1572821029 957006 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :lf94: I’ll better give a link, wait a sec < 1572821032 622114 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :yeah < 1572821040 834717 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :ok what I said then sounds right < 1572821043 266201 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :as an example < 1572821049 871025 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :map: [T] -> [Q] < 1572821067 629354 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :loop: [T] -> ??? < 1572821073 409907 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :one of the formulations: https://en.wikipedia.org/wiki/%CE%9C-recursive_function < 1572821171 244361 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :though I like a variant I saw in Manin’s book on computability, it allows several results as well as arguments, adds function concatenation and makes some things more natural. Though I extended on it after all too :o < 1572821248 798534 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :b_jonas: yeah, if there is any exposition on those I’ll be glad if someone points me to it, I don’t want to claim anything already invented < 1572821264 765050 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :arseniiv: i'm still confused :v < 1572821276 905997 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :This stuff is written as if someone reading is reading it as a reference... < 1572821285 557077 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :lf94: sorry… < 1572821301 512398 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :right now I'm interpreting this as some peano number stuff < 1572821307 112941 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :I hope someone will find a better link. Hm < 1572821311 360703 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :so the numbers are defined via induction < 1572821314 19478 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :yeah it’s pretty close < 1572821324 957258 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :though here we already need them defined < 1572821325 307930 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :but I'm very confused about the goal here < 1572821334 255316 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :or the generalization < 1572821340 386908 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :is the generalization just saying, we can do more than numbers? < 1572821353 560003 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :the goal is to define all computable functions in that simple inductive manner < 1572821356 173748 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(natural numbers) < 1572821360 965639 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :ahhhhh < 1572821368 151045 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric : is the generalization just saying, we can do more than numbers? => yeah < 1572821392 333304 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :so we are saying generalized u-recursion is turing complete? < 1572821394 303529 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :because it can make any program? < 1572821396 334207 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :for example we can formulate it for binary strings, or natural numbers + lists of them < 1572821400 983186 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :er < 1572821410 29475 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :you know what i mean < 1572821418 421839 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :yeah yeah < 1572821431 195055 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :we can define any computable function :D < 1572821434 630891 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :with this < 1572821438 81683 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :very very cool < 1572821440 303968 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :yeah, it can, as the regular one is its instance < 1572821445 566660 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :(almost) < 1572821463 927294 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :(as I’m breaking with μ for x) < 1572821489 767786 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :but machines are prettier < 1572821510 794096 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :they don’t need to have extra stuff, only constructors and destructors < 1572821563 952333 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :constructors like INC and CLR which should be explicit when we generalize, and destructors like JZDEC, again it would become more complex unfortunately < 1572821576 121471 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :"machines are prettier", like lambda calc vs turing machine? < 1572821595 165921 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :in this case I’m on the side of λ < 1572821606 600715 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :but you said 'machines are prettier' < 1572821608 853765 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :TM is too complex compared with MM, for me < 1572821619 222643 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :I meant GMM :D < 1572821624 917476 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :oh < 1572821633 341943 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I like the simplicity of lambda < 1572821638 90761 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :something tells me that 01[] is suitable for turing completeness. < 1572821638 750013 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :but it's not for free < 1572821655 824279 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode: there is a actual competition to determine the smallest turing machine < 1572821656 189106 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :even with de Bruijn indices? < 1572821660 669843 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :symbols:states < 1572821665 597152 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I think the smallest is 2:3 or something < 1572821673 990072 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :arseniiv: those are the best :) < 1572821676 598 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :don't see how that's relevant. < 1572821689 652460 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode: because you can verify if having 4 symbols is enough. < 1572821697 847912 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :not really, no. < 1572821705 281635 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :not without actually, y'know, doing it. < 1572821710 738948 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :but imode’s machine is the other sort of machine < 1572821712 177118 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :I mean I guess 1 symbol is enough < 1572821714 830419 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(See: iota) < 1572821744 442766 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :0 enqueues a 0, 1 enqueues a 1, [ dequeues a symbol, and if it's 1, advances 1 instruction, otherwise it skips past the matching ]. < 1572821785 215845 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(I'm incorrectly mixing shit - sorry again) < 1572821803 136461 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :though I'm trying to figure out how to, for example, encode a 'not': something that detects a 1 and enqueues a 0, and detects a 0 and enqueues a 1. < 1572821818 589223 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :[0] would be the former. < 1572821840 870904 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :0[]1? < 1572821857 837971 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :mm < 1572821861 479568 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :"detects a 1" < 1572821864 882565 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :where does the input come from < 1572821867 260944 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :where does it go < 1572821874 478684 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :at the beginning? < 1572821884 386077 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :(input)(program) ? < 1572821885 770126 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it's a queue machine. read above. < 1572821903 209757 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if I do 0 I expect a 1 in the queue. < 1572821910 344793 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :if I do 1 I expect a 0 in the queue. < 1572821941 738336 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :you can say "if I dequeue a 1, then enqueue a 0." but you can't say "if I dequeue a 0, then enqueue a 1". < 1572821968 495902 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :[0] would take a 1 and spit out a zero. < 1572821971 293161 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :hm suddenly I remember a question. Once I thought up an extension to DFAs to make a bunch of those I worked on smaller: an “ε” transition which was run only if all others couldn’t, without consuming an input symbol. Since then I realized it’d be better to call that an else-transition, and the DFA an else-DFA, as it’s not like NFA/ε-NFA at all, and it translates to a DFA quite trivially. Now, does it have maybe a better-known < 1572821971 395856 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :name? < 1572821982 662367 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :actually it has to be [00] < 1572822004 514610 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :imode: but what about encoding anything past the closing ] < 1572822019 513075 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :maybe [00][10]? < 1572822031 587529 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :yes < 1572822035 230396 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :mm, no. < 1572822035 611451 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :nice < 1572822125 164889 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :0 [00]1[10] maybe? < 1572822139 838315 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :[0][1] ? but your "[ deques" comment is throwing me off < 1572822144 572582 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the first [00] consumes the enqueued value and does nothing. it then enqueues a 1. < 1572822145 573520 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :dequeue < 1572822153 405814 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :imode: are […] still the loopy brackets or something else? < 1572822157 883661 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :arseniiv: loopy, yeah. < 1572822176 813777 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :[ dequeues a value and, if it's a 1 symbol, enters the loop. < 1572822179 74623 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :otherwise it skips it. < 1572822179 256824 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :though I’m not clever atm anyway < 1572822222 974651 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :given we put 1 on stack: [0][1] -> 0[1] -> 0 < 1572822230 344346 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :it's not a stack. < 1572822234 952418 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :whoops, queue < 1572822254 329032 :lf94!~lf94@unaffiliated/lf94 PRIVMSG #esoteric :this is too brain bending :D < 1572822255 402350 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :given a 0, the first [00] consumes the enqueued value and does nothing. it then enqueues a 1, which fires the next loop, which enqueues a 1. < 1572822311 2699 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :should actually be [00]1[01] < 1572822415 912434 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :given a 1, it dequeues a 1, enqueues a 0, then enqueues a 1, which fires the loop, enqueues a 1, and then terminates.. < 1572822424 595760 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :yeah I don't think 01[] is a valid command set. hm. < 1572822454 749634 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I guess this would kind of fall under BF instruction minimization but for queue automata. < 1572822792 922985 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :hm... what about concurrency primitives? < 1572822929 662021 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the pi calculus is interesting, but I never worked out how it does loops. < 1572823033 801514 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :lööps < 1572823050 888015 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :brother < 1572823063 82387 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :imode: there's a 'replication' combinator written as !P < 1572823073 450085 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I'm unsure as to how it works. < 1572823112 573281 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :!P == !P | !P < 1572823126 142845 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :infinite forks, I guess? < 1572823126 394759 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :or P | !P rather < 1572823144 245775 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :in other words if P is blocking on a read, and gets one, then another P is immediately spawned < 1572823154 63909 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i had fun making this http://mainisusuallyafunction.blogspot.com/2011/09/lambda-to-pi.html < 1572823155 405426 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I see. < 1572823175 121553 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and it discusses this < 1572823181 270015 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :neat! I'm reading it now. < 1572823191 447756 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :though I'm not 100% sure I got it right < 1572823208 632640 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i'm proud of thinking up the compilation from lambda calculus myself < 1572823220 515656 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :there is a lot of esoprogramming-ish stuff on that blog if you enjoy that < 1572823237 334343 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :man, it's been a while < 1572823238 795592 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I'll bookmark and add to my reading list, thanks. < 1572823241 603475 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I wrote that article more than 8 years ago < 1572823246 140331 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I was a very different person in many ways < 1572823255 384122 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I've been wanting to build a concatenative version of a process calculus. < 1572823324 964983 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric : i had fun making this http://mainisusuallyafunction.blogspot.com/2011/09/lambda-to-pi.html => oh, interesting. Will read tomorrow! < 1572823343 790272 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :technically today but after some sleep < 1572823390 927227 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :"loop forever" < 1572823404 765772 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :how is looping expressed in your formulation of it, kmc? < 1572823405 121933 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :hm is there a typed π-calculus? < 1572823438 691658 :b_jonas!~x@catv-176-63-14-167.catv.broadband.hu QUIT :Remote host closed the connection < 1572823452 982664 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :imode: when a process blocks it forks an the parent returns < 1572823460 621347 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :if the parent is a replicate then it will respawn < 1572823463 279641 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i think that's how i did it < 1572823466 149635 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :like i said it's been 8 years < 1572823478 877674 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :ah, hehe. < 1572823572 980732 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru PRIVMSG #esoteric :bye all :P < 1572823587 257192 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :night arseniiv < 1572823595 938073 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :yeah from reading the code, that looks right < 1572823599 459441 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :run env (Rep p) = forever (run env p) < 1572823621 249196 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :arseniiv: there may be a typed version < 1572823626 769872 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :but in the most basic version there is only one type < 1572823628 489074 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :(channels) < 1572823632 279585 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so !x(y).0|`x<1>.0 < 1572823649 774302 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the left half of the fork would block. < 1572823651 895513 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :the only thing you can send through a channel is another channel < 1572823659 354721 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :ugh. < 1572823661 284389 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :right. < 1572823685 590189 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so how do you construct channels, then...? < 1572823695 19819 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :oh, right, that v syntax. < 1572823719 697827 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so !x(y).0|`(vy)x.0 < 1572823756 431945 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what does this mean? I intend it to mean "the first process will replicate itself for every request". < 1572823839 943856 :arseniiv!~arseniiv@95.105.4.44.dynamic.ufanet.ru QUIT :Ping timeout: 264 seconds < 1572824401 267977 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so that repeatedly forks. < 1572824405 239794 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :on the left. < 1572824564 672646 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :seems grossly unspecified.. < 1572824830 759659 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :the pi calculus seems to be an imperative calculus anyway. each of the statements can be seen as an instruction. < 1572824850 573402 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :so I doubt it'd be far off to use [] and {}. < 1572825299 588825 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :how in the world do you form an if statement in the pi calculus. o_O < 1572825345 43369 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :imode: first you need to decide on an encoding for bools < 1572825380 430467 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :what's a common one? < 1572825384 340238 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :it could for example be: recv x, recv y, recv z, send z to x if T or to y if F < 1572825386 43000 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i don't know < 1572825391 787923 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i haven't studied pi calculus much < 1572825397 749949 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :mm. < 1572825399 332719 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I pulled that out of my ass just now based on church numerals < 1572825402 739057 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :heh. < 1572825411 93609 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :slash church booleans < 1572825415 271588 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :I feel like you could eliminate []. < 1572825424 425764 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and indeed if you take church bools and run them through my lambda-to-pi thing then i think they'll work like that < 1572825447 437906 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :since i implement functions as a process that recieves arguments and a continuation channel and sends the result to the continuation channel < 1572825460 858730 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :mmm. < 1572825543 281261 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :T could be x(a).y(b).z(c).`z.P < 1572825557 829861 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :err. < 1572825577 275428 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :T could be x(a).y(b).z(c).`c.P < 1572825594 646184 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :and F could be x(a).y(b).z(c).`c.P