< 1216425754 0 :RedDak!n=dak@host57-86-dynamic.6-87-r.retail.telecomitalia.it JOIN :#esoteric < 1216427167 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ooooookloooooopolllllllll!!! :D < 1216427474 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1216428071 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION celebrates Irregular Webcomic's 2000th strip < 1216428112 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: It's "Irregular Webcomic!". < 1216428166 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :YOU BROKE MY CELEBRATION! MY VENGEANCE SHALL BE GRUESOME! < 1216428195 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :BUT, FULL OF EXCLAMATION MARKS! < 1216428213 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :surely it makes no sense to celebrate the 2000th strip of a comic called irregular < 1216428220 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :2000 is so regular! < 1216428233 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you should celebrate the 2031 strip. < 1216428252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well Irregular Webcomic! is one of the most regular webcomics out there < 1216428261 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ironic < 1216428312 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although i vaguely recall DMM hoping to pass Bill Watterson's Calvin and Hobbes score, which is surely more irregular < 1216428374 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :true geeks will also celebrate 2048, of course < 1216428402 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although they will not call it irregular either < 1216428716 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :http://www.irregularwebcomic.net/15.html < 1216428716 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :auuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuguuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuur < 1216428722 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you'dathought someone would have made it < 1216428743 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216428773 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well that was a long time ago. someone might want to recheck. < 1216428786 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not me, i don't read newsgroups any longer :( < 1216428805 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :http://www.irregularwebcomic.net/15.html < 1216428807 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :how poignant < 1216428809 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i checked < 1216428810 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't exist < 1216428821 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :how do you make a usenet group again < 1216428822 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :<.< < 1216428828 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, his website has its own forum (which, for some reason, i read) < 1216428835 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :when was that strip posted? < 1216428846 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oh i see < 1216428849 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :4 feb 03 < 1216428850 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :shame < 1216428862 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :itd be more poignant if it was posted in the last week < 1216428905 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well it cannot, since DMM is on the Infinite Plane of Death without computer access :D < 1216428907 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oooooooo < 1216428933 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :pardon, the Finite Plane of Death with Two Features < 1216428947 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i mean, am i the only one who thinks its ridiculous that half the ISPs in america are banning the alt hierarchy < 1216428948 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :?? < 1216428956 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(it used to the Infinite Featureless Plane of Death, but then the Mythbusters got onto it) < 1216428969 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*to be < 1216428993 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :HI EVERYBODY < 1216429016 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(er, i guess i'm spoiling a lot here) < 1216429047 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :HI OKLOBEING < 1216429103 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the alt hierarchy was always less distributed (when i read newsgroups) < 1216429120 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and more noisy < 1216429121 0 :tusho!unknown@unknown.invalid QUIT : < 1216429195 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and now the alt hierarchy is nonexistant < 1216429207 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse, none of it has to do with what they actually say its about < 1216429214 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :they wanted the alts shut down because of kiddie porn < 1216429237 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but you wanna bet its the MPAA's hand trying to get it shut down because of movie sharing? :) < 1216429270 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION might cough up a couple kroner for that bet < 1216429296 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but then, it's probably both < 1216429399 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well < 1216429407 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse they got SOME worried parents to back it < 1216429420 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but is it those parents that came up with the idea? lolno. < 1216429426 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :they probably dont even know what usenet is < 1216430043 0 :RedDak!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1216430096 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :"Irregular Webcomic: 500 Internal Server Error" < 1216430119 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :looks like the servers a bit ... IRREGULAR! bwahahahaha!!! XD!!! < 1216430128 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm? i am reading the forum at this moment. < 1216430129 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :*cough* < 1216430155 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm indeed the main page is down < 1216430203 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :database error, it says < 1216430207 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you act as tho thats at all relevant to the humor :P < 1216430230 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh sorry, was in reading mode < 1216430257 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess that means my brain is determined to seek out information < 1216431299 0 :lilja!unknown@unknown.invalid PRIVMSG #esoteric :waffles! < 1216431307 0 :lilja!unknown@unknown.invalid PRIVMSG #esoteric :hrrr! < 1216431310 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1216431315 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has no waffles < 1216431337 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :cool waffles < 1216431342 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so cool < 1216431349 0 :lilja!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1216431353 0 :lilja!unknown@unknown.invalid PRIVMSG #esoteric :hot waffles < 1216431359 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :warm and cuddle < 1216431361 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*cuddly < 1216431450 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :waffles are so tasty omg < 1216431509 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :maybe if i put some raspberry jam on this cardboard... < 1216431559 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :god i envy you < 1216431581 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i remember i used to enjoy eating paper when i was a kid < 1216431640 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :HEY I'M TRYING TO PREY MERCILESSLY ON YOUR SYMPATHY HERE, DON' < 1216431645 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :T RUIN IT! < 1216431695 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :darn apostrophe so close to the return key < 1216431917 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, but the real wtf is that backspace is too. < 1216431937 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :paper huh < 1216431942 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :maybe you just needed some fiber < 1216432036 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i have a feeling the backspace is less of a problem, perhaps because when i use it i'm snapping out of automatic touch mode anyhow < 1216432078 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: good point, that may be the reason it's much less problematic in practise than you'd think < 1216432088 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have made some pretty nasty mistakes because of it though < 1216432108 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :since i often first type, then think, then rewrite < 1216432147 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i'm pretty sure i've done some of that too < 1216432162 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :this is all vague recall territory < 1216432198 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :<-- coffee < 1216432231 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(not --> coffee as i already got it :) ) < 1216432438 0 :Judofyr!unknown@unknown.invalid QUIT : < 1216432642 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hey i want coffee too < 1216432696 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :BWAHAHA now you just sit there with your waffles! < 1216432726 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :mind you it's just instant coffee < 1216432735 0 :adu!n=ajr@96.231.215.194 JOIN :#esoteric < 1216432749 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :its funny how good news and bad news usually come at the same time < 1216432751 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1216432766 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :like with the coffee and waffles? < 1216432796 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :no like promotions and responsibility < 1216432801 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1216432821 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric ::) :( < 1216432835 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1216432842 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::X < 1216432844 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :>:-> < 1216432850 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1216432868 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :those should all be vi commands... < 1216432888 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :should be or actually are? < 1216432928 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :speaking of which I just realized that the "yi" editor is indistinguishable from "vi" when displayed in a text box that's 5 pixels too small < 1216432965 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION senses a use/mention error there < 1216432970 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :only the last one is a real command, probably short for :Print or something < 1216432985 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not even :X ? < 1216432994 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :maybe :exit < 1216433002 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION brings up vim < 1216433007 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i don't know vi very well < 1216433017 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I use emacs < 1216433029 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :'yi' uses many emacs keybindings < 1216433034 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::X is encryption < 1216433038 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :o heh < 1216433061 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :although "yi --as=vim" should set vi-like keybindings < 1216433081 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::/ can start a command, since /.../ is a search that can give a line number < 1216433094 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :o wow < 1216433099 0 :GreaseMonkey!n=gm|--0@unaffiliated/greasemonkey JOIN :#esoteric < 1216433104 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :hi GreaseMonkey < 1216433128 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i want to implement fancy keybindings < 1216433134 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :'lo < 1216433136 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :like yi --as=xcode < 1216433153 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :or yi --as=kdevelop < 1216433175 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :or yi --as=vstudio < 1216433186 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :heh, :P " Just as ":print". Was apparently added to Vi for < 1216433186 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : people that keep the shift key pressed too long... < 1216433204 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i was right! < 1216433252 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216433266 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric ::P is "Put the text before the cursor [count] times < 1216433270 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :" < 1216433283 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, that's P. :P is different < 1216433296 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :o hehe < 1216433305 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i need to learn how to use vim :help :p < 1216433320 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::H < 1216433355 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::help :H shows an obscure :Hexplore command < 1216433377 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :my :help :H shows the help for :h < 1216433393 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: !! < 1216433397 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::help :h is different < 1216433399 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :hows the lang going? < 1216433403 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(== :help) < 1216433428 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm :H actually _does_ seem to work as :help < 1216433491 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it may be trying the case alternative if it finds nothing more precise < 1216433515 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: which lang? < 1216433516 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216433570 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i do vaguely recall our talk, but not what the language was < 1216433682 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklang? < 1216433712 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :hmm, unless you have multiple languages < 1216433741 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol has multiple _everything_ < 1216433758 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: do you have multiple girlfriends? < 1216433821 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: so how many languages have you made? < 1216433891 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol? < 1216433916 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :inquiring minds want to know, and will soon start blowing things up if not < 1216433933 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :well < 1216433950 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does recall oklotalk < 1216433964 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't blow up, I'd just start talking about excrement and nasty stuff until oklopol decides to talk... < 1216433985 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklotalk! thats the one < 1216433987 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :this might actually chase away everyone _but_ oklopol < 1216433999 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1216434027 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and lament, who _might_ kickban you in extreme cases < 1216434042 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i like lament < 1216434060 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :he is always sad in the most funny way possible < 1216434142 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: i have made quite many languages < 1216434162 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :have you made it to oklotalk++ yet? < 1216434182 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216434188 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've only made oklotalk-- in fact < 1216434195 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ic < 1216434198 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :even better! < 1216434212 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :http://www.vjn.fi/oklopol/oklotalk--.txt < 1216434216 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not really :P < 1216434218 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :is that like C with closures, without closures? < 1216434227 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's a simplification of oklotalk, basically. < 1216434233 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :with a boring lisp-like syntax < 1216434251 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :you should haskell syntax < 1216434252 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and no, not like C with & without anything < 1216434265 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well oklotalk has a cool J-like syntax already < 1216434275 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have enough languages with haskell-like syntax < 1216434287 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :like jo98*&x0fkc9X;;g$[] < 1216434293 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well i guess just graphica, and that's not all that close either < 1216434298 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, something like that < 1216434310 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :every string is a legal oklotalk program < 1216434317 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oo I just had a terrible idea < 1216434322 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that was one of my design goals < 1216434322 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :Funge.NET < 1216434331 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't know much about .net < 1216434337 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :its terrible < 1216434343 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :Funge would be the nice part < 1216434347 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yes i know that much < 1216434350 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1216434355 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :o_O < 1216434369 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, so since every thread only has a one-byte state... the way you do binary/triary operations is by having two bugs collide on top of the same instruction < 1216434375 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(bugSophia here) < 1216434379 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and... to make that sane < 1216434383 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: yes, i know < 1216434397 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so operators are fully symmetric on parameters? < 1216434398 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1216434399 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1216434400 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: for library implementors its a nightmare, because of the magnitude of libraries you have to implement, and for a library user, its a nightmare, because of the magnitude of libraries you have to remember and search through < 1216434403 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :there's an instruction that's "move forward one step and halt until a non-halted bug collides with you" < 1216434404 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sane? isn't this off-topic? < 1216434430 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: alright < 1216434442 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but, err < 1216434452 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :all operators can take their operands in any order? < 1216434461 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...if they can't, I'm boned. < 1216434483 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: you're boned < 1216434493 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is suddenly reminded of the sentient ant colonies from Godel, Escher, Bach < 1216434494 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well i guess - A B = + (- A) B and similar shit can be done for other non-symmetric things < 1216434499 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1216434505 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: /if/ I allow negatives < 1216434508 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :- A B = + A (- B) < 1216434511 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but current state is represented in bites < 1216434514 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :*bytes < 1216434516 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which < 1216434517 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :are not negative. < 1216434530 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :bites would be more in keeping with the bug theme :D < 1216434535 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...not to my knowledge. < 1216434536 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216434546 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :lolol < 1216434554 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: "byte" does not say anything about semantics really < 1216434564 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you know 2's complement? < 1216434576 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :aye < 1216434585 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :2's company < 1216434607 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but I don't really feel like treating bytes as short integers for the purposes of having negatives. < 1216434611 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I could just define them as "numbers" < 1216434624 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well no need for negatives < 1216434628 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in this implementation, Python integers. < 1216434640 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ya < 1216434642 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: for subtraction I'd need either negatives or some way to order the operands. < 1216434674 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well not necessarily, you need decrement, and flow control < 1216434681 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that will be had < 1216434696 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking flow control could be implemented in the halting rules. < 1216434699 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so, for example. < 1216434726 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :all you need to make sure is is that there is infinite space, the rest will come naturally :D < 1216434743 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ya < 1216434745 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*-is < 1216434756 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if you had an operation that tested the equality of two threads... < 1216434761 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :FungeSpace + BigInteger < 1216434764 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :alll you need... < 1216434801 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no need for bignums < 1216434807 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fs is infinite < 1216434827 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so that... when they both crossed the operation... a new threads are sent on all the non-taken paths containing either a 1 or 0 < 1216434840 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-a < 1216434844 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and then < 1216434847 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: fs? < 1216434852 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fungespace < 1216434860 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :an operation that kills a thread if its 0... and an operation that kills a thread if its non-0 < 1216434866 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i assumed you'd get that as you capitalized the chars < 1216434873 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: then what can each cell in fungespace hold? < 1216434881 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you can essentially using the "halt until you cross a non-halted bug" rule to implement flow control / conditionals. < 1216434884 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well i assume a fixnum < 1216434888 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :16bit? 32bit? 64bit? which one? why? why not the others? < 1216434893 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1216434897 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :32 perhaps < 1216434903 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :why not 64? < 1216434922 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :why not 256-bit? < 1216434924 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've never seen any need for anything other than bignum anywhere < 1216434927 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: ya! < 1216434928 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so don't ask me < 1216434930 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i didn't make it < 1216434944 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i believe in the 0/1/infinity rule < 1216434948 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: you mean fixnum < 1216434964 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1216434982 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :you said you though bignums were all you need < 1216434988 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :did you mean the opposite? < 1216435010 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i meant exactly what i said < 1216435035 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i meant, hard to answer why 32 instead of 64, when i find them both quite arbitrary < 1216435045 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :a ok < 1216435077 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I personally thing all bignums should be encoded like UTF8 < 1216435079 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't really care much for the practical aspect of computers < 1216435092 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so... if a quote creates a bug with a state of nil... and "e" tests the equality of up to 4 bugs, ~ is the "halt after one step" operator, and # is the "destroy if 0 or nil" operator. < 1216435099 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :then. < 1216435117 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(oh... and ) is increment, and ( is decrement) < 1216435125 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216435168 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: what was ":" do? < 1216435185 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: anyway, about the languages of mine, http://www.vjn.fi/oklopol/ and see the ones after thue < 1216435214 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not all, but most of what i have any kind of specs ready < 1216435232 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :is that a face? < 1216435232 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :v))<">))v < 1216435234 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :| | < 1216435236 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :>~e~< < 1216435238 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1216435240 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it would help < 1216435245 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if this was fixed width < 1216435263 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I shall pastebin it somewhere. < 1216435271 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :lol you implemented bf in cise? lol < 1216435301 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, assuming that's correct < 1216435308 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...it's not < 1216435314 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I hit enter too soon < 1216435341 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: i'm more confident about the shorter programs < 1216435363 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :although all i've actually implemented abot cise is the parser < 1216435386 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :whats graphica? < 1216435396 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my graph creation language < 1216435411 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the sample is a binary hypercube < 1216435425 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just had a long lecture about it like yesterday :P < 1216435457 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i like straw < 1216435473 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tried to make it a bit sane < 1216435495 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :straw is about clean side-effects when it comes to mutational changes in data structures < 1216435500 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1216435509 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ic < 1216435509 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can have a function to change an element in a list < 1216435516 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :have you heard of Disciple < 1216435520 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216435530 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :it also takes in interesting approach to side effects < 1216435543 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :http://pastebin.ca/1076165 < 1216435550 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :comments are like brainfuck comments. < 1216435552 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :you know how in Haskell, print :: a -> IO () < 1216435564 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216435569 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :in Disciple, print :: a -(IO)> () < 1216435572 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :just make sure they don't include quotes anywhere otherwise you'll accidentally spawn off extra threads... (though no worries... they'll likely not get anywhere or do anything) < 1216435579 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :or something like that < 1216435594 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :basically, you can have a function to change an element in a list, but you can use this functionally, and create an imaginary copy of the list with just the element changed < 1216435595 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :side effects are put inside the arrow, essentially < 1216435601 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but you can still use the original one too < 1216435609 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the language keeps track of reverts to the original state < 1216435612 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1216435683 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: interesting < 1216435690 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the equivalent of a string in bugSophia would be make a bug travel down a path... splitting off copies of itself that "pick up" characters via a set-byte-value operator < 1216435697 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't have anything pretty for the actual IO < 1216435710 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and i will certainly have nothing like monads < 1216435716 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and then moving those all towards a memory stream... which is some sort of Unicode character with a , (write operator) next to it. < 1216435728 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: I actually perfer arrows to monads < 1216435738 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :arrows? < 1216435743 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you mean what disciple does < 1216435760 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :Monads are like a safety net, Arrows are like 24/7 body guards < 1216435788 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...aside from being ridiculously concurrent, bugSophia isn't all that conceptually interesting. I kind of want to make it a bit weirder. < 1216435800 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: no, Disciple just adds syntax to describe "->" more indepth < 1216435821 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :an Arrow is a Haskell type class, just as Monad is a Haskell type class < 1216435828 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i need to watch some dark angel now, see you in a while < 1216435832 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1216435832 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1216435832 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i see < 1216435838 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but bye < 1216435843 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :l8r < 1216435981 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...perhaps I should have wormholes. < 1216436000 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so that all the little - | > < wires don't get cluttered. < 1216436003 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, time travel < 1216436009 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :on it. < 1216436051 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oklopol currently wins at interestingness. ;_; < 1216436054 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the negative lists thing is epic. < 1216436134 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I think I'll also a ; operator.... which is "write to a stream and then blocking-read" < 1216436151 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so you can basically have < 1216436153 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :functions < 1216436168 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oklopol also wins at sexiness. < 1216436177 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mind you i've invented more interesting things than negative lists! < 1216436189 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, you need to explain negative lists to me. < 1216436197 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I might be able to explain it.... < 1216436200 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :augur: see logs, it took a while to explain :P < 1216436206 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's another possibility < 1216436207 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but I am not too confident < 1216436210 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i refuse to look at logs. < 1216436226 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :augur: I beg to differ: http://i83.photobucket.com/albums/j316/adamadamadamamiadam/sepialol.jpg < 1216436236 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that is pure sex. < 1216436243 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: you? < 1216436248 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1216436254 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :god you've grown < 1216436271 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :rofl < 1216436272 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :no sorry < 1216436274 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oklopol is hotter < 1216436275 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's been like... 2 years? < 1216436277 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you have no lips < 1216436283 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :if you had lips you might be as sexy as oklopol < 1216436285 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but you're not < 1216436295 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i like your hair tho < 1216436300 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :also: shave dude. < 1216436310 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :TOO < 1216436312 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :LAZY < 1216436318 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't shave either < 1216436328 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :augur is going by an old photo here :) < 1216436333 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yeah but oklopol, you're hot. < 1216436341 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :give me more photos oklopol :D < 1216436369 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I bet we both have very slavic noses. < 1216436387 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oklopol has a 100% sexy nose < 1216436408 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I sometimes think I spend too much time organizing my interpreter code. < 1216436425 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I actually document it < 1216436562 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oklopol!!! < 1216436565 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :pictures! < 1216436708 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :!!!!!!!! < 1216436734 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :augur: perhaps some day < 1216436894 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :*today < 1216437317 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I believe I had @ as the thread terminator < 1216437318 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :as < 1216437321 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it looks like a big hole < 1216437327 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that they would fall in or something. < 1216437476 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :epic negative lists? < 1216437484 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :did I miss something? < 1216437516 0 :augur!unknown@unknown.invalid QUIT :Nick collision from services. < 1216437527 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a concept i invented for nopol < 1216437538 0 :augur!n=augur@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1216437550 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :rofl... go figure... the halting problem is computable for bugs. < 1216437570 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if there is no ~... it's not going to halt (I don't think) < 1216437576 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1216437578 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hmmm < 1216437583 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but you can't determine when they terminate < 1216437587 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which is < 1216437589 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :what actual halting is. < 1216437591 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1216437768 0 :augur!unknown@unknown.invalid QUIT :Nick collision from services. < 1216437790 0 :augur_!n=augur@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1216438312 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: so whats a negative list? < 1216438320 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...lol < 1216438385 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :adu: -1. it's a list. -2. it < 1216438390 0 :augur_!unknown@unknown.invalid PRIVMSG #esoteric :please forgive adu, i think hes a noob. < 1216438393 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :'s negative. < 1216438397 0 :augur_!unknown@unknown.invalid NICK :augur < 1216438400 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216438401 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :-3. darn apostrophe again < 1216438402 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I was loling at < 1216438404 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :how long that will take to explain < 1216438426 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :noob? no no I'm a boon < 1216438427 0 :augur!unknown@unknown.invalid NICK :Guest802 < 1216438434 0 :Guest802!unknown@unknown.invalid PRIVMSG #esoteric :>O < 1216438435 0 :Guest802!unknown@unknown.invalid NICK :augur_ < 1216438441 0 :augur_!unknown@unknown.invalid PRIVMSG #esoteric :>_ will be a list with a depth of -1 < 1216438685 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and <<>> will be a list with a depth of -2 < 1216438688 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :for our purposes < 1216438689 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont know von neuman numerals < 1216438695 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oooooooooooo < 1216438699 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :notation = helpful < 1216438711 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :are you familiar with how tree rewriting languages work? < 1216438712 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :so (a, b, <(c, d)>, e) == (a, b, c, d, e)? < 1216438728 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...unfortunately not with the current concept. < 1216438731 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :o < 1216438732 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :n/m < 1216438738 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it would be nice though < 1216438738 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I'm back to confusion < 1216438758 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but anyways... are you familiar with how tree rewriting languages work? < 1216438775 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I'm familiar with Haskell, Prolog and Mathematica < 1216438800 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :familiar with thue at least? that's string rewriting. < 1216438812 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :how do I find information about thue? < 1216438827 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :http://esolangs.org/wiki/Thue < 1216438835 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it just helps to have a solid foundation on tree rewriting < 1216438836 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1216438842 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :before you can understand why negative lists make sense. < 1216438852 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :well, Mathematica is a tree rewriting language < 1216438870 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tree rewriting is just like string rewriting < 1216438877 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I'm also familiar with the lisp ` ' , < 1216438877 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :except in place of strings you use structures. < 1216438893 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oh... alright. < 1216438895 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so like < 1216438911 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :Mathematica and Lisp are very very similar < 1216438947 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :Every[Thing[In[Mathematica[Uses[Brackets[]]]]]] < 1216438953 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :for our purposes, we'll use => as a tree rewrite operator [A [B C] => [B [C A]] < 1216438955 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :for example. < 1216438968 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...actually < 1216438976 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :we'll use ()'s instead < 1216438980 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :to fit with our above notation. < 1216438981 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :(every(thing (in (lisp (uses (parent)))))) < 1216439001 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1216439011 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so if you have the rule (A (B C) => (B (C A)) < 1216439027 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(add a ")" there) < 1216439033 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1216439038 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :no, YOU add a ")" there! < 1216439052 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and an initial state of... ((1 (2 3)) (3 (2 1)) < 1216439054 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :) < 1216439092 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :after on step you'll get ((2 (1 3)) (2 (3 1))) < 1216439094 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :*one < 1216439098 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...alright... so yeah < 1216439100 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you get that. < 1216439106 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :right < 1216439124 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :http://reference.wolfram.com/mathematica/ref/ReplaceAll.html < 1216439138 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and you can define functions like (func (arguments) go (here and such)) =>(return value (goes here) and what not) < 1216439144 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :well < 1216439148 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :on top of all of that < 1216439156 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :right < 1216439160 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :we now have negative lists... < 1216439161 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which < 1216439180 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :basically evaluate into positive lists... as I'll explain in a second. < 1216439208 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :alright... so if you <1 2 3> < 1216439210 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :+have < 1216439238 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :im going to check that production. < 1216439275 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if D is the depth of the list, and N is the number of elements. < 1216439305 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :then you duplicate the list D steps above <1 2 3> and duplicate it N times. < 1216439327 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :*then you take the list D steps above <1 2 3> and duplicate it N times. < 1216439354 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so for example. < 1216439389 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(== (+ <1 2 3>)) would rewrite to < 1216439413 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :erm... bad example. < 1216439438 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-thinks- < 1216439464 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(== (+ <(2 2) (3 3) (4 4)>)) < 1216439467 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :would rewrite to < 1216439501 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(== (+ (2 2)) (+ (3 3)) (+ (4 4))) < 1216439517 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which would then rewrite to < 1216439526 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(== 4 6 8) < 1216439530 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :thats just a map < 1216439532 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which would then rewrite to being patently FALSE. < 1216439535 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :....righto. < 1216439547 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :so its like a list that is implicitly mapped over < 1216439553 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...yes. < 1216439556 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1216439560 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it took me much longer to explain < 1216439562 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :BUT < 1216439565 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :they do more than that. < 1216439572 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I just explained that first < 1216439574 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :because its simple. < 1216439581 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1216439593 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :what happens when you have two negative lists... < 1216439600 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in the same list. < 1216439603 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :like such < 1216439605 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :its like map . map < 1216439618 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yeah... it maps all the possible pairs more or less < 1216439628 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that production from earlier doesnt work. < 1216439637 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :so more like the Haskell list monad < 1216439646 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...not familiar with Haskell < 1216439653 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :its da bomb < 1216439679 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: that production from earlier doesnt work. < 1216439684 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :( (== (+ <1 2 3> <1 4 5>) ) < 1216439687 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: which < 1216439693 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :actually... < 1216439694 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :haskell's list monad is very similar, yes. < 1216439701 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the ((1 (2 3)) (3 (2 1))) < 1216439717 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :( (== (+ <<1 2 3>> <<1 4 5>>) ) (I liked the thick list idea) < 1216439730 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: my favorite Haskell code: nubBy (((>1) .) . gcd) [2..] < 1216439740 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah he's gonna find that so interesting < 1216439743 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1216439748 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1216439762 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I LIKE IT. < 1216439773 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the production doesnt work, cake prophet. < 1216439775 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but I am a still-toying-with-C-like-languages fag. < 1216439780 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: I heard you. < 1216439788 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and why not? < 1216439803 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: nubBy? < 1216439818 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :adu: totally can't read that. < 1216439819 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :because the first transformation should result in (3 ((2 1) (1 (2 3)))) < 1216439828 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :http://haskell.org/ghc/docs/latest/html/libraries/base/Data-List.html#v%3AnubBy < 1216439849 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...no < 1216439859 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(A (B C) => (B (C A) < 1216439862 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :would not produce that. < 1216439869 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: that doesn't by any chance calculate primes? < 1216439878 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: yes it does < 1216439879 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes it would. < 1216439887 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's quite nice < 1216439893 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric ::) its a classic < 1216439910 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :A = (1 (2 3)) b = 2, c = (2 1) < 1216439933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :weird i never thought of doing it like that < 1216439947 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :not in ((1(2 3)) (3(21)) < 1216439952 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes it does. < 1216439960 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :does anyone else agree? < 1216439969 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: yes, i do < 1216439970 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'm new to this stuff so I could be wrong. < 1216439986 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :what am I agreeing to? < 1216439988 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :in (A (B C)) replace A with (1 (2 3)) and, B with 2, and C with (2 1) and you get ((1 (2 3)) (3 (2 1))) < 1216439998 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1216440000 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :except that's not how they map < 1216440005 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :except it is. < 1216440011 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :k < 1216440023 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i mean, how isnt it? < 1216440035 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric : < 1216440045 0 :lilja!unknown@unknown.invalid QUIT :"KVIrc 3.2.0 'Realia'" < 1216440052 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you can add restrictions to A B and C, that they be numbers, or non-lists, or something < 1216440059 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which would indeed produce what you had earlier < 1216440061 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in (A (B C)) replace A with (1 (2 3)) and, B with 2, and C with (2 1) and you get ((1 (2 3)) (3 (2 1))) <<< no. < 1216440079 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :sorry, B with 3 < 1216440079 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1216440088 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i keep making typos. < 1216440094 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you get the point :P < 1216440108 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i did, and it was clearly a typo < 1216440119 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but it was still wrong < 1216440120 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :! < 1216440123 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...oh lawl < 1216440133 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I see. < 1216440133 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1216440133 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i love you oklopol :D < 1216440138 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you should < 1216440141 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :now < 1216440145 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but the point is, as you stated it, cakeprophet, the production was wrong. < 1216440147 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm gonna sleep < 1216440152 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1216440163 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :::kisscheek:: night oklo. < 1216440170 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: correct. but it still remains to be proven if I care. < 1216440175 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :night. < 1216440189 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well you clearly care since you were using it as the basis of your example :P < 1216440198 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I was using to demonstrate tree rewriting < 1216440201 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in case < 1216440204 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't understood < 1216440211 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and it was an incorrect demonstration. < 1216440211 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but yeah < 1216440216 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it would help to be accurate < 1216440221 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but it was mainly to describe it. < 1216440223 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in any case. < 1216440225 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :this conversation sucks. < 1216440240 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so lets assume, A, B, C <- Atoms < 1216440242 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it would help to be a curate < 1216440246 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then yes your example is fine. < 1216440269 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: I can't be arsed to be pedantic right now. -tired- < 1216440273 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: there is another version of the prime thing that uses 2:[3,5..] for speed < 1216440289 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :not that "speed" is an issue... < 1216440333 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I noticed a couple days ago that when I wrote a hello world app in Haskell there were 200 symbols in the binary... < 1216440334 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psh... if you want speed just compile Haskell to C. < 1216440345 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: thats what GHC does < 1216440389 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its not pedanticness. < 1216440392 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Today, we are going to learn how to make plutonium from common household items. < 1216440399 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION just watched UHF. :D < 1216440399 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1216440404 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if youre trying to explain something and you say something wrong, its wrong. < 1216440417 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :also, your explanation of how negative lists rewrite makes no sense. < 1216440427 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hrm. New people in the channel. . . < 1216440433 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :hi pikhq < 1216440435 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Something of ours hit Digg or something again? < 1216440443 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :no, I'm just bored < 1216440447 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :who's new? < 1216440452 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I'm old < 1216440458 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you sound like a noob. < 1216440462 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I've been here 5 times in the past year < 1216440471 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you're a noob. < 1216440481 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no one here is new. no one. the channel is DYING! < 1216440494 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: I wrote a funge98 interpreter in Perl once, so I'm not a noob < 1216440558 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hrm. < 1216440560 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: so what's up < 1216440569 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :youre still a noob :D < 1216440571 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :However, there are people who aren't here who used to be. < 1216440580 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :adu: Nothing much; just sitting here. < 1216440585 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :excuse me its _boon_ < 1216440591 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :get it right < 1216440605 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION mutters about the untimely 'death' of Sukoshi. < 1216440606 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :lmfao < 1216440616 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :noob. < 1216440620 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :boon. < 1216440630 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and definitely not modest either. < 1216440640 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, *I'm* no noob. < 1216440651 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is a oldbie noob. < 1216440651 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :hi pikhq, can I help you today? < 1216440667 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :adu are you crying for attention? < 1216440668 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I wrote PEBBLE before you were born (you young wippersnappers)! :p < 1216440681 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1216440688 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :get off my lawn! < 1216440697 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: is there any other reason to go on irc? < 1216440702 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION gets the self-aiming sprinkler < 1216440717 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :http://pastebin.ca/1076260 - the current state of my bugSophia interpreter < 1216440738 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :well-documented, incomplete, and most likely bugged. < 1216440749 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :like all my other programs. < 1216440759 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i should sincerely hope it is bugged < 1216440781 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :bugged? < 1216440786 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :are the soviets listening in < 1216440787 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :? < 1216440788 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: is there a reason you use dict() instead of {}? < 1216440801 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :other than personal preference, no. < 1216440810 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :same thing semantically. < 1216440814 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, the north koreans and the zimbabweans < 1216440836 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, cthulhu < 1216440848 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :damn north koreans < 1216440850 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if I had a reason... it'd probably be that I can actually type out dict() faster than I can type {} < 1216440857 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :because my curly bracket typing abilities are very slow. < 1216440868 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: lol fair 'nuf < 1216440894 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :my parens typing abilities are slow < 1216440912 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :thats why I perfer Mathematica over Lisp < 1216440916 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oh yeah... definetely bugged. < 1216440921 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I didn't even do grids = [] < 1216440924 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :somewhere at the top < 1216440955 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :lisp is sexier. < 1216440958 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so uniform.. < 1216440960 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its beautiful T_T < 1216440977 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I think Perl is pretty beautiful < 1216440983 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :for the exact opposite reason. < 1216440986 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but so is Lisp < 1216440992 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :also, i use textmate which autobalances parens :D < 1216440995 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I think Io is beautiful < 1216441012 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :........oh yeah < 1216441016 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I've never used it < 1216441018 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but it looks really clean < 1216441021 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :io huh < 1216441037 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Io sono bello < 1216441048 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :http://www.iolanguage.com/ < 1216441053 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I mean seeing "clone" instead of "new" or "class" just seems right... < 1216441061 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it looks terribly eh. < 1216441074 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :adu: you'd like Self then. < 1216441096 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :you never know if you're subclassing or instantiating... all the same... < 1216441104 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure if thats a good thing, but its pretty :) < 1216441122 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :javascript is theoretically like that, but practically its not. < 1216441124 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I like that it implements lazy evaluation of function arguments. < 1216441129 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :by default. < 1216441130 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :also, im never sure how copying works in prototype based languages. < 1216441138 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :atleast when it comes to object graphw < 1216441139 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :s < 1216441150 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :does a copy of an object also copy all the objects it references? < 1216441157 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :or does it only copy the object itself, and then copy the references? < 1216441189 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: theres probably different methods for each < 1216441205 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :like copy and copy_recursive < 1216441213 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I think its context sensitive < 1216441220 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...for io anyways < 1216441233 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it would be a waste of memory to actually make copies of each function < 1216441240 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :a reference would be enough < 1216441288 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but I think io actually makes clones of everything else. < 1216441294 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so its a deep copy < 1216441302 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: what's your favorite systems language? < 1216441311 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :"systems" language? < 1216441325 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :a language that an operating system has been made in < 1216441345 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i.e. NOT html < 1216441360 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :who cares that an OS was made in it? < 1216441368 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :me < 1216441372 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :io is very nice... < 1216441382 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :control flow statements < 1216441384 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and functions < 1216441386 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :are the same < 1216441389 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which is very clean to me. < 1216441417 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and it uses smalltalk message-pasing syntax, which always looked nice to me. < 1216441420 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it lacks a lot of punctuation. < 1216441423 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :adu: thats a silly requirement. < 1216441429 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: what's your favorite usability language? < 1216441443 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :whats my favorite language in terms of usability? < 1216441448 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1216441448 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...I find Python the easiest used. < 1216441450 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but < 1216441455 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that's because it was my first < 1216441455 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and I am most comfortable with it. < 1216441461 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i like ruby. < 1216441466 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :nice < 1216441477 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: what's your favorite obfuscation language? < 1216441481 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :Ruby is alright. Its syntax is a little weird, but I like some of its design. < 1216441488 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :adu, also Python. < 1216441496 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :Perl is next. < 1216441497 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ruby syntax is.. very simple. o_O < 1216441502 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :python for obfuscation? < 1216441511 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :lets see < 1216441514 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: it always reads weird to me... like "list.each do" < 1216441518 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's not conceptually difficult < 1216441521 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :why?? < 1216441521 0 :oerjan!unknown@unknown.invalid QUIT :"And your little dog too!" < 1216441522 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it just sounds weird in my head. ;) < 1216441528 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the each method takes a block argument < 1216441532 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: I would say Python syntax is simple, Ruby syntax is versitle < 1216441538 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its not list.each do < 1216441545 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its list.each(do...end) < 1216441552 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: not arguing with you there. < 1216441554 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :right < 1216441560 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :since parens are optional, each do...end < 1216441561 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you don't actually need the parens there. < 1216441563 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: what's your favorite compiled language? < 1216441564 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216441565 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :is completely sensible. < 1216441571 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...it is, sematically. < 1216441578 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but not in my head.... when I say it mentally-aloud. < 1216441585 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :obfuscation language: dunno, dont obfuscate. < 1216441590 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :compiled: well, lisp. < 1216441605 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :"list each do stuff end" doesn't even vaguely make sense in English < 1216441606 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: well you need to mentally read differently < 1216441608 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: you could have said lisp for systems language too < 1216441610 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'm used to Python < 1216441614 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :where everything reads nicely. < 1216441621 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :adu: ok? < 1216441623 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and? < 1216441631 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: ruby reads nicely too :P < 1216441644 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-shrug- personal preference. < 1216441666 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i like Ruby < 1216441675 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i love Haskell, tho < 1216441678 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: ruby practically reads like english. :P < 1216441683 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :hakell is nice too yeah < 1216441686 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but up to a point. < 1216441688 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :ACTION <3 Haskell < 1216441692 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :....that, however, I will disagree with. < 1216441694 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its too academic for me, too confusing < 1216441704 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :using the list.each do ... end example again. < 1216441723 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :explain how it reads like English. < 1216441733 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well, if each were a function it'd be even more like english, yes i agree < 1216441738 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :each list do ... end < 1216441757 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but its a method. so in that regard it has quantifier ordering reversed. < 1216441758 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...that would be odd. < 1216441765 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :why would that be odd? < 1216441770 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it would read more like English, yes. < 1216441770 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :for each item in list, do ... < 1216441776 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but the English that it reads like < 1216441780 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :would cease matching its semantics < 1216441794 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :how so? < 1216441808 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :because "each x" would suggest there are mulltiple x's being looped over. < 1216441811 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :when it is the thing < 1216441817 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that the things come from < 1216441819 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :with (list) for (each) item in it, (do ... end) < 1216441824 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :uh.. no it wouldnt. < 1216441839 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :for each integer, double it. < 1216441843 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I think it would make more since if it were a function like each(|dog|, pound, do ... end) < 1216441844 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :integer.each double < 1216441845 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but then < 1216441847 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I would stop liking Ruby. < 1216441881 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :integer is a collection < 1216441881 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :in english < 1216441881 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats how it works in english < 1216441881 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-nod- it would vary by what you named the variable. < 1216441882 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :quantifiers like each, all, some, etc. all work on classes < 1216441882 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I persoanlly like the {'s better < 1216441884 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :sets, if you will. < 1216441887 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :instead of do...end < 1216441893 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :for blah.each < 1216441896 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats an irrelevant choice. :P < 1216441904 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :because then the variable name is next to the each... and it makes more sense Englishly. < 1216441914 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :list.each {|item| ....} < 1216441918 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :or however the syntax is. < 1216441923 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that is correct. < 1216441943 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :Englishly < 1216441946 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it doesnt make it more englishy < 1216441954 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its only more englishy if the english sentence uses a variable < 1216441957 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...but since I dislike {} for blocks... (because I type them slowly... which is why I use dict() instead of {}) < 1216441958 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which it doesnt, when you just use classes. < 1216441965 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I would prefer instead indentation... because... I am a pythonfag. < 1216441971 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :for each integer do something to it < 1216441982 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but indentation makes it weird to objectify blocks < 1216441983 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that does not have the variable name < 1216441986 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse you're right if you had < 1216441995 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which is one of the "benefits" (advantages... or whatever) of Ruby. < 1216441997 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :for each n in integers, do ... < 1216442016 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216442019 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty much < 1216442027 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the best English-reading syntax you could do. < 1216442029 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but < 1216442031 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's not very terse. < 1216442032 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :i personally think all this talk about english is leaving other natural languages out in left field, isn't that unfair? < 1216442040 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :adu, noep < 1216442053 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but noone would say that < 1216442055 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: have you ever tried to tokanize Japanese? < 1216442056 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :they can get there own god damn languages. :P < 1216442058 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :they would just say for each integer, double it. < 1216442079 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ive done formal semantics of japanese :D < 1216442079 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :token < 1216442084 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :adu, I'm assuming it takes a while? or is it easy because it's characters instead of words? < 1216442121 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: anata no nihongo wa perapera desuka? < 1216442148 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: yeah... not saying it should be English... I just like for things to make sense in my head. it's not really a fault of the language or anything. < 1216442149 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :perapera to shiranai no < 1216442150 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: its impossible without a dictionary, because there are no spaces < 1216442156 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I like Ruby's semantics. < 1216442172 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: i suspect you would say "For each blah, do blah" as well < 1216442194 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you're reflecting right now, which is iffy. < 1216442194 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :really in normal conversation < 1216442198 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you'd just say double each integer. < 1216442203 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well yes < 1216442204 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: its ok, perapera == fluent < 1216442208 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :speaking off < 1216442218 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats the syntax i wanna use in my sexy sexy language < 1216442218 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but that's not explicit enough for a programming language < 1216442223 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: wanna make it? :D < 1216442228 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :double(x) each |x| integer < 1216442236 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :adu: no, i'm not fluent in japanese at all. < 1216442241 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :there's a missing implied variable there. < 1216442261 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet: cmon, lets make a language :D < 1216442268 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-shrug- I have places to go. < 1216442294 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :to me... Perl's one-line control flow statements < 1216442299 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and Python control-flow expressions < 1216442302 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :read the most like english < 1216442303 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :out of all of them. < 1216442307 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i wanna make a language that has implicit ability to understand quantified nouns < 1216442310 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(... for item in list) < 1216442313 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in Python < 1216442315 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and < 1216442324 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which would make maps nice and each to see < 1216442339 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :as in your example, double each integer is equivalent to like < 1216442346 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :map double integers < 1216442359 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if this were haskell < 1216442361 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...you can do that in languages already. < 1216442364 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1216442372 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but double 5 would just be 10 < 1216442374 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: which one? < 1216442376 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :or if you had a double function map(double, integer) in at least 10 languages. < 1216442387 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :sure but < 1216442389 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the point is < 1216442407 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :double as a function would be taking as its argument a quantified noun < 1216442412 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :not being passed to a map function < 1216442417 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1216442436 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the interpreter would say, aha, this is an application to a quantified item < 1216442446 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which means apply it to each item like a map, or some such < 1216442463 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :double (each integer) < 1216442478 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216442493 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :well... if you had it so that each item in integer implicitly received all messages < 1216442495 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that would work < 1216442498 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :even tho the double function would only ever be defined as int -> int < 1216442503 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but it wouldn't work well for lots of other namings. < 1216442507 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :such as < 1216442509 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :doucle (each list) < 1216442512 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :*double < 1216442514 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well yes < 1216442524 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but thats your problem to name things correctly :P < 1216442538 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it does not makes sense < 1216442541 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :to name a list < 1216442543 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :as integer < 1216442543 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1216442546 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well < 1216442548 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :integers < 1216442549 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :integer = [] < 1216442550 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :? < 1216442564 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse you could use another quantifier < 1216442566 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :double all integers < 1216442582 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but anyway < 1216442592 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :even "double each integers" is fine. < 1216442598 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :not perfectly english but so what < 1216442611 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it reads pretty damn close < 1216442637 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the point tho is quantifiers < 1216442651 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :even if it was dbl E ints < 1216442654 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the point is the quantifiers. :P < 1216442899 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...if you wanted to break into english parsing. < 1216442914 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :actually ive got some ideas about using some of that stuff too ;) < 1216442914 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you could have variables change form based on context. < 1216442920 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tell me more. < 1216442923 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :rather than being a static name < 1216442936 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :like you could say < 1216442943 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :x is some integers < 1216442947 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :er... < 1216442957 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I mean < 1216442967 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :integers refers to the whole < 1216442971 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :integer refers to parts < 1216442973 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1216443020 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well ive already got ideas about using predicate functions that are flagged as such < 1216443026 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so that if you say something like < 1216443054 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :even? 5 == f < 1216443065 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in which case each works a lot like implicit mapping. < 1216443075 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :where the ? is added in-system < 1216443090 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so in a traditional programming language... if each were a keyword < 1216443090 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :whereas if you did just < 1216443091 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and you said < 1216443094 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :even integers < 1216443095 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its a filter < 1216443104 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :double(each integer) < 1216443107 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :or even < 1216443113 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :double(double(each integer)) < 1216443123 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it would be like < 1216443126 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :oh, no, i was thinking each would be some sort of function that produces a quantified expression. < 1216443132 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :map(double, map(double, integer)) < 1216443144 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :granted, the sum total of it being quantified would simple be JUST (each integer) :p < 1216443152 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...anyways... I have to go. < 1216443159 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok see ya < 1216443162 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :thanks for the chat... think about it some more and see if you can make sense of it. < 1216443220 0 :adu!unknown@unknown.invalid PRIVMSG #esoteric :inght < 1216443224 0 :adu!unknown@unknown.invalid QUIT : < 1216443294 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :sense of what? lol < 1216443298 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :theres nothing to make sense of. :P < 1216445627 0 :pikhq!unknown@unknown.invalid QUIT :"leaving" < 1216449546 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1216450459 0 :cherez!unknown@unknown.invalid QUIT :"Leaving." < 1216454399 0 :clog!unknown@unknown.invalid QUIT :ended < 1216454400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1216462948 0 :tusho!n=tusho@91.105.112.94 JOIN :#esoteric < 1216462969 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :augur: i mean, am i the only one who thinks its ridiculous that half the ISPs in america are banning the alt hierarchy < 1216462971 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :sucks < 1216462979 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i've never read a non-alt. group < 1216462980 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :well < 1216462982 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :comp.lang.* < 1216463113 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i know i'm responding to message from yesterday, but < 1216463296 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :19:36:28 that makes no sense. < 1216463308 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :stop fsking saying that to mean "i don't understand negative lists" < 1216463312 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :we get it already < 1216463498 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: (a b e f) -> ((a b c e f) (a b d e f)) < 1216463513 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a b <>) -> ??? < 1216463559 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"HydraIRC -> http://google.com <- Go find something better" < 1216463560 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :20:05:34 psh... if you want speed just compile Haskell to C. < 1216463560 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :20:05:45 CakeProphet: thats what GHC does < 1216463562 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Incorrect. < 1216463567 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :It uses its own code generator nowadays. < 1216463571 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Unless -fvia-c. < 1216463646 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :20:16:32 also, i use textmate which autobalances parens :D < 1216463653 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :70s abandonware does paren matching, psygnisfive. < 1216463664 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and autobalancing < 1216463735 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :20:25:28 the each method takes a block argument < 1216463735 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :20:25:38 its not list.each do < 1216463735 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :20:25:45 its list.each(do...end) < 1216463736 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :FAIL < 1216463740 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :blocks are actually 'special' < 1216463744 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you can't do (do...end) < 1216463758 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you can only pass one block to a function and it has to be outside any parens and after them < 1216463775 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and the function can't access it as a normal argument, it has to use 'yield' or have an argumen with & in front of it at the end < 1216463780 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :which is bound to the block reified into a Proc. < 1216466629 0 :Judofyr!n=Judofyr@cE699BF51.dhcp.bluecom.no JOIN :#esoteric < 1216470273 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :morning tusho < 1216470280 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :hi AnMaster < 1216470566 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Hrm. New people in the channel. . . <<< no new people < 1216470667 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :adu: CakeProphet: is there a reason you use dict() instead of {}? <<< there are a few problems with in-place changes with the latter < 1216470681 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not that either of adu and CakeProphet are here < 1216470897 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: wtf? < 1216470899 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :they're indentical < 1216470903 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1216470919 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :dict(a=2, b=3) is {'a':2, 'b':3} < 1216470920 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :always < 1216471059 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: integer is a collection & psygnisfive: in english <<< i disagree < 1216471255 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: really in normal conversation & CakeProphet: you'd just say double each integer. <<< 2 * \integers < 1216471384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: array-processing languages are basically based on the kind of implicit mapping you mentioned < 1216471418 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: double (each integer) <<< you can define each to work like this in oklotalk, for an arbitrary iterable sequence < 1216471433 0 :Judofyr!unknown@unknown.invalid QUIT : < 1216471565 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tusho: (a b <>) -> ??? <<< this would not rewrite to anything < 1216471573 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ah of course < 1216471590 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a b <(c d)> e) -> ((a b (c d) e)) < 1216471591 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the list cannot be eliminated, so the evaluation would be locked, program would terminate < 1216471591 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :of course < 1216471602 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :bit of a weird translation, but makes sense when the negative list has more stuff in < 1216471640 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tusho: well < 1216471658 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: well < 1216471661 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :what about this: < 1216471662 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1216471664 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a b e) < 1216471664 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1216471669 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :((a b c e) (a b d e)) < 1216471670 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1216471687 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1216471691 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes exactly < 1216471700 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216471702 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :so < 1216471706 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :if you have one term < 1216471711 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it's just ((a b TERM e)) < 1216471718 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :if it's special cased for one element, well, that's weird :) < 1216471719 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :also < 1216471724 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a b <> e) -> () < 1216471725 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1216471732 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the problem is, the negative lists are all kinda rewritten at the same time on one level, with the current semantics. < 1216471738 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :well yeah < 1216471740 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so there may be some problems < 1216471741 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but (a b <> e) -> () < 1216471742 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1216471744 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :with complex things < 1216471746 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1216471760 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, that's correct < 1216471768 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216471770 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :I get them now! < 1216471775 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216471779 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :did you get thick lists? < 1216471801 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :basically, you can have thinner and thicker lists, but thick negatives will only rewrite thick levels < 1216471818 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this lets you do declarative programming without having to calculate your depths exactly < 1216471838 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :hmm well i don't get it but it doesn't sound too complex < 1216471844 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but negative lists are cool < 1216471914 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :http://www.vjn.fi/pb/p366235241.txt <<< i was referring to this behavior, but right, it's not because you're changing the literal, it's because defaults are only evaluated once. < 1216471973 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which is actually quite obvious seeing as they are part of the function's data < 1216472033 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: (<(<>)>) -> ((())) < 1216472034 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216472061 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm < 1216472077 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it's true oklopol < 1216472077 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(<>) -> (), yeah < 1216472080 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216472086 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and then the upper one < 1216472088 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1216472090 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :fun < 1216472113 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ya < 1216472114 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but err < 1216472147 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the "problem" is (a b () c d) -> (a b ((e)) c d), while there is some sense in the negativity, it's not at all pure < 1216472187 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :() -> ((e)), that's trivial < 1216472189 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and makes sense < 1216472193 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and then you just embed it in another list < 1216472194 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :so. < 1216472225 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but it makes negatives impure! < 1216472247 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well < 1216472253 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :of course it's just a name for the concept < 1216472257 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no it doesn't make them impure < 1216472265 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :well, i mean, you could make it nesting negatives < 1216472266 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :in which case < 1216472269 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i'd expect < 1216472285 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a b () c d) -> ((a b (e) c d)) < 1216472291 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :that is, the <>s map the topmost list < 1216472292 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not the innermost < 1216472300 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the semantics are already definitely impure for stuff like <> < 1216472330 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :<...> will always map just one list on top of it < 1216472340 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's where <<...>> comes in < 1216472383 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway i should do something < 1216472385 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps read < 1216472431 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i should really start playing with ai, i almost get a boner from even looking at c++ code describing a flock of birds < 1216472468 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also i could probably do something spectacular with ob + simple 2d physics < 1216472862 0 :AnMaster!unknown@unknown.invalid QUIT :Remote closed the connection < 1216475110 0 :Judofyr!n=Judofyr@cE699BF51.dhcp.bluecom.no JOIN :#esoteric < 1216478164 0 :CakeProphet!n=chatzill@h119.42.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1216479952 0 :lilja!n=ohsohot@a91-152-143-39.elisa-laajakaista.fi JOIN :#esoteric < 1216480222 0 :pikhq!n=pikhq@c-66-31-43-229.hsd1.ma.comcast.net JOIN :#esoteric < 1216480234 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: i wish i knew pygame < 1216480468 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not something you know, it's something you google and copypaste < 1216480550 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: yes but i still suck at it < 1216480726 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well it's very, very simple < 1216480792 0 :AnMaster!n=AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1216480884 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, ais not here yet? < 1216480903 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216481224 0 :ihope!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1216482776 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's saturday. < 1216482882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, and? < 1216482891 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and he is never here on a saturday < 1216483555 0 :Judofyr!unknown@unknown.invalid QUIT : < 1216484116 0 :Slereah__!n=hax@ANantes-252-1-37-202.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1216484464 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais is one weird dude. < 1216484628 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1216484856 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not having an internet connection < 1216485189 0 :lilja!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1216485190 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: or a computer < 1216485195 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :well i'm not sure < 1216485488 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :he does not have a connection, i don't know whether he has a computer < 1216487551 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :ais523 has no internet connection? < 1216487558 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Our only hope is Norgg, then. < 1216487580 0 :Ilari!n=user@a88-112-62-101.elisa-laajakaista.fi JOIN :#esoteric < 1216487920 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :is there anything uglier than making a bot control it's own physics. < 1216487946 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the answer is "no", five points for a "no", go for it. < 1216487989 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :That's no uglier than how when you play Solitaire, you make yourself abide by the rules. < 1216487997 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :If you're the type to do such a thing. < 1216488009 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :And you are. < 1216488028 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ihope: err no, that's different. no one mixes the physical game play with thinking about the strategy. < 1216488034 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the cards are there to aid your memory < 1216488050 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not about getting the cards to move correctly in order to win, it's about the tactics < 1216488060 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :of course, with many solitaires, there are no tactics, but anyway. < 1216488065 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :What are you doing? < 1216488078 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what am i doing? < 1216488101 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Having something to do with a bot that controls its own physics, I see. < 1216488141 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm reading a book called programming game ai by example and wondering why the fuck i'm reading a book that starts by saying it's made for getting ai to look good in practise, not about beautiful academic shit. < 1216488159 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1216488180 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :"Could not create temporary file." < 1216488185 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fuck you, Mutt. < 1216488200 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I have "Artificial Intelligence: A Modern Approach", a.k.a. "Russell and Norvig's Big Green Book". Let's trade. :-P < 1216488214 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah i'm planning to buy that < 1216488242 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway the book does have some fun ideas, and seeing the ugly c++ code really inspired further development of Ob. < 1216488267 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :have you read aiama? < 1216488274 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Various bits of it. < 1216488306 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've just taken a few random glances inside it < 1216488326 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I've taken many random looks at it. :-) < 1216488441 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway specifically, a soccer ai aims for a point near the goal, the random offset is not even abstracted away from the ai's main kickball method < 1216488450 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's there, as part of the fucking state machine < 1216488469 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rips something off something and throws something at something < 1216490339 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: ur < 1216490891 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hu? < 1216490983 0 :Slereah__!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1216491080 0 :tusho!unknown@unknown.invalid QUIT : < 1216491124 0 :tusho!n=tusho@91.105.112.94 JOIN :#esoteric < 1216491146 0 :tusho!unknown@unknown.invalid QUIT :Client Quit < 1216491165 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho does grasp pedagogically relevant things. < 1216491167 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1216491253 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :also, i dont get negative lists at all. :( < 1216491273 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(1 2 <3 4> 5) i can get but not the others < 1216491281 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :since they dont seem to follow the same rule as that one :( < 1216491490 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :hm. ok so (1 2 <> 3) could make sense too if im interpreting it correctly. < 1216491538 0 :tusho!n=tusho@91.105.112.94 JOIN :#esoteric < 1216491547 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: < 1216491553 0 :Judofyr!n=Judofyr@c0F9CBF51.dhcp.bluecom.no JOIN :#esoteric < 1216491687 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if list = (... neg-list ...), then that evaluates to (list'0 list'1 ...) where list'0 = (... neg-list[0] ...), list'1 = (... neg-list[1] ...) and so on? < 1216491743 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that is, a list containing a neg-list of length N evaluates to a list A of similar lists, of length N, where each similar list has one of the elements of the neglist in place of the the neglist. < 1216491744 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1216491793 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :hence the reasoning that (1 2 <> 3) would evaluate to () since the neglist has the same length as () < 1216491795 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1216491899 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: well < 1216491900 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1216491911 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a b e f) -> ((a b c e f) (a b d e f)) < 1216491919 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you see how that works? <...> means 'one of these' < 1216491924 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and it produces a list of all possible choices < 1216491927 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :filled in < 1216491934 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :there's some nuances, but that's the basic idea < 1216491938 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and since <> is 'no choices' < 1216491939 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you get () back < 1216491976 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: does that make sense? < 1216491978 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it kinda -clicks- < 1216491980 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :at one point < 1216492184 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :not with <>. < 1216492192 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that was my first assumption but it does fail with <> < 1216492203 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :afk < 1216492502 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: no it doesn't < 1216492523 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(1 2 <3 4> 5) -> (For each thing in (3 4), (1 2 thing 5)) < 1216492530 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :For <>, that becomes 'For each thing in ()'. < 1216492535 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Thus, it never runs, and we get (). < 1216492554 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :which language are we talking about? < 1216492645 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: oklopol's negative lists < 1216492656 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive contends they're impossible and meaningless or at least used to < 1216492661 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :meanwhile, one more person gets them every day < 1216492662 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216492715 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :link? < 1216492748 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: no link < 1216492758 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1216492764 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :people://oklopol/mind/nopol/neglists < 1216492768 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :have a URI < 1216492797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : (1 2 <3 4> 5) -> (For each thing in (3 4), (1 2 thing 5)) < 1216492798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so... < 1216492810 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is basically (3|4) in a regex? < 1216492815 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :......................................... < 1216492816 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216492821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but not a regex of course < 1216492833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :being expanded instead to all posibilities < 1216492842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :possibilities* < 1216492844 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, no? < 1216492857 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1216492869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1216492927 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, ? < 1216492947 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i'm not going to bother explaining because it's not worth it because oklopol is better at it than me < 1216492950 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ask him. < 1216492961 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :also, you'll need a bit of a functional programming mind to grasp it. < 1216492961 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, explain! < 1216492964 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you might wanna work on that < 1216492990 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, well I do understand some lisp but... no I don't have a functional mind... < 1216493016 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :get one, then try again < 1216493027 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, where can I get one? < 1216493038 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1216493068 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :yaht & r5rs < 1216493077 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :& lc < 1216493095 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not at the local walmart? < 1216493116 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1216493122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :damn ;P < 1216493208 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :just because various people get them doesnt mean that they make sense < 1216493219 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thanks psygnisfive < 1216493228 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: so we're all hallucinating? < 1216493232 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1216493244 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: i think what you mean is - they don't make sense to you < 1216493247 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and yeah, they didn't to me < 1216493250 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no of course not, only 12 year old girls are < 1216493251 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION runs < 1216493258 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but, objectively, they do make sense because, um, they exist, and oklopol's implemented them < 1216493289 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tusho, are you saying INTERCAL's random compiler bug make sense? or it's turning text thing for input/output < 1216493294 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :they exist < 1216493315 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :objectively, they 'make sense' < 1216493322 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :because they are specifiable < 1216493324 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :implementable < 1216493324 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and real < 1216493329 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :subjectively, no, they don't ;) < 1216493332 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does TURKY BOMB make sense? < 1216493342 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: partly < 1216493346 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1216493355 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :did you ever get anywhere with implementing it? < 1216493359 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :if you give it a liberal enough interpretation < 1216493386 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not really < 1216493392 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :theoretically it can be taken as a spec for a TC language < 1216493395 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but in practice, well.. < 1216493405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :give me half a bit ;P < 1216493409 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or was it 1/3rd of one? < 1216493439 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the point is that although you can't represent half a bit < 1216493444 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :if you have, say, an array of two half-bits < 1216493449 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :then you can represent it as one bit < 1216493457 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but you can't set each half < 1216493475 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think you have to emulate it or something ;P < 1216493498 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :say, store it internally in the interpreter as a whole bit < 1216493504 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1216493506 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yeah, pretty much < 1216493510 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you have to do some acrobatics < 1216493518 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: like, e.g. < 1216493522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is turky bomb actually TC? < 1216493524 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :NEGATIVE AMICED is a negative amount of bits < 1216493526 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :what you do < 1216493528 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :is instead have AMICED < 1216493531 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :with a postive amount < 1216493535 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and just make all operations on it negative < 1216493539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1216493540 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and *turkey < 1216493543 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and well < 1216493544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes typo < 1216493545 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it's so vague < 1216493548 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you can make it tc < 1216493551 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :if you take some liberties < 1216493562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :implement TURKEY BOMB in TURKEY BOMB! < 1216493563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1216493568 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it basically ends up as a computer simulation of the described drinking game < 1216493575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1216496137 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho, im not saying neglists, as oklopol implemented them, dont make sense < 1216496149 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :im saying neglists, as theyre being explained dont make sense to me. < 1216496185 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :yeah. < 1216496188 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :they're not easy to explain < 1216496188 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1216496193 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :also, by the normal reasoning about what (... ...) does < 1216496200 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(... <> ...) should also do something. < 1216496223 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if (... ...) => ((... a ...) (... b ...)) < 1216496245 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then (... < > ...) => ((... ...) (... ...)) < 1216496266 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :=> (((... a ...) (... b ...)) ((... c ...) (... d ...))) < 1216496354 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :this all looks terribly like non-deterministic things in Haskell. < 1216496371 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :or any system that allows non-deterministic filtering. < 1216496375 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :only its not filtering, its construction. < 1216496815 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :its deterministic < 1216496815 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but yes < 1216496816 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :similar to the list monad < 1216496824 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :also, I believe <<>> does the same as <>, but one level up < 1216496846 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :so (a (b <> e) f) -> ((a (b c e) f) (a (b d e) f)) < 1216496847 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :see? < 1216496853 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it jumps up a level before doing every possibility < 1216496953 0 :Slereah__!n=hax@ANantes-252-1-53-251.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1216497060 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i said it looks like deterministic stuff < 1216497250 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: this all looks terribly like non-deterministic things in Haskell. < 1216497250 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :[19:39] psygnisfive: or any system that allows non-deterministic filtering. < 1216497259 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1216497265 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :"looks terribly like" < 1216497325 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1216497370 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i would like to see formal rules for doing negative lists < 1216497372 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :itd help a lot. < 1216498050 0 :timotiis!n=timotiis@ip-83-147-168-102.crk.metro.digiweb.ie JOIN :#esoteric < 1216498203 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :oklopol! formalism! < 1216498205 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :now! < 1216498284 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :iuo < 1216498290 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :iuo? < 1216498292 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::O < 1216498302 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :iuo means "kiss me" in my conlang < 1216498303 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::o < 1216498355 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: if list = (... neg-list ...), then that evaluates to (list'0 list'1 ...) where list'0 = (... neg-list[0] ...), list'1 = (... neg-list[1] ...) and so on? <<< ya. < 1216498364 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok. < 1216498369 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: i know < 1216498375 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so then by that reasoning < 1216498384 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :<<...>> should evaluate as I supposed above. < 1216498443 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(x < > y) => ((x y) (x y)) => (((x a y) (x b y)) ((x c y) (x d y))) < 1216498447 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: the normal rewrite rule is just the case where the negative list contains no negatives < 1216498456 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well actually < 1216498472 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :basically, i have separate rules for when a negative list contains a singleton negative list < 1216498478 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok. < 1216498484 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :do you have ordered rules? < 1216498485 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err, when a negative list is a singleton containing a negative list < 1216498502 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, the rules are not all that beautiful mathematically. < 1216498502 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :because if the rule is (... neg-list ...) => ((... neg-list[0] ...) ...) < 1216498526 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :they are not just recursively defined with the simple rule < 1216498531 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then the unwrapping of (x < > y) should unfold as i mentioned < 1216498535 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1216498541 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but if you have some other rule like < 1216498546 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :<... neg-list ...> => ... < 1216498560 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and that rule has a higher precedence than (... neg-list...) < 1216498564 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then i can see there being a difference < 1216498575 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, that's the case < 1216498589 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok. tusho never mentioned such a rule. < 1216498598 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tusho may not have known about such a rule < 1216498601 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i didn't < 1216498613 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i just knew what you told me, you didn't really specify the exact singleton thing < 1216498614 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway, there is no formal semantics for this, i go by my own intuition. < 1216498621 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then negative lists are just non-deterministic elements. < 1216498626 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tusho: yeah i just explained the gist of it < 1216498631 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: exactly < 1216498632 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: except they make the list they're in turn into a list of all possibilities < 1216498634 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but yes < 1216498636 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok, thats simple enough. < 1216498637 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :pretty much < 1216498643 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it makes sense to call them negative though psygnisfive < 1216498650 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :because they "fold" into the thing they're in < 1216498654 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i disagree but whatever. < 1216498682 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :they're just non-deterministic elements. < 1216498694 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :one way to see it < 1216498696 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but < 1216498702 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :reminds me of haskell's filterM < 1216498702 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not equivalent to that < 1216498725 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it seems like it is :p < 1216498735 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :atleast for stuff like (... neg-list ...) < 1216498748 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont know your semantics for <... neg-list ...> yet so. < 1216498760 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well the difference is you get a *real* new list on the toplevel < 1216498768 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :what would < 1216498773 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric : d> < 1216498774 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :eval to < 1216498780 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and what are the steps and rules < 1216498794 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nothing, you can't have negative lists without something surrounding them < 1216498811 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :what would ( d>) evaluate to. < 1216498816 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :+ rules and steps < 1216498856 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :((a) () (d)) -> ((a) ((b) (c)) (d)) i think < 1216498883 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway, this is just basically an unclean way to get deterministic elements, i guess you could say < 1216498889 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so its an evaluation no different that the standard (.. neg-list ..) evaluation < 1216498890 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*nondeterministic < 1216498905 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you unwrap the neglists top down. < 1216498919 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: well indeed, the actual exception is when you have < 1216498927 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and not <... neglist ...> < 1216498932 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(<>) => ? < 1216498955 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :or () => ? < 1216498967 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :() = ((a b)) < 1216498967 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well, that last one is trivial nevermind < 1216498970 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :that's obvious < 1216498970 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :first would fail, i think, latter would be triv < 1216498976 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :no tusho < 1216498978 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats wrong :) < 1216498984 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :() => ((a) (b)) < 1216498985 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wrong, but triv still < 1216498994 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oh yeah < 1216498995 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok so whats the except with ? < 1216499005 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: basically, that you jump two levels up < 1216499012 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :example. < 1216499019 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(a <> b) < 1216499024 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :=> ? < 1216499050 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(a (b <> c) d) => ((a (b e c) d) (a (b f c) d) (a (b g c) d)) < 1216499061 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :one step at a time oklopol, please. :P < 1216499066 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's one step < 1216499074 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :uh huh :P < 1216499075 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you remove <> from there < 1216499079 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then rise two levels up < 1216499084 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216499086 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it makes sense psygnisfive < 1216499087 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1216499091 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :when you do <...> < 1216499091 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :quiet tusho < 1216499092 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and call the list lambda for each elem < 1216499093 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it cycles the choices < 1216499093 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you're useless. < 1216499096 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :in the topmost list < 1216499098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216499100 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :<<...>> does it two levels up < 1216499103 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :<<<...>>> three < 1216499103 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1216499110 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho < 1216499111 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :isn't that fairly simple? < 1216499111 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :be quiet. < 1216499116 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: no. < 1216499127 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you're fucking up the signal to noise ratio. < 1216499142 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh you < 1216499143 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1216499144 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't noise. < 1216499144 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1216499161 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :<...> = cycle choices at the list we're in; <<...> = cycle choices in the list containing the one we're in < 1216499161 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1216499170 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: i'd say it's simple to see what happens from the example, and i think tusho said it clearly < 1216499181 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you rise two levels in lists < 1216499190 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so you get on the (a ... d) level < 1216499196 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok i see now. < 1216499210 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and you get the list lambda (a (b * c) d), which you call for each elem in <> < 1216499225 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :wowzers. psygnisfive gets neglists < 1216499229 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i thought i'd never see the day < 1216499230 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216499241 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you guys are funny :) < 1216499242 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1216499248 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll go eat! -> < 1216499260 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(a (b <> e) f) => (a <(b c e) (b d e)> f) => ((a (b c e) f) (a (b d e) f)) < 1216499317 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its almost distributive. < 1216499324 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so lets see < 1216499337 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(list a b c) => '(a b c) < 1216499346 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(neg-list a b c) => ' < 1216499377 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :(list a (neg-list b c) d) => '(a d) => '((a b d) (a c d)) < 1216499442 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :eh.. < 1216499455 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont know if its actually distributive but its close with the <<..>> < 1216499503 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats relatively straight forward, but its not what i would call a negative list. < 1216499509 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :since its not a list. :P < 1216499521 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: it's not a list, it's a negative list < 1216499532 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :because it folds into the list its in < 1216499546 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho, it's not what i would call a negative list. < 1216499553 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you're wrong! ;) < 1216499559 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i cant be wrong. < 1216499565 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :since im not calling it a negative list. < 1216499572 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and therefore it is true that i would not call it a negative list < 1216499583 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and thus it is true that it's something that i would not call a negative list. < 1216499588 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont see why this is so hard to grasp. < 1216499602 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it's not < 1216499614 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i just wanted you to have to explain it < 1216499615 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216499654 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :stop trolling, tusho. < 1216499665 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you're wrong! < 1216499666 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216499727 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i'd just say they're non-deterministic list elements, where the number of angle brackets specifies how many items above the non-determinism applies to < 1216499728 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1216499743 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :the list is lie! < 1216500360 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the lie is list! < 1216500400 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :the negative list is a negative lie! < 1216500424 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i mean, i can see why you're compelled to call it a negative list < 1216500537 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric : since (a d) has an evaluated length greater than the external forms length, and therefore the external form has "negative" length < 1216500558 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not length psygnisfive < 1216500559 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it's not length < 1216500561 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :it's depth < 1216500570 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :(a) = 1 depth. ((a)) = 2 depth. < 1216500571 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :etc. < 1216500576 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :these are negative depth < 1216500578 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :whatever < 1216500580 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats not the point < 1216500620 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the point is that i dont think it really qualifies as a list. < 1216500639 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric : is itself not the list. only works in conjunction with some containing element < 1216500647 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and is itself merely shorthand for non-deterministic elements < 1216500705 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which is not terribly esoteric, in the grand scheme of things. < 1216500727 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if anything it seems like something ruby or lisp might do. < 1216500791 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i'd say its pretty esoteric < 1216500795 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :esp. when nopol _code_ even uses it < 1216500797 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and i have no idea how < 1216500817 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :nopol code is just lisp + some stuff right? < 1216500829 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :22:34… psygnisfive: i'd just say they're non-deterministic list elements, where the number of angle brackets specifies how many items above the non-determinism applies to <<< make a noun out of that, and i can add it as an optional name in the nopol spec < 1216500830 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i mean, it has the whole code-is-data-is-code thing right? < 1216500859 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :depth-specified non-deterministic elements. < 1216500869 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :or depth-specifying < 1216500932 0 :tusho!unknown@unknown.invalid QUIT :"And then-" < 1216500933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well it was a joke, i don't give a fuck what you wanna call them, but yes, they are a form of non-deterministic elements, although i didn't know this at the time of inventing them < 1216500943 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1216500945 0 :tusho!n=tusho@91.105.112.94 JOIN :#esoteric < 1216500945 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1216500957 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the formal specification for them isnt that hard either < 1216500973 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps not < 1216500997 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :let L be (... (... (... N ...) ...) ...) < 1216501021 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :let N be the "negative list" containing a b and c < 1216501043 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :let B be the number of angle brackets in the negative list's enclosure < 1216501146 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then L evaluates to a list L' such that the list enclosing N B levels up has the contents of N nondeterministically substituted < 1216501147 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :or something < 1216501156 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i'd need to word it better in that last part but < 1216501197 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yeah and then just the fact all are rewritten at the same time, making the concept even closer to non-determinism < 1216501298 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the explanations from earlier were rather confusing, tho. < 1216501325 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps, all i know is CakeProphet got it < 1216501338 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the concept is simple enough. < 1216501368 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :cakeprophet and tusho got it because they're as warped and twisted as you are so it makes sense to them to think it warped and twisted explanations :P < 1216501377 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :<3 < 1216501378 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :true, but as it's not terrible context-insensitive inherently, it's hard to explain < 1216501401 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that is, you can't show a simple rewrite rule < 1216501443 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse not. the rewrite depends on numerous things, and it probably requires a Type 0 language to implement using rewrite rules < 1216501458 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but the specification mathematically isnt terribly hard. < 1216501475 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yes, although i'm not sure what your point is < 1216501487 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err, right, that it was confusing < 1216501492 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216501498 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its not confusing! you just dont get it! < 1216501499 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1216501499 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no one's blaming you for not grasping it from that < 1216501505 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho is :( < 1216501514 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well tusho is gay < 1216501523 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :hey, dont insult gay people. < 1216501523 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :how did you know! < 1216501537 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :we knew because you look like a girl. < 1216501544 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you girl. < 1216501547 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :GIRLY GIRL. < 1216501622 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: its not confusing! you just dont get it! <<< err what? < 1216501633 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i was pretending to be tusho. < 1216501636 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216501642 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay, sorry, i guess that was obvious < 1216501654 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: its not confusing! you just dont get it! < 1216501709 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fuck you little brat you're so young i could be father's lover, stop making noise < 1216501711 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :* < 1216501714 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*your father's < 1216501732 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i bet his father was a girl too :O < 1216501738 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*zing* < 1216501743 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :;D < 1216501761 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so besides boring "negative lists", anything interesting going on? < 1216501768 0 :Keymaker!n=nobody@xdsl-237-87.nebulazone.fi JOIN :#esoteric < 1216501772 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: You're only saying that because you're not comfortable with your own masculinity. < 1216501773 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :OH SNAP < 1216501778 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :On another topic, hi Keymaker < 1216501783 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its true D: < 1216501791 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1216501814 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :keymaker, a little chinese man who sounds like hes trying to not be chinese way too hard. < 1216501833 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :actually i got this name after seeing matrix ii :P < 1216501847 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :THANK YOU CAPTAIN OBVIOUS < 1216501855 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :am i the only one who thought that the keymakers accent was way to fucking weird? < 1216501866 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :keymaker is cool. < 1216501868 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :he makes quines. < 1216501878 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hard to remember, matrix was like a decade ago < 1216501893 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it sounded like they overdubbed him with a voice actor in order to make him sound completely unchinese < 1216501897 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah Keymaker is awesome, unfortunately you never get to talk to him < 1216501909 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :probably writing /quit as i'm typing this < 1216501915 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but they pushed him to like.. 120% non-chinese < 1216501956 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric ::D thanks. in fact the reason i came to visit was because i wanted to link my whirl quine i made about a week ago :D < 1216501958 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :http://koti.mbnet.fi/yiap/programs/whirl/quine.wrl < 1216501971 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yeah, that's why you always come :P < 1216501986 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :i also finished a collatz program in brainfuck just a few minutes ago: http://bf-hacks.org/hacks/collatz.b < 1216501992 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :so i came to link both < 1216502012 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: i'm assuming that was by hand < 1216502032 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :there are no interesting esolangs :( < 1216502111 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: eodermdrome is quite interesting imo < 1216502127 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :also, oklopol, im trying to figure out a CFG for reactance's shorthands and im finding it tricky. lol < 1216502138 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :been trying to come up with a way to build an arbitrary graph from a finite amount of initial nodes and finite rules < 1216502143 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :i got so annoyed moving the whirls so i had to make a program to convert whirl ops to those 0s and 1s. that program took most of the time in the process... and as it was far from good i needed to create padding for jumps and various other things on my own. < 1216502159 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :eodermdrome seems interesting, is there any examples? < 1216502167 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: the first phase of whirl is just a syntax replacement? < 1216502178 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or is there an actual wheel when running?= < 1216502181 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :anyone have a link to eodermdrome? < 1216502187 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :no, there's actual wheel < 1216502194 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :eodermdrome doesn't have examples, no < 1216502196 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :or to whirl? < 1216502204 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :been trying to get ais523 to write some < 1216502207 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well how can i look into eodermdrome? :P < 1216502215 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :so it's not just replacing stuff with 0 and 1. one has to move those wheels (which i caleld whirls) with them to choose instructions < 1216502225 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: esolangs.org, i'd have to open a browser as well < 1216502236 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :http://www.esolangs.org/wiki/Eodermdrome < 1216502247 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i see, then it's a lot more interesting than i thought initially < 1216502261 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :yeah, it is, and damn annoying for making jumps < 1216502292 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and you fucker wrote a quine in it. can you elaborate on how? < 1216502296 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :generally moving in memory and stuff isn't as easy as one'd think, as there's no way to change data between the two wheels other than setting it to memory and the reading in other whirl < 1216502346 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, there are multiple wheels? i guess i'm remembering the whole thing wrong < 1216502350 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :two wheels < 1216502352 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1216502362 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :and each has different instructions, a few same, but essentially different < 1216502370 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah i recall now < 1216502376 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :yea < 1216502384 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that sounds pointlessly silly. :P < 1216502408 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: how did you do the quine? < 1216502415 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've always found quines quite hard in general < 1216502422 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :especially with esolangs < 1216502452 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :ah. first i created code snippets for memory storing (both 61 bytes) < 1216502464 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :then i wrote the main code < 1216502470 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :then i created data part of that < 1216502495 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :(i mean the snippets/pieces were 61 per every 0 or 1) < 1216502523 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :the data part is huge in this program... < 1216502531 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the boring is spinning out of control :( < 1216502552 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: buy a book < 1216502557 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :get a life < 1216502558 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i have one :o < 1216502564 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :a book, i mean. < 1216502569 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont have a life tho. < 1216502574 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :my advice: go outside < 1216502589 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :coming from a guy who wrote a quine in whirl. :p < 1216502604 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: stop being like that < 1216502621 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :crochetty? < 1216502650 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: anyway, err, so basically you have a way to write the data, then write the part that first writes the data as the code that makes it, then as it is, and you just put the program into the data < 1216502653 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :yes, but i spend a lot time outside nonetheless :] < 1216502657 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the way that one commented bf quine did < 1216502671 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :outside is boring < 1216502675 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so do i! i went walking around lond and paris for like 8 hours every day for the last two weeks :O < 1216502732 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the only difference between going outside to take a walk and writing a whirl quine is if you take the walk you don't get anything done < 1216502761 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :hm, it isn't that to me. anyways, first part that writes the data in memory, then part that prints the data part, then parts that prints the data, then of those two parts is created the real datapart < 1216502762 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and with a quine in whirl, you get negative amounts done? :P < 1216502790 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :hey, if you wrote a quine in whirl because it was listed in a negative list, would the negatives cancel out and result in being productive? < 1216502802 0 :lilja!n=ohsohot@a91-152-143-39.elisa-laajakaista.fi JOIN :#esoteric < 1216502874 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :god i hate it when people don't appreciate others' work on the grounds that it's not useful < 1216502896 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its not that i dont appreciate his work because its not useful < 1216502906 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i wasnt the one who even brought up getting things done! you were! :O < 1216502914 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: yeah that's the approach you usually use with esolangs i guess < 1216502922 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, same thing for all langs, but you don't see it as clearly < 1216502928 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont appreciate it because it seems like a silly rehash of some boring old concept. < 1216502929 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :in most of them yeah < 1216502953 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: well yeah, i agree that's a problem with most esolangs < 1216502970 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i mean, if you removed the "wheels" or "whirls" or whatever you want to call them < 1216502976 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :what distinguishes Whirl? < 1216502982 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :(and anyways, my esoteric work is useful to me) < 1216502986 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :removed the wheels? < 1216502990 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :does it just become Brainfuck? a funge? a whatever? < 1216502992 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :aren't those the point < 1216502998 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but ARE THEY? < 1216503002 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not a syntactic substitution kid < 1216503012 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i mean, the wheels have instructions? < 1216503026 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :remember those old phones where you choose number by rotating a ring? < 1216503039 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :how do you select instructions? how do these wheels play into anything? < 1216503040 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :right, so its a rotary dial version of brainfuck < 1216503050 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :whirl is a bit like that. it has two such rings with different commands, you have to move them. and different commands than brainfuck < 1216503054 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which means that its a silly modification of branfuck. < 1216503068 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it doesnt matter that it has different commands than brainfuck < 1216503085 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :you could say then almost every language in the world is silly modification of brainfuck < 1216503088 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its a silly hyperminimal tarpit < 1216503089 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm pretty sure it becomes fundamentally different to program in with jumps < 1216503106 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i haven't tried < 1216503107 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the wheels do absolutely nothing except make it hard to code in < 1216503122 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and even then, it doesnt need to be since you can remove the wheels entirely < 1216503131 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :without actually removing them! < 1216503143 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :how is that? < 1216503145 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if you can do that trivially, then it's a syntactic thing < 1216503162 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse it is, but the point is that the wheels themselves are a syntactic thing if thats the case. < 1216503172 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :keymaker, if your analogy to a rotary dial telephone is correct < 1216503194 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :then in some sense each position on the wheel, lets say each angle postion, 0 through 9, for instance, has an instruction, yes? < 1216503196 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, and they are not, because with jumps, the meaning of earlier code changes < 1216503212 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so you do something akin to move forward n positions < 1216503216 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :move forward m positions < 1216503221 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :etc etc to get from one instruction to the next < 1216503222 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1216503235 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :yes. you rotate ring with 1, 0 changes the direction, if there's 00 it changes the ring < 1216503241 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :(and executes the chosen instruction) < 1216503251 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so essentially to get to any instruction n < 1216503265 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you can just replace n with n numbers of 1, 0, then n numbers of 1 < 1216503267 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that is < 1216503273 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :to get to instruction 5 < 1216503282 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :11111*011111 < 1216503288 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :where * is used to indicate "do it" or whatever < 1216503293 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so you just won't believe it's not like that? < 1216503301 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which is fine < 1216503308 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not that i'm sure it's not, but i've said it's not, and you have no reason not to believe that < 1216503323 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but that means that the whole wheel gimmick is an obfuscation of instruction symbols since it can be trivially reduced to a 1-to-1 mapping. < 1216503333 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :it can't be < 1216503341 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but you just said it COULD. < 1216503350 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its implicit in your design. < 1216503355 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anything can be compiled to anything < 1216503358 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :1 rotates the ring forward one instruction yes? < 1216503369 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and 0 changes the direction of rotation, yes? < 1216503408 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if thats so, then to access instruct n, from instruction 0, you need to go forward n times. that is you need a string of n 1's in a row. < 1216503414 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :to get to instruction 5, you need 11111 < 1216503415 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1216503417 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1216503428 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216503430 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1216503432 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :for jumps you need to create the value in memory by using those instructions, then you have to perform the jump somewhere, land to some place where the rings are in same position than where you jumped and where control is on the same ring than it changed to when you jumped, and most likely you need padding there with sequences that don't execute any instructions < 1216503452 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so then if 0 reverses the direction of movement < 1216503460 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216503463 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you simply do undo all rotates after you do them < 1216503478 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so that you get back to 0 every time < 1216503484 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :just like a rotary dial phone < 1216503499 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and your instruction set maps cleanly to a binary string < 1216503509 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so basically the interesting part of it is the same as with YABC < 1216503521 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which means the wheel is nothing more than a gimmick. < 1216503529 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its nothing interesting, just an obfuscatory mechanism. < 1216503532 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you have to generate the jumps from calculations < 1216503532 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: you're wrong < 1216503534 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :like usual < 1216503534 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :theres nothing new conceptually. < 1216503536 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1216503546 0 :lilja!unknown@unknown.invalid QUIT :"KVIrc 3.2.0 'Realia'" < 1216503555 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if keymakers description of how the language works is correct, then im not wrong < 1216503583 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :you can read it here explained better: http://www.bigzaphod.org/whirl/ < 1216503586 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :without flow control, yes, it's trivial < 1216503607 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :even assuming that the wheels are absolutely necessary to access the instructions < 1216503612 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :they're still an obfuscatory gimmick < 1216503627 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :because the whole thing just reduces to a complication of your instruction set < 1216503641 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it introduces nothing fundamentally different in terms of computational perspective < 1216503643 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216503645 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not with jumps, psygnisfive < 1216503648 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not something you can just remove as a separate step, man < 1216503665 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you cannot make a trivial two-way compiler between that and, say, brainfuck < 1216503673 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :im not saying you could < 1216503675 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :even if you added the necessary shit to brainfuck < 1216503685 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :and that wouldn't brainfuck then < 1216503686 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :im simply saying that the wheels seem to be a gimmick and nothing more. < 1216503700 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but that it's just another esoteric language, new idea, but not the best ever? < 1216503704 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what is your point < 1216503716 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :in any case, this 1-to-1 mapping doesn't work with these jumps in whirl < 1216503721 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :my point is that its uninteresting and boring and gimmicky. < 1216503726 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: psygnisfive seems to hate anything that isn't a completely and utterly new paradigm which makes everything seem weird. < 1216503735 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :because everything else is boring and gimmicky and YAWWWWWWWWWWWWN < 1216503736 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its not that tusho < 1216503743 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :really? 'cause it seems that way < 1216503750 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :if you just change brainfucks symbols, is it a new esolang? < 1216503750 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1216503757 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its a pointless gimmicky rehash of brainfuck. < 1216503767 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :whirl isnt brainfuck < 1216503768 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :this isn't brainfuck, the instruction set is compeltely different < 1216503775 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but it is pointless and gimmicky. < 1216503777 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: many imperative esolangs are only fun and new in the sense that they are very different to program in, yes < 1216503785 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :anyway im off < 1216503786 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1216503798 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :maybe we can actually continue this discussion then, Keymaker :P < 1216503839 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i would like to do something in eodermdrome, the problem is i want example programs first < 1216503845 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :since i'm sure my interp is crooked < 1216503858 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and i can't really test my own code < 1216503870 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i *can*, but it doesn't feel right < 1216503974 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the thing i don't get about the whole everything-is-brainfuck mindset is, most esolangs actually differ a lot more in programming experience than, say, haskell and scheme. < 1216503996 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the whole language is usually a completely new challenge by just a change of a few operations < 1216503997 0 :timotiis!unknown@unknown.invalid QUIT :Connection timed out < 1216504009 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :yes, definitely < 1216504035 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :haskell and scheme are very different, but only when you start making something big; who the fuck makes anything big in esolangs anyway :) < 1216504039 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :to me only things resembling brainfuck are those languages that are made to just replace brainfuck instructions < 1216504052 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216504070 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1216504081 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :and tusho, what was the discussion? < 1216504087 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216504096 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the discussion is a lie < 1216504098 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: the one not involving psygnisfive saying how boring whirl was < 1216504120 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :ah. so what was said last? < 1216504231 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it is true of course that not many languages on the wiki have that "new computational model" feelign < 1216504233 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*feeling < 1216504247 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :except for a few of ais's languages, and some other exceptions < 1216504280 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's been my lifelong dream to invent a computational model < 1216504305 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but all the simple ones are already taken, and most things are trivially equivalent to them :< < 1216504323 0 :Corun!n=Corun@cpc1-rdng15-0-0-cust168.winn.cable.ntl.com JOIN :#esoteric < 1216504327 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :i think there are many great language out there, but also too many that are purposefully made to be like brainfuck < 1216504442 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :agreed < 1216504458 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1216504491 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :n82u2 < 1216504614 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :has anyone ran that collatz program i linked? see if it works any fast < 1216504633 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :i tried to make it so < 1216504704 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i would have to write a bf interpreter < 1216504721 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for some reason i never have one at hand even though i've written like a million of them < 1216504754 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :and a million available in the net, so you wouldn't need to write < 1216504794 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yes but i don't like doing that < 1216504832 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll write one now, a brainfuck interpreter a day is good for the health < 1216504918 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Invent a new computational model, eh? < 1216504933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yeah < 1216504939 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Plain imperative and functional, then rewriting and cellular automata... < 1216504946 0 :calamari!n=calamari@ip24-255-58-177.tc.ph.cox.net JOIN :#esoteric < 1216504979 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Though it's pretty easy to express all of those as rewriting. < 1216504995 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well ef is a somewhat new paradigm, unfortunately you can think of it as a form of declarative programming. < 1216504996 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :and isn't it possible as well? < 1216505034 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :or well, maybe not. i didn't think enough... < 1216505037 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but paradigm isn't exactly a computational model < 1216505055 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :isn't what possible as well? < 1216505080 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :ef, eh? < 1216505096 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :ACTION compromises with "eg" < 1216505119 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :expressing all the computational models in rewriting. but i was thinking more like implementing, so ignore what i said < 1216505119 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ef is my fixed-point language < 1216505137 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: you can both express and implement, same thing really. < 1216505195 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. fix fix, fix (fix fix), fix fix (fix (fix fix)), fix (fix fix) (fix (fix fix)), fix fix (fix (fix fix)) (fix (fix fix))... < 1216505229 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ihope: not exactly :) < 1216505236 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1216505245 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's more like functional programming, but you always apply everything infinite times < 1216505263 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also there is a quite intelligent pattern matching < 1216505285 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so you express everything as finding a normal form < 1216505324 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, right, the brainfuck < 1216505422 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Interesting. < 1216505451 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :speaking of cellular automata, it isn't really used too much in esolanguages. i have practically never done stuff with it < 1216505455 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :The fix function only takes one argument, of course. < 1216505471 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: that's precisely why we need to create a programming language for cellular automata. < 1216505495 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :quite right < 1216505577 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ihope: there is no fix function < 1216505602 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :easier said than done though... but also more esolanguages based on that could be interesting. i'll have to try something. i have many language plans but for some reason only few ever get done < 1216505602 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and it would make no sense to introduce one, although you can implement it as, err, apply < 1216505733 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Suddenly, I get the idea for a programming language where you can apply any programming language any ordinal number of times... < 1216505862 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1216506060 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: so which was i supposed to test? < 1216506103 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :found < 1216506297 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :http://www.vjn.fi/pb/p255422423.txt < 1216506302 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hard to say about the speed of this < 1216506326 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the numbers show quite fast on my screen, and it's written in python, so i guess it's fast < 1216506341 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the extra output is just the number of cycles at different points of evaluation < 1216506345 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i made it output @ newline < 1216506362 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1216506433 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: new Mycology's up, has the null-byte test someone (ais?) came up with < 1216506504 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :An analog signal processing programming language would be interesting. < 1216506530 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :elaborate. < 1216506557 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I guess electronics is (are?) one of those. < 1216506623 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to make a sine wave with DC < 1216506683 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'd say "is" is more used, but both are okay < 1216506692 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but you're the native so who cares what i think < 1216506701 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :have fun < 1216506824 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1216506845 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :We care what you think when you tell us how to use "used to" correctly. < 1216506925 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1216506937 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that can mean a lot of things < 1216507015 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a vacuum cleaner can be used to get rid of a penis / i used to put my penis in a vacuum cleaner as a kid / i'm used to having my penis sucked by a vacuum, cleaner < 1216507053 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"vacuum, cleaner" may not be the best way to write that < 1216507226 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :a vacuum cleaner can be used to get rid of a penis < 1216507227 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :... < 1216507253 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1216507527 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, tusho, i stand behind my words < 1216507553 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. It appears my circadian rythym is a bit. . . Off. < 1216507575 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Breakfast at 11, lunch at 3, dinner at (probably) 8 or 9. . . < 1216507578 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :happens to the best of us < 1216507594 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i had breakfast at 20.00 or something < 1216507612 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :i had breakfast like 10.30 < 1216507613 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :woke up at 14.00 < 1216507622 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :lunch about three-five < 1216507629 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :dinner, uhh, very recently < 1216507650 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh, i'm such a story-topper < 1216507765 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :good bye. i'll return some day with some new programs < 1216507776 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: aww < 1216507777 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :come in tomorrow! < 1216507779 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :we're fun! < 1216507793 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :hah, sorry, i generally hate irc < 1216507801 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you hate us because we're FUN >:( < 1216507815 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1216507828 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Keymaker: bye < 1216507830 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :we'll teach you the secrets of being fun if you come in tomorrow < 1216507835 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :that's how awesome we are. < 1216507836 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yes, that too. < 1216507837 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :bye. :p < 1216507842 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :bye :) < 1216507844 0 :Keymaker!unknown@unknown.invalid PART #esoteric :? < 1216507871 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :eyes are getting tired it seems, SparseGraph -> StereoTypical < 1216507878 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :hahahaha < 1216507890 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :was a bit wtf to see that in the middle of code. < 1216509969 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :so tell me why jumps make keymakers language nothing more than a gimmick. < 1216509984 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oh no < 1216509986 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not this again < 1216509989 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :anyway its not keymakers language < 1216509997 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :whatever < 1216510003 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tell me how jumps make it not gimmicky. < 1216510134 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rolls eyes < 1216510141 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thats not an explanation. < 1216510149 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I suddenly realize I was trying to implement goto in Haskell. < 1216510156 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ihope: awesome. why. < 1216510157 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :keymaker's the one who's actually coded in it, so i'd say the onus is on you < 1216510163 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive < 1216510174 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i already showed how its gimmicky. < 1216510179 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no you didn't. < 1216510182 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you just stated untrue things < 1216510185 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :when we told you they weren't true < 1216510187 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i did no such thing tusho < 1216510188 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you stated them again < 1216510193 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :callCC (\cont -> let label = cont label in return label) was what I'd come up with; that's the same as callCC (return . fix). < 1216510201 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: why not compile something into it and show us how it's done < 1216510203 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :all you said was that it wasn't gimmicky due to jumps. < 1216510222 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I know why. < 1216510230 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the ring commands are mappable directly and trivially to individual non-ring based instructions. < 1216510271 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216510271 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :th < 1216510271 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ey < 1216510272 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :are < 1216510273 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not < 1216510276 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes, they, are. < 1216510276 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :because < 1216510277 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :they < 1216510277 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :change < 1216510278 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :the < 1216510279 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :offset < 1216510281 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :of < 1216510283 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :jumps < 1216510285 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :so < 1216510287 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :you < 1216510289 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho < 1216510289 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :have < 1216510291 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :to < 1216510292 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :did you read what i just said? < 1216510293 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :think < 1216510296 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ahead < 1216510297 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :a < 1216510299 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :lot < 1216510301 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :no < 1216510303 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :its < 1216510305 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not < 1216510307 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :the < 1216510309 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :most < 1216510311 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :imaginative < 1216510313 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :paradigm < 1216510315 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :ever < 1216510317 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :but < 1216510317 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :tusho stop being a child. < 1216510319 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :its < 1216510321 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :marginally < 1216510324 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1216510336 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :so < 1216510336 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :there < 1216510336 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its not marginally interesting at all. < 1216510336 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: i just explained why jumps make it non-gimmicky < 1216510336 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: sorry. next time i'll follow your example and state the same thing over again < 1216510340 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :ACTION /ignores tusho's one-word-per-lineness < 1216510364 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :where do you see jumps in the spec, btw. < 1216510389 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: it obviously has control flow < 1216510392 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :or it wouldn't be tc < 1216510402 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :do you mean if? ok. ill look at that. < 1216510409 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :If If memval is not 0, then add value to program position pointer (see PAdd). < 1216510430 0 :Judofyr!unknown@unknown.invalid QUIT : < 1216510469 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this is a computed goto, fairly interesting a thing in a tarpit < 1216510476 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :as it's not trivial to create the offsets < 1216510486 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :exactly < 1216510492 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :the wheel means that the offsets are very hard to calculate < 1216510496 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :along with the fact that it's hard anyway < 1216510643 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmph, why do they call it dijkstra's algo, who hasn't invented that < 1216510662 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: names are useful. < 1216510665 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i used that when i was like 13 < 1216510666 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well sure < 1216510667 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :and dijkstra did it first. < 1216510670 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but asjdfokajds still :) < 1216510675 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, yeah < 1216510689 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: remember, you only get these things easily because CS has advanced so much since then < 1216510692 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :back then it wouldn't have been so trivial < 1216510700 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm not saying it shuold actually be changed, i'm once again just wondering how great it would've been to have been born like 50 years ago. < 1216510711 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :not very < 1216510711 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1216510725 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the only things that modify memval are store, and intio. < 1216510737 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i didn't know any cs when i was 13 < 1216510743 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i knew about arrays < 1216510752 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: well yeah but cs has effected programming < 1216510752 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :therefore the only things that can affect the way the if's evaluate are store and intio. < 1216510754 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :affected < 1216510755 0 :tusho!unknown@unknown.invalid PRIVMSG #esoteric :whatever < 1216510780 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tusho: i know i know, that's not the point < 1216510791 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm just pissed off, i don't actually have a point! :D < 1216510900 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: i believe keymaker over you in this issue, unless you actually show a bijection < 1216511060 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Upon seeing what Dijkstra's algorithm does, I immediately conceived of an algorithm that would do that. Now I'm reading to see if they're the same. < 1216511147 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Looks like it. < 1216511533 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you have a priority queue containing nodes you haven't currently explored yet, and you just iterate: pop the queue, then add all the nodes connected to the popped one into the priority queue updating costs. < 1216511585 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because you're always handling the node that, from all nodes that can be accessed right now, is found the "fastest", when it comes to total cost of the path to it, you find the shortest paths < 1216511612 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :easier to invent than understand, really < 1216511623 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Have some current nodes, each with a distance assigned to it; take the one with the smallest distance and make all the unvisited nodes next to it current, and make the original one uncurrent. < 1216511658 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :not that this is a proper example, since it doesnt touch on the if construct but < 1216511678 0 :lilja!n=ohsohot@a91-152-143-39.elisa-laajakaista.fi JOIN :#esoteric < 1216511703 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ihope: yes < 1216511720 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's it < 1216511748 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :the example from that page, the do 1+1, can be summed up as nothing more than "swap not store add store swap one intio" < 1216511763 0 :calamari!n=calamari@ip24-255-58-177.tc.ph.cox.net JOIN :#esoteric < 1216511784 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :where swap = 00, not = 11111111110000011111111110, store = 1100000110, add = 111000001110, one = 110000010, and intio = 11111111110000011111111110 < 1216511786 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :priority queues are the main point there, though, that's where the interesting comes in < 1216511818 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"swap not store add store swap one intio" <<< i don't get this < 1216511827 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm assuming stack-based < 1216511830 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :swap errors in my head < 1216511833 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :see above. < 1216511833 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :intio makes no sense < 1216511835 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1216511837 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :swap is just shorthand for 00 < 1216511843 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah. < 1216511846 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :not is just shorthand for 11111111110000011111111110 < 1216511847 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1216511850 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah, that kinda swap < 1216511855 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :swap rings < 1216511859 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1216511860 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :switch, if you want. < 1216511861 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :whatever. < 1216511865 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it doesnt matter what you call it. < 1216511871 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but, err, you just do some operations, that's just about rolling the wheels < 1216511885 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i know. ill look at control flow in a bit. < 1216511888 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :as you said, right < 1216511894 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but just from that its pretty trivial. < 1216511898 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sorry, i'm reading bottom-to-top, it seems :P < 1216511906 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yeah, of course < 1216511918 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i shall look at if in a moment tho.