< 1199926256 0 :ehird`!unknown@unknown.invalid NICK :ehirdsleep < 1199926308 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, you bastard. :p < 1199929754 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :i agree < 1199929980 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Hello people. < 1199930027 0 :Sgeo!n=Anonymou@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1199930086 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Hi all bye all. < 1199930560 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :``m``s``bs``b`s``c``b``c`t`k0ki#``c``bc``c``bc``b`ci`k.xri``c``bb``sii``b``c``bc``b`bc``c``bc``b`bb``cb``b`bttkii``sb``sbi < 1199930564 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Poifect. < 1199930575 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Maybe now, 99 bottles of beer! < 1199930601 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Maybe, MAYBE, I'll start working on PSOX again tomorrow < 1199930606 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Anyone have any comments about PSOX? < 1199930621 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Not much, not much < 1199931411 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Make it work. < 1199931415 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :;p < 1199931435 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(then I can make my Macro Language to End All Macro Languages working. :p) < 1199931529 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks: language which is moderately full-featured, supporting PSOX: crazy? :p < 1199931590 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Lessee here. . . lnum foo=2, anyone? < 1199931724 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :foo=2? < 1199931726 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1199931735 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :A typesystem. < 1199931736 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1199931754 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :"foo+=2" would also work, thanks to types. ;p < 1199931766 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Would this language support the REGEX type? < 1199931779 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That would be tricky. < 1199931819 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Particularly since I'm thinking of managing operator overloading to handle the types. < 1199931829 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(without classes. Just macros. I'm insane. ;)) < 1199931929 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1199932019 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Perhaps "new_type lnum;macro lnum_+(x, y){psox_call(ADD_LNUM, x, y);}" etc. < 1199932297 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :so you're making a hardcore version of BFM? < 1199932308 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :s/BFM/PEBBLE/ < 1199932315 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The name change happened ages ago, people! :p < 1199932379 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: You know what would be *truly* insane? A way of calling C functions from PSOX. < 1199932396 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, go write a Domain for it, if you wantr < 1199932398 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :*want < 1199934155 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :hey guys, i just made a BF interpreter in about 5 minutes < 1199934159 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :with python < 1199934187 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :That's because Python is awesome. < 1199934675 0 :puzzlet_!unknown@unknown.invalid PRIVMSG #esoteric :and brainfuck is minimalistic < 1199934683 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Also that. < 1199934713 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And because you have been crippled by your lack of malloc. < 1199934754 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :o < 1199934980 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think i've written one in less than 3 minutes, but i just wrote the same program and took time :-) < 1199934999 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has weird hobbies < 1199935106 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :If you're here, obviously < 1199935614 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1199935623 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :here, i'll pastebin it < 1199935773 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :http://rafb.net/p/bXlg4855.html < 1199935848 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Is += the bs = bs + stuff? < 1199936308 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :GreaseMonkey: bs.append(i) is faster than bs+=[i] < 1199936350 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :Oh, that's that. < 1199936352 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :python will actually do bs = bs + [i], baking a list of i, then concatenating the two lists baking a third list < 1199936444 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, also bs.pop() for bs=bs[:-1] < 1199936460 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks that's a Very Crappy System < 1199936498 0 :oklopol!unknown@unknown.invalid QUIT :"for the need to encumber" < 1199936512 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :well, it works. < 1199936518 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :and i will take note of that. < 1199936544 0 :oklopol!n=ville@194.251.103.33 JOIN :#esoteric < 1199936554 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :how do i always manage to do that... < 1199936605 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :did i miss something? < 1199936610 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :[04:41] well, it works. < 1199936611 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :[04:41] and i will take note of that. < 1199936621 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i see < 1199936640 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :btw, what's better: < 1199936645 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :inp = inp[1:] < 1199936649 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :inp[:1] = '' < 1199936651 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :or what? < 1199936665 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1199936666 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :You can't change part of a string. < 1199936668 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :del inp[0] < 1199936672 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1199936674 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's a string. < 1199936681 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then the first one is the only possibility < 1199936685 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :ok. < 1199936705 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if you do that lots, you can do inp=list(inpt) < 1199936709 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*inp < 1199936713 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and then del inp[0] < 1199936759 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks that's a crappy system too < 1199936779 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :dunno... python just lacks beauty... < 1199936792 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :unlike GRAPHICA, HAVE I MENTIONED GRAPHICA < 1199936796 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :... < 1199936800 0 :Slereah-!unknown@unknown.invalid PRIVMSG #esoteric :MAYBE A LITTLE < 1199936803 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1199936818 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i had some totally awesome ideas for it < 1199936830 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and here i am, idling and wondering why i'm not coding it. < 1199936839 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll get something to drink, and then code something < 1199936840 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1199937409 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :drinking?!! < 1199937517 0 :Slereah-!unknown@unknown.invalid QUIT : < 1199937894 0 :Untitled-13615D!n=Test4@ANantes-252-1-14-157.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1199937999 0 :Untitled-13615D!unknown@unknown.invalid PRIVMSG #esoteric :Anyone knows how to disable the automatic windows update? < 1199938009 0 :Untitled-13615D!unknown@unknown.invalid PRIVMSG #esoteric :I can't stand it rebooting my computer behind my back. < 1199938013 0 :Untitled-13615D!unknown@unknown.invalid NICK :Slereah < 1199938035 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no one knows :\ < 1199938080 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I don't know how many data I've lost because of it. < 1199938534 0 :lament!n=lament@S010600110999ad06.vc.shawcable.net JOIN :#esoteric < 1199938541 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :I have returned to rule over your channel once again! < 1199938556 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Pray for mercy, and you might be spared! < 1199938573 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Or else! < 1199938574 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :But probably not. < 1199939165 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :OMFG < 1199939409 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Aw hell. Now the lazy evaluation is playing tricks on me for the input! < 1199939410 0 :Sgeo!unknown@unknown.invalid QUIT :Remote closed the connection < 1199939442 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I'll have to find a way to turn it the right way < 1199939527 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :everybody knows lazy evaluation and i/o are incompatible :) < 1199939561 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :everybody knows kung fu fighting < 1199939784 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :lament : Lies! < 1199939818 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I just have to make some lambda expression for the input to be evaluated first, then placed at the end. < 1199939867 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Probably just ^ab`ba < 1199939890 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Although it would have to be evaluated after. < 1199939892 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Damn. < 1199939897 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :What to do. < 1199939932 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I really don't want to make an anti-d combinator. < 1199943054 0 :calamari!n=calamari@ip24-255-58-134.tc.ph.cox.net JOIN :#esoteric < 1199945122 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1199945248 0 :immibis!n=immibis@125-236-169-77.broadband-telecom.global-gateway.net.nz JOIN :#esoteric < 1199947836 0 :immibis!unknown@unknown.invalid QUIT :"Hi Im a qit msg virus. Pls rplce ur old qit msg wit tis 1 & hlp me tk ovr th wrld of IRC. Man who run behind car get exhauste < 1199951999 0 :clog!unknown@unknown.invalid QUIT :ended < 1199952000 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1199955023 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"Hi Im a qit msg virus. Pls rplce ur old qit msg wit tis 1 & hlp me tk ovr th wrld of IRC. Man who run behind car get exhauste < 1199955317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, Anyone knows how to disable the automatic windows update? <-- sure, 1) change to linux < 1199955373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and 2) somewhere under "my computer" -> right click -> properties -> somewhere < 1199955377 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if I remember correctly < 1199955379 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in xp < 1199955387 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION haven't used windows for years < 1199955592 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I can't install Linux. < 1199955594 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I tried! < 1199955602 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I'm just not that computer savvy. < 1199956001 0 :cherez!unknown@unknown.invalid PRIVMSG #esoteric :I found the Ubuntu installation at least an order of magnitude easier than the XP installation. < 1199956040 0 :cherez!unknown@unknown.invalid PRIVMSG #esoteric :But immediately after confirming the Ubuntu was that easy, I installed Gentoo by hand, so I might not be the right demographic. < 1199956057 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Problem is, I want both on my computers. < 1199956093 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :For instance, to run most commercially released softwares! < 1199956155 0 :cherez!unknown@unknown.invalid PRIVMSG #esoteric :I've never met anyone who used more than a tiny fraction of commercially released software. < 1199956375 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, one would be enough. < 1199956832 0 :cherez!unknown@unknown.invalid PRIVMSG #esoteric :Which? < 1199956905 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :No idea, since I can't install it! < 1199956997 0 :cherez!unknown@unknown.invalid PRIVMSG #esoteric :How did you try to install it? < 1199957006 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Using a Kubuntu CD. < 1199957029 0 :cherez!unknown@unknown.invalid PRIVMSG #esoteric :Did you try the guide? < 1199957051 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1199957053 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Didn't saw it. < 1199957095 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :After I installed it, I couldn't run either Windows or Linux. < 1199957099 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :So I'm a little shy now. < 1199959705 0 :jix!n=jix@195.37.106.60 JOIN :#esoteric < 1199960644 0 :jix!unknown@unknown.invalid QUIT :"CommandQ" < 1199963375 0 :johnl!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1199963634 0 :puzzlet_!unknown@unknown.invalid QUIT :Remote closed the connection < 1199963641 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1199967446 0 :Tritonio__!unknown@unknown.invalid QUIT :"Bye..." < 1199968928 0 :Visitor-CD3F3!n=Test4@ANantes-252-1-54-196.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1199969571 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1199970338 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric < 1199972968 0 :jix!n=jix@dyndsl-080-228-177-057.ewe-ip-backbone.de JOIN :#esoteric < 1199978744 0 :Visitor-CD3F3!unknown@unknown.invalid NICK :Slereah < 1199978929 0 :jix!unknown@unknown.invalid QUIT :Read error: 145 (Connection timed out) < 1199979007 0 :jix!n=jix@dyndsl-085-016-234-111.ewe-ip-backbone.de JOIN :#esoteric < 1199979736 0 :ehirdsleep!unknown@unknown.invalid NICK :ehird` < 1199979813 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i have some kind of obsession with writing scheme interpreters... < 1199979817 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i'm writing one in javascript, now < 1199980046 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :some fishes and some noodles, trallalalalaa < 1199980425 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :lah da da dah? < 1199980547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :game of life is turing complete right+ < 1199980558 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/+/?/ < 1199980590 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1199980595 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yay, < 1199980597 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :there's a turing machine in it < 1199980600 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :see: Golly distribution < 1199980607 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but, don't even *bother*, kind of thing < 1199980624 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you can do it but many civilizations will pass before you get anything useful to happen < 1199980634 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :beyond counting in hexadecimal which there is a working Life file for. < 1199980662 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have made some insane stuff now. while not turing complete (because of too slow and limited size) I implemented game of life inside a single player rpg, using "floor tiles" in it and some scripting in it's special language < 1199980676 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1199980683 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :did that last week when my PC was broken and I had to use my old (from around 1997) mac < 1199980684 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :speed hsa nothing to do with turing completeness :) < 1199980686 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :size does, though < 1199980699 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sadly the game engine is some shareware thing < 1199980717 0 :Jontte!n=joonas@dsl-hkibras1-ff0ac300-216.dhcp.inet.fi JOIN :#esoteric < 1199980728 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you wrote brainfuck in bash: now do scheme < 1199980729 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, yes, indeed, an "area" in that game engine is limited to at most 64x64 tiles, so... < 1199980739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, I don't have time currently < 1199980744 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :aww < 1199980745 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1199980791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh btw that game engine, had weird scripting language, for example if you nested a loop, all variables from the outer loop got unset, so what I did was use some if to reset variable at end of loop if reaching edge of board and such < 1199980792 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1199980801 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :lmao < 1199980811 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :nesting loop idiocy reminds me of BestFriends.js < 1199980815 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh? < 1199980817 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the wiki page helpfully says: < 1199980824 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Note: YOU CANNOT use nested loops in BestFriends.js < 1199980825 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"BestFriends"? < 1199980826 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(on the esolang wiki) < 1199980837 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: a pseudo-brainfuck thing in javascript. < 1199980837 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :BF < 1199980837 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :BrainFuck < 1199980839 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :BestFriends < 1199980846 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the wiki page is HILARIOUS < 1199980852 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well, it isn't brainfuck if it can't handle nested loops < 1199980855 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway link? < 1199980859 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :http://esolangs.org/wiki/BestFriends.js < 1199980874 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: what i said had nothing to do with anything < 1199980890 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :New enterprise features like 2d! But you CANNOT use nested loops, sorry. Also, the input command doesn't work in v32.34 < 1199980896 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :We are working on this difficult problem! < 1199980924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lol? < 1199980927 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it is turing complete though :| < 1199980934 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :because you can run JS' eval() < 1199980947 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: from: "Puts the first character of the input string in the current memory cell. As of the first version, this command does not work. The problem is being looked at carefully." < 1199980960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh yeah < 1199980987 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i bet they just do: < 1199980994 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :str.slice(pos,-1).index("]") < 1199980996 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :to match loops < 1199981013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Turns the program pointer 90 degrees left (anticlockwise)."? < 1199981014 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :bestfriends owns :) < 1199981023 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :http://www.thegriddle.net/BestFriends/BestFriends.js oh jeez < 1199981032 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :they use a global var pointing to the start of the loop XD < 1199981045 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hahah < 1199981052 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :use a stack! < 1199981063 0 :faxlore!n=more@137.195.250.2 JOIN :#esoteric < 1199981063 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :'*** Each row should be the same length. See the sample below for an example of how it's used. < 1199981063 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :' < 1199981066 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the example is off by one char < 1199981071 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :one of the lines is one char longer than the other < 1199981072 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1199981078 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ponders some semi-object orientation in bash < 1199981120 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: trivial < 1199981129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed, if you use eval < 1199981132 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you have arrays, so just store the data as an array < 1199981135 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but is it possible without eval? < 1199981137 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1199981155 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :how do you do dispatch? < 1199981162 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :subclassing .. ? < 1199981170 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I said "semi-object" :P < 1199981175 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :actually I don't think I want to know :P < 1199981191 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but as bash is turing complete it SHOULD be possible < 1199981204 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you write a bash++ interpreter coded in bash! :D < 1199981210 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION runs < 1199981230 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :something like: < 1199981235 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :obj = array < 1199981237 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :well < 1199981239 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :obj = array of entries < 1199981247 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :entry = array with [0] = method or prop < 1199981255 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1199981265 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :array can't have strings as indexes < 1199981269 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :class = array of keys, where if class[i] = key, obj[i] = value bound to key < 1199981272 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: see that < 1199981301 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I'd have to use my libhash (that doesn't do hashes really, just associative arrays) < 1199981341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :using variable names like hsh_myhash_fe1482b9afd < 1199981342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;D < 1199981349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1199981352 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :please see what i said < 1199981360 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads < 1199981366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1199981367 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :good idea < 1199981378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, however, lookup speed would be terrible < 1199981391 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :correction: speed would be terrible < 1199981392 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that's a given < 1199981403 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :The Little Schemer's environments does something similar, btw < 1199981405 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :with two lists. < 1199981414 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"little schemer"? < 1199981430 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION points to his irc bot in bash at envbot.org, got decent speed < 1199981431 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the best book about recursion < 1199981437 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it teaches you to think recursively < 1199981451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION shudders < 1199981458 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it usess Scheme as its language but that's not the point, you can easily go through it without a scheme system < 1199981461 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and many do < 1199981464 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's well worth a read < 1199981466 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, I'm thinking about the big O all the time ;P < 1199981469 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :up there with SICP < 1199981470 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :Why shudder? < 1199981482 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: he's an imperative weenie? < 1199981483 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1199981484 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well for a functional language it makes sense < 1199981487 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1199981497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and when I use lisp I do use recursion < 1199981508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I try to avoid it otherwise < 1199981525 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the question, anmaster, is - why do you use an inferior language which doesn't support such expressive coding of algorithms? < 1199981532 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :well you should avoid recursion in C when you want TCO < 1199981537 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :because of your biases against lisp that you've got from other people, I bet. < 1199981538 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :otherwise.. use a real language? < 1199981539 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1199981547 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :(real languages do TCO) < 1199981551 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, hm? < 1199981553 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: well yeah, if you're using C then the only thiing you should be doing is writing an interpreter or something ;) < 1199981559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I do use lisp a lot, I'm an emacs user < 1199981565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so elisp < 1199981583 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :elisp is not lisp. < 1199981587 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1199981587 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://envbot.org/trac/browser/anmaster-trunk/lib/hash.sh <-- not nice code, but works < 1199981603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, hm? what is the difference, they certainly have a lot in common < 1199981623 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :A lot of paranthesis ":D < 1199981625 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: elisp is a hacky, horribly-designed and implemented language that happens to have a lot of parentheses < 1199981633 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ACTION lol < 1199981636 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: stfu let me take that metaphor :P < 1199981636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1199981644 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :great minds ehird! < 1199981668 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: great minds! ... and sheep < 1199981670 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1199982697 0 :sebbu2!n=sebbu@ADijon-152-1-103-24.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1199983002 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1199983062 0 :oerjan!unknown@unknown.invalid QUIT :Client Quit < 1199983180 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1199983298 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i think R5RS scheme was designed by people who hate implementors < 1199983307 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :Hahaha < 1199983328 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I like this new approach to language design < 1199983342 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :'how can we make a language that looks so elegant and simple PURE LIQUID DEATH to implement?' < 1199983358 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :'mwahahaha! now all implementors will commit suicide and we shall RULE THE WORLD!' < 1199983474 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :however, i still implement it anyway < 1199983475 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oh well. < 1199983487 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :anyone have a favourite language they want a scheme in? :P < 1199983549 0 :sebbu!unknown@unknown.invalid QUIT :Success < 1199983565 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Malbolge :) < 1199983588 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :given that someone already made a scheme in unlambda... < 1199983669 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hahaha. no :( < 1199983757 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :is there one in brainfuck btw? < 1199983791 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :that sounds painful :[ < 1199983806 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :nowhere near as painful as in Malbolge, i trust < 1199983894 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and no there isn't < 1199983929 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :because fitting that stuff into a tape-heap thing is PAINFUL < 1199983930 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1199984050 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :maybe make a scheme -> bf, then a scheme in scheme ... and < 1199984051 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :scheme in unlambda? fully compliant to the spec? < 1199984109 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: scm->bf is the hard bit < 1199984111 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: obviously not < 1199984119 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: although it might have continuations, i mean that's not vey hard with c < 1199984120 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1199984120 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :obviously? < 1199984133 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :r5rs is small but not trivial < 1199984145 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it is Liquid Flaming Death to implement 100%, even in C or whatever < 1199984152 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but a small subset is easy < 1199984201 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :indeed, it would be hard to do it in unlambda, i just don't think it's *obvious* it's not full r5rs < 1199984243 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :have you ever read r5rs < 1199984249 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :implementing that in unlambda is just silly.. < 1199984262 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah i've read it < 1199984267 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :how is it silly? < 1199984267 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and there's no point i mean once you have the basic scheme its just tedious function after function after that. < 1199984289 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: it would need vectors < 1199984296 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :do you think it would have VECTORS? < 1199984296 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :in unlambda? < 1199984298 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think the scheme-alike in question has no mutable data, like unlambda < 1199984301 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm.... < 1199984311 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :vectors can be lists.. < 1199984315 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: nope < 1199984318 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no? < 1199984320 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: lookup time has to be O(1) < 1199984326 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you acn't have that with a linked list < 1199984326 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, it specifies that? < 1199984327 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :have a nice day! < 1199984337 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i must have not payed attention < 1199984340 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :iirc yes < 1199984354 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i recall "vectors are usually faster in lookups" < 1199984357 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i'll check < 1199984391 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :specifying ordos is interesting because it actually may disallow implementation in many languages < 1199984443 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but anyway < 1199984450 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :obviously a toy unlambda impl won't do all scheme < 1199984460 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :because it's pretty redundant, you don't get extra cool points beyond call/cc < 1199984516 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: link? < 1199984551 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hm question < 1199984558 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :is there any native-code INTERCAL compiler? < 1199984561 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :preferably optimizing :D < 1199984570 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, doesn't specify access time of course < 1199984615 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't recall < 1199984618 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :pretty redundant? it'd be awesome to make a full scheme in unlambda < 1199984625 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: no, it wouldn't < 1199984637 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sure would. < 1199984652 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :someone tell oklopol he's wrong < 1199984723 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :matter of opinion < 1199984797 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and i'm not wrong, why not do it good if you're gonna do it < 1199984841 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :basically, once you add mutable structures you have to pass a simulated heap... < 1199984875 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1199984972 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :any other language suggestions for a scheme? ;) < 1199984977 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if there's no mutable structures, i'd hardly even call it a scheme < 1199984983 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :befunge < 1199984997 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps a crippled lisp < 1199984998 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :might even be fairly doable... < 1199985000 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: Do it in Agda2 or Coq or Epigram or something < 1199985004 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :crisp < 1199985016 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yow < 1199985017 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1199985018 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :maybe. < 1199985023 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: never heard of any of those but Coq < 1199985063 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: everyone's done that ;) < 1199985075 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :done what? < 1199985084 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :wroten some kind of lisp interpreter in a minimal lisp < 1199985101 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have no idea what that has to do with anything, though < 1199985102 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: the parser will be difficult in befunge :) < 1199985108 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i assume you mean befunge-98 btw? < 1199985111 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :to escape the 80x24 < 1199985114 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1199985138 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to think of a pun involving Befunge and Scheme to use as a name < 1199985139 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1199985161 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan said you need to simulate a heap to have mutable structures, i said if it does not have mutable structures, it's so far from the spec i'd hardly call it scheme < 1199985162 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hm i haven't got a befunge implementation here < 1199985169 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :what's the best (i.e. fastest) interpreter out there right now? < 1199985174 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :parser for scheme difficult? < 1199985191 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: in befunge yeah :) < 1199985197 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if it lacks mutable structures, you cannot reason with it as you can with scheme, making it definitely less powerful < 1199985197 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no idea < 1199985206 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: your >>> sch has no mutable structures < 1199985210 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just lacking vectors doesn't matter much < 1199985213 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no set-car! or set-cdr! < 1199985216 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :indeed, i'd hardly call it a scheme < 1199985226 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that doesn't have anything to do with anything either < 1199985227 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :um mutability IMPACTS on your reasoning < 1199985231 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: well it was a subset of scheme + unlambda-specific functions < 1199985234 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1199985243 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :in fact, PLT Scheme 4.0 makes all cons pairs IMMUTABLE by default < 1199985255 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you need to use mcons/mcar/mcdr/mset-car!/mset-cdr! for mutability < 1199985260 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and PLT is one of the big-uns in scheme < 1199985306 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm not saying being immutable is bad, i'm saying if structures are immutable, you cannot use it as you might want to use scheme. < 1199985334 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which means many scheme programs would have to dramatically change structure to be convertible to an immutable scheme < 1199985344 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'd hardly call such a scheme a scheme < 1199985346 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: my befunge program will be ugly! since i'm commenting it to hell it'll probably look more like a brainfuck program with funny symbols than befunge, heh < 1199985367 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: most scheme programs don't use set-car!/cdr! < 1199985387 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :which is why PLT - which is the most popular implementation of Scheme (unless this has changed) - is switching < 1199985390 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm no, but many scheme programs do use some mutable features. < 1199985401 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: like? < 1199985413 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :mutable _variables_ are the rule < 1199985414 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :dunno, that's just what i've heard from schemere < 1199985417 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*schemers < 1199985429 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, oerjan makes a good point < 1199985434 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: of course < 1199985440 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but i would wager that unlambda interp had them. < 1199985451 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it couldn't < 1199985457 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :if you have environments in unlambda you're already doing crazy operations, updating of values would be trivial < 1199985487 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, it isn't. for full mutability of environments you need a heap < 1199985501 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :without mutable structures, making scheme in unlambda shouldn't be that hard, basically conversion to pointless & list support < 1199985521 0 :sebbu!n=sebbu@ADijon-152-1-103-24.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1199985529 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mutable variables. < 1199985542 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1199985551 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :who knows what the best befunge implementation is. < 1199985552 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :fastest, that is < 1199985557 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :maybe best error messages ;) < 1199985568 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't recall whether it supported mutual recursion or just did macro expansion of definitions (like the lazy-K scheme afaiu) < 1199985593 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :lazy k's macrolanguage is not scheme < 1199985603 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's written in scheme and uses s-expressions < 1199985605 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but isn't scheme < 1199985618 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not even a subset? < 1199985675 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1199985686 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's closer to lambda calculus with macros than scheme < 1199986590 0 :sebbu2!unknown@unknown.invalid QUIT :Connection timed out < 1199987089 0 :sebbu2!n=sebbu@ADijon-152-1-103-24.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1199987548 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :anyone re: befunge? < 1199987766 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1199987772 0 :timotiis!unknown@unknown.invalid QUIT :"leaving" < 1199987776 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ACTION doesn't understand the question < 1199987784 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :oh best implementation.. < 1199987951 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :where best is mainly determined by: fastest, and nice error messages < 1199988180 0 :sebbu!unknown@unknown.invalid QUIT :Connection timed out < 1199988180 0 :sebbu2!unknown@unknown.invalid NICK :sebbu < 1199988455 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric < 1199988964 0 :sebbu2!n=sebbu@ADijon-152-1-103-24.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1199989047 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :nobody? < 1199989099 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1199989749 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1199989754 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I guess I could write my own :P < 1199989890 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Shit, 8 core mac pro. < 1199989895 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :What would I do with 8 cores? < 1199990016 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :... Run befunge probably. < 1199990049 0 :sebbu!unknown@unknown.invalid QUIT :Connection timed out < 1199990050 0 :sebbu2!unknown@unknown.invalid NICK :sebbu < 1199990560 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :befunge-98 is complex < 1199990561 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :::| < 1199990726 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :very comple < 1199990728 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :x < 1199990758 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Someone suggst a different langugae :P < 1199990782 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Glass then. < 1199990793 0 :Hiato!n=Hiato@dsl-245-1-104.telkomadsl.co.za JOIN :#esoteric < 1199990796 0 :sebbu2!n=sebbu@ADijon-152-1-103-24.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1199990800 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Hello all < 1199990940 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :let me cut to the chase: The Acronym spec is now complete, an now it's interpreter time. What language should be the primary choice for this (needs to hold fairly large arrays of Int32, in two dimensions to create the 128x128 grid twice, also needs to have an easy if/else if/case/switch/when structure). Any suggestions? < 1199990971 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: Just use whatever you enjoy programming in < 1199991021 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Sure, ok, thanks faxlore (because I received a couple of long stares when I wrote the Full 0 interpreter in Delphi last time ;) ) < 1199991066 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :Delphi? O_o < 1199991080 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Exactly :P < 1199991090 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Like Pascal, but different < 1199991135 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hmm, < 1199991140 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :fairly large arrays? < 1199991144 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :would 'infinite' be better? < 1199991152 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :yes, (128x128)x2 < 1199991157 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1199991163 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :show me the spec < 1199991163 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :yes, I suppose, but the spec specified that < 1199991170 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :I don't mind though, I'll change the spec < 1199991177 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :blah, ok, hold on 1 sec < 1199991276 0 :ehird`!unknown@unknown.invalid QUIT : < 1199991338 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :http://rafb.net/p/rPclV323.txt < 1199991343 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1199991356 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :ok, well it's there anyways < 1199991491 0 :ehird`!n=ehird`@user-514f37e4.l2.c3.dsl.pol.co.uk JOIN :#esoteric < 1199991497 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :sorry, hiato. irc client troubles. < 1199991499 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1199991503 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :sure, no problem < 1199991505 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1199991508 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1199991508 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :http://rafb.net/p/rPclV323.txt < 1199991512 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :anyway, i'll write an interpreter in scheme, with infinite arrays instead of restricted < 1199991521 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :here you go, stuff is misaligned because of wordpad < 1199991525 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :by the same token it will be able to run in a browser, once i get my implementation written :P < 1199991551 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :wow that is evil. < 1199991563 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :heh, thanks < 1199991578 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, that one < 1199991583 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :so you'll write an ACRONYM interpreter in scheme? < 1199991587 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :how much change since last version? < 1199991596 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: yeah, when i find the time < 1199991598 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :not much really < 1199991599 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or maybe compile it < 1199991602 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :unless it's self modifying < 1199991606 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Thanks ehird` ! < 1199991612 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :no, it's not, no worries < 1199991616 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1199991617 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1199991629 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Haha :) < 1199991636 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: do they have to be int32s? < 1199991638 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or can they be bignums < 1199991639 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: some technical things and a couple of new tidbits < 1199991639 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1199991648 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :compiling a self-modifying language might be interesting < 1199991652 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Sure, bignums = all the better < 1199991656 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: it's been done. < 1199991657 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :for befunge. < 1199991661 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :ditto < 1199991667 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :I was about to say that :P < 1199991671 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: ok, remove the fixed size restrictions from the spec and i'll do it :D < 1199991671 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i know < 1199991674 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1199991676 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :doesn't make it less interesting < 1199991686 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :otherwise i will have a language-strikingly-similar-to-ACRONYM implementations < 1199991690 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :instead of an ACRONYM implementation < 1199991700 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :alright < 1199991701 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1199991712 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :I am changing it now :) < 1199991768 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it'll also make it turing complete < 1199991782 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :yeah, for sure :D < 1199991853 0 :sebbu!unknown@unknown.invalid QUIT :Connection timed out < 1199991937 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :"Each grid cell can store any arbitrary integer." is that better than Int32? < 1199991958 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1199991963 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :positive and negative, right?? < 1199991964 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1199991965 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :*right? < 1199991968 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1199991974 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :naturally :P < 1199991987 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :also, don't bother specifying about dynamic reallocation of the grid, just say 'grid of infinite size' and let the implementors do what they want < 1199991995 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :for, e.g., future implementaiton on an infinite-memory machine ;) < 1199992008 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Heh, ok, cool < 1199992019 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :I will change as needed, thanks or the heads up ;) < 1199992054 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1199992077 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :also, 3x2 commands? i see many one-char commands < 1199992089 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oh i see < 1199992098 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the command is picked from the result of executing the code in the 3x2 block < 1199992099 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1199992141 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :well, kind of, you're close < 1199992157 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :what I meant was there are 6 commands, on a grid of 3x2 < 1199992160 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :when you call ~ < 1199992173 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :stuff happens in accordance with the currently selected command < 1199992186 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :the grid is just for visualisation of the wrap-around ness < 1199992199 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hhmmm < 1199992210 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i may need some thinking to understand this < 1199992219 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's kind of like full 0 < 1199992221 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1199992234 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :amm.. no, not really < 1199992238 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :but yes, I suppose < 1199992246 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :in that there is a give allotment of commands < 1199992256 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and the program has indirection < 1199992263 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :spread over some kind of shape (grid), and you select the command at will < 1199992269 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i.e. it runs commands which select a command-2, and has an instruction to run the kind of command-2 < 1199992287 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :amm,.. < 1199992290 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Scheme in Glass, sounds good < 1199992320 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :no, not really, It runs commands that select command 2, and then has an instruction to run the selected command, irrespective of what it is < 1199992345 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: does glass have bignums? < 1199992354 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: yes < 1199992364 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no idea < 1199992750 0 :sebbu!n=sebbu@ADijon-152-1-103-24.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1199992752 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :somewhat doubt it < 1199992860 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i doubt the implementation has < 1199992943 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :http://rafb.net/p/2CJw0b73.txt < 1199992947 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :alrighty < 1199992982 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :here it is, excuse the lame word-wrap, it was hand-done. Some things may be mis-aligned, I apologise as OO doesn't insert LF's if it wraps. < 1199993052 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Glass is totally unhelpful on errors < 1199993054 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it just exits < 1199993057 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and gives no info < 1199993060 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1199993087 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :very esoteric :) < 1199993106 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :lol :) < 1199993109 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :no, industry-standard < 1199993156 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Yip, they learnt from the best, the obscure, GHC! It's just a mild improvement on that... :P < 1199993177 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ghc gives good errors < 1199993178 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1199993189 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :for those who work for the NSA < 1199993190 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1199993190 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but then you use delphi so you're used to NOT HAVING TO BE HARDCORE < 1199993192 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :NERRRR < 1199993201 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :rubbish. the industry-standard would at _least_ lock up the computer. < 1199993203 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :GHC beats C++ < 1199993221 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: well, C++ was an elaborate joke... < 1199993231 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :C++ can easily output multi-k error messages if you much up templates < 1199993243 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :why are you using templates < 1199993245 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1199993247 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or C++! < 1199993260 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I'm not < 1199993295 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I.e : — is-eof < 1199993296 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Push 1 if end of input, 0 otherwise. < 1199993296 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, for your information, us delphi dudes may be soft on the inside, but nothing can ever penetrate k : Integer; k := 4 / 3; Error: "Uknown" type/class/object mismatch :P < 1199993301 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i want it in the other way round < 1199993302 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :damnit! < 1199993305 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1199993358 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hm it seems like a 'not' in Glass would be non-trivial < 1199993359 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1199993391 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1199993392 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1199993393 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :ehird` : Are you writing an ACRONYM interpreter in Glass? (Sanity check) < 1199993398 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :just do an ==0 < 1199993401 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: Scheme. < 1199993412 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :just checking... :P < 1199993412 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :It will be able to run the Scheme ACRONYM interpreter, therefore ;P < 1199993414 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Probably not actually < 1199993419 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :It's going to be a restricted schem < 1199993420 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :e < 1199993423 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :-- no continuations methinks < 1199993441 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :sure, whatever floats your boat ;) < 1199993551 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(_e)(_i)e.?<0>(_a)e.?= < 1199993558 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :if EOF, _e = 0, else _e = 1 < 1199993578 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the interpreter doesn't work. < 1199993579 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1199993582 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't report EOF, for EOF. < 1199993620 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :HAY OERJAN < 1199993621 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :http://www.complang.tuwien.ac.at/schani/oldstuff/index.html#schemeinunlambda < 1199993625 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's a compler, though < 1199993627 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so less cool < 1199993714 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I should write that unlambda-abstraction-introducer, sometime < 1199993858 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Hrmm.. does anyone know if GregorR will be peeved if I add my 1L_AOI spec to the wiki < 1199993880 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :because his is vague and incomplete, and is merely a suggestion for further investigation < 1199993926 0 :conal!n=user@misc-148-78-62-234.pool.starband.net JOIN :#esoteric < 1199993935 0 :sebbu2!unknown@unknown.invalid QUIT :Connection timed out < 1199994037 0 :MichaelRaskin_!n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru JOIN :#esoteric < 1199994077 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Hiato: of course not < 1199994281 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :cool, then I'll put it up for the world to see :P < 1199994344 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i think i'm going to type strictly algorithmically for a few minutes! < 1199994371 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :go for it, it'll be interesting (to say the least :P ) < 1199994377 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i shall handle nesting of quotes thus: "this quote is by el qwertybomb" and is terminated by the quotation marks. < 1199994386 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i shall type entirely in lower-case. < 1199994397 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i shall nest quotes by using ", then ', then `. < 1199994413 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :all smilies shall not count as closing parentheses (like this :)). < 1199994427 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and closing marks must always be outside and after the nested pair. < 1199994495 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :if i break the rules, then i shall break the rules. deal with it. < 1199994501 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :how shalt thy express added information, such as (but not referring directly to) emotions and error messages and grammatical aids (such as the formidable question mark and ellipses) questionmark < 1199994504 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :NEVER < 1199994519 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"thou" < 1199994524 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1199994527 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :"true" < 1199994527 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i was just correcting that < 1199994530 0 :MichaelRaskin_!unknown@unknown.invalid PART #esoteric :? < 1199994535 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i shall handle all addressing of people with @name. < 1199994539 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :consider it a special directive. < 1199994545 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: stop stealing my thoughts < 1199994548 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :case will not be preserved. < 1199994560 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :@hiato i am afraid i do not understand. < 1199994568 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :I present to you, your honour, a no contest plea < 1199994576 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: i knew you would say that. < 1199994606 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i cannot tell whether people are copying my style or not. < 1199994618 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i seem to have become paranoid from my new logic typing! < 1199994628 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oh no, a typing error. < 1199994641 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i must devise a way to express replacements, yet regular expressions are ugly. < 1199994643 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :doth thou fail to comprehend the expressions put forth by my hand, to thine eyes, fellow interlocutor? < 1199994653 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :of course logic makes you paranoid. just look at Gödel. < 1199994661 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ah! occurance-number"string"="string" < 1199994668 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"doest" < 1199994668 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :1"logic"="logical" < 1199994683 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :"true" < 1199994695 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :@oerjan gödel was infected by self-reference, which is why he became paranoid < 1199994697 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :regular expressions are ugly? :( < 1199994705 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :1"paranoid"="paranoid." < 1199994718 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :You can't mean that < 1199994777 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :@faxlore but i do, for they are quite hacky. < 1199994787 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :he doesn't mean it. he is just pretending in order to entrap us. < 1199994816 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :"ensnare" < 1199994818 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :regular expressions are fairly erotic < 1199994823 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :yes! < 1199994824 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :":P" < 1199994836 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :they originated in the tradition of unix, also, which i feel in light of my style of typing for the present time ("the-right-thing" typing, so to speak) should be disowned in favour of the lisp way, or the mit way, or whatever you would like to call it. < 1199994844 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"O_O" < 1199994846 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :this is hard. < 1199994888 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :agreed < 1199994896 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i think what we need is a language like lojban, but that would work as a programming language. < 1199994901 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :more symbols, i guess. and less fluid grammar. < 1199994925 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that would be cool (though i guess people have made lojban programming languages anyway, they are probably not usable in any sense (even in an esoteric way)). < 1199994931 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :ACTION cannot get a word in without orejan or oklopol correcting him (emoticon) < 1199994933 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :lisp style namespaceing in s-expressions seems nice < 1199994943 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"oerjan" < 1199994947 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :@faxlore i do not understand. < 1199994950 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :although .. It's kind of hard to pronounce '(' and ')' < 1199994954 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :see, there you go :P < 1199994968 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and i refuse to believe that was unintended :D < 1199994970 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :@faxlore ah, for a language. yes, i do not think s-expresisons are the best route for that :). < 1199994979 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :heh ;) < 1199995009 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: do like in lalna, and use ´ and ` for nesting < 1199995041 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(add five three) -> ádd five thrèe < 1199995052 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"When the Nazi regime was briefly mentioned, Gödel informed the presiding judge that he had discovered a way in which a dictatorship could be legally installed in the United States, through a logical contradiction in the U.S. Constitution."[wikipedia] that is brilliant, i didn't know that :). < 1199995056 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ohh < 1199995058 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :neat < 1199995058 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :new syntax: "quote"[source]. < 1199995097 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i also used circumflex for infix < 1199995102 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :heh :D < 1199995153 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i recommend reading about the computer science geniuses, pretty much everyone had an interesting life < 1199995173 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or then i've just been reading well-written books < 1199995186 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it is ironic that gödel died from not eating for fear of being poisoned. < 1199995195 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :not much difference dying either way, i guess :P. < 1199995590 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1199995930 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hmm, my standard way to learn a language is writing a scheme interpreter. there's something wrong with that. < 1199996089 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :lol, :D Nope, can't quite put my finger on it ;) < 1199996451 0 :RedDak!n=dak@host246-88-dynamic.6-87-r.retail.telecomitalia.it JOIN :#esoteric < 1199996977 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1199997026 0 :ttm_!n=daniel@130-94-161-238-dsl.hevanet.com JOIN :#esoteric < 1199997048 0 :dbc!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1199997212 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :http://esoteric.voxelperfect.net/wiki/1L < 1199997214 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :it's done < 1199997222 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :I hope ;) < 1199997532 0 :Hiato!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, night everyone, it's late :( < 1199997536 0 :Hiato!unknown@unknown.invalid QUIT :"Leaving." < 1199997661 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes < 1199997763 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :everyone dies < 1199998340 0 :conal!unknown@unknown.invalid PART #esoteric :? < 1199998501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : anyone have a favourite language they want a scheme in? :P <-- bash < 1199998512 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no thats your job < 1199998804 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200000045 0 :jix!unknown@unknown.invalid QUIT :"CommandQ" < 1200000108 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is writing the spec for a rewriting term language thing. < 1200000200 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :rewriting? sounds hot < 1200000217 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1200000275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, I don't know scheme < 1200000282 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, do it in forth then < 1200000283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200000299 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(then you did it in bash because someone coded a bashforth so...) < 1200000301 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200000317 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: as well as "A"->"B" < 1200000321 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you can do expression->expresison < 1200000322 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so you can do < 1200000332 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("A"->"B")->("C"->"D") < 1200000342 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and all terms rewriting "A" to "B" turn into ones rewriting "C" to "D" < 1200000363 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"^my (long|short) regex" -> "your \1 regex" < 1200000366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird`, what about that ;) < 1200000373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :adding regex support < 1200000382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :full PCRE < 1200000388 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with lookahead and so on < 1200000389 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: tree-rewriting? < 1200000397 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: yep < 1200000405 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no < 1200000408 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah, one of my favorite concepts :) < 1200000418 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it even has output! < 1200000432 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :input may come sometime < 1200000442 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, certain virtual trees are detected by a rewriting rule that kills them, and outputs? < 1200000447 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :errr < 1200000454 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not virtual trees < 1200000455 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sorry < 1200000456 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: oh and i think i might make: < 1200000458 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("A"->"B")->("C"->"D") < 1200000461 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :first rewrite all As to Bs < 1200000463 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :getting: < 1200000469 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("B"->"B")->("C"->"D") < 1200000473 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then, erwriting all Cs to Ds < 1200000474 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a hard-coded rule ["output" object] -> outputs object < 1200000474 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :getting: < 1200000477 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("B"->"B")->("D"->"D") < 1200000486 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then rewriting all ("B"->"B") to ("D"->"D") < 1200000490 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: good/bad? < 1200000499 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1200000503 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: and "literals" on their own in a statement are outputted < 1200000506 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1200000520 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: or should i have A->B a and b implicitly quoted.. < 1200000522 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've done a similar thing for thue, but that's one sick idea < 1200000534 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i mean, with my idea i think its computationally useless < 1200000536 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so.. < 1200000548 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean, that data and rewriting rules in the same package might have some interesting implications < 1200000570 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i do think it makes it computationally unsuitable though < 1200000575 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so, i'll make them quoted < 1200000589 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, if you do it like that, yes < 1200000594 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, quoting works for scheme < 1200000603 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no i mean < 1200000606 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :A->B is always quoted < 1200000625 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1200000631 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :could you have metarules for those? :) < 1200000638 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and meta^2 rules < 1200000641 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :heh, maybe < 1200000645 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i'll just submit the 'basic' lang < 1200000647 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then i'll modify it < 1200000793 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: http://esoteric.voxelperfect.net/wiki/CRTL < 1200000803 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :feel free to comment, it's completely fluid right now < 1200000864 0 :ehird`!unknown@unknown.invalid PART #esoteric :? < 1200000868 0 :ehird`!n=ehird`@user-514f37e4.l2.c3.dsl.pol.co.uk JOIN :#esoteric < 1200000875 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :better add the rule that strings are searched. < 1200000880 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :better add the rule that strings are searched. < 1200000882 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :better add the rule that strings are searched. < 1200000883 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :better add the rule that strings are searched. < 1200000886 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :better add the rule that strings are searched. < 1200000886 0 :ehird`!unknown@unknown.invalid PART #esoteric :? < 1200000888 0 :ehird`!n=ehird`@user-514f37e4.l2.c3.dsl.pol.co.uk JOIN :#esoteric < 1200000890 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :better add the rule that strings are searched. < 1200000892 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :eurh < 1200000939 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :("A"->"B")->("C"->"D") would be fine if you change it just a bit, 1. rules don't rewrite themselves 2. rules only rewrite rules of lesser degree < 1200000944 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :done, look now oklopol < 1200000946 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :err < 1200000947 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1200000957 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this is a degree 2 rule, because it's l-side has a function < 1200000957 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :how about now... < 1200000959 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1200000960 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :damnit < 1200000961 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Stupid < 1200000961 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :god < 1200000963 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1200000964 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :wiki < 1200000978 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: lesser degree? < 1200000982 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: OK refresh now < 1200000987 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1200000992 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"a" first degree term < 1200000997 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :("a"->"b") < 1200001000 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200001002 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"a" 0th < 1200001006 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1200001007 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"a"->"b" 1th < 1200001018 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :sounds like principa mathematica's hopeless Godel-avoiding < 1200001021 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200001024 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the degree is the most nested part of it or something < 1200001031 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, i don't know that < 1200001068 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1200001075 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :they hated self-reference and the paradox it entails < 1200001083 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so sets of type N can only contain sets of type N-1 < 1200001106 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah, well, that's a bit different < 1200001110 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :godel came up with godel numbering, showed how you could use it to construct a self-containing set and similar, and finally BAM godel's incompleteness theorem, you got yourself a paradox in principa mathematica < 1200001146 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I think that Type : Type breaks for similar reasons < 1200001155 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I really want to get the lambda term though < 1200001213 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :question: < 1200001220 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :is CRTL1 (the current version) turing complete. < 1200001226 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I think YES by isomorphism with thue? < 1200001363 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ooh, i know < 1200001370 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: what about free variables < 1200001377 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("id",x)->x < 1200001385 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("dup",x)->(x,x) < 1200001411 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("loop",x)->("loop",("loop",x)) < 1200001422 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's the beauty of tree-rewriting < 1200001439 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :scoping is unbelievably sexy < 1200001450 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :err, wait < 1200001451 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :instead of , < 1200001455 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("id"->x)->x < 1200001456 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :of course. < 1200001462 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :since you only have "blah" and a->b < 1200001485 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("loop"->x)->("loop"->("loop"->x)) < 1200001677 0 :CakeProphet!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1200001687 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric ::o < 1200001689 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hello my beautiful friends < 1200001723 0 :GreaseMonkey!n=saru@219-89-43-177.dialup.xtra.co.nz JOIN :#esoteric < 1200001756 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200001759 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hello. < 1200001778 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: updating the CRTL spec with free names now < 1200001853 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: Oh, for useful stuff I need concatentation of strings. < 1200001873 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I'll use a~b < 1200002018 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :OK, oklopol, new spec I think < 1200002024 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :http://esoteric.voxelperfect.net/wiki/CRTL < 1200002038 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :with new example! < 1200002049 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: you made dupdog? you might like this then, it's self-rewriting < 1200002060 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I think it's turing complete. < 1200002078 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :indeed I did < 1200002110 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: dupdog isn't turing complete, though < 1200002111 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200002121 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :actually, you know what i'd like to see for this language? < 1200002123 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :a thue implementation of it < 1200002125 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200002131 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hehe < 1200002267 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I like non-turing complete languages < 1200002276 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :they're pitiful little creatures. < 1200002278 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :me too! < 1200002297 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: should ("a"~"b")->c match "ab" or ("a"~"b") < 1200002299 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :if you can do: < 1200002312 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("abc"~rest)->(rest~"def") < 1200002318 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then "abcblah" turns into "blahdef" < 1200002323 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"a"~"b" should probably be "ab". < 1200002334 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :with free names allowed as you can see up there? < 1200002335 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ok. < 1200002350 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :substrings match anyway < 1200002357 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I actually have no clue what dupdog is. < 1200002361 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :as I've never programmed anything in it. < 1200002368 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: highly inturingcomplete. < 1200002380 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(Useless for anything but constant output, essentially.) < 1200002396 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but what is it? < 1200002407 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :dupdog is interesting in that it's not interesting in anyway, but somehow seems cool :D < 1200002416 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :rofl < 1200002418 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...yes < 1200002424 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: check your memory < 1200002427 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's there < 1200002433 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's like... the most pointless thing ever. < 1200002438 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :indeed. < 1200002441 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: whatever the lowest class is :P < 1200002445 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it can't do any real computation < 1200002450 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :no I mean... what computational class. We never figured that out. < 1200002454 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :http://esoteric.voxelperfect.net/wiki/CRTL#Examples < 1200002459 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :new program generating "barbar"! :P < 1200002464 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I said it was FSA originally... but someone else said it wasn't. < 1200002467 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: whatever the least powerful computational class is :P < 1200002472 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :lower than FSA < 1200002479 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...is that possible? < 1200002483 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :maybe. < 1200002489 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it certainly can't represent all FSA < 1200002513 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :only a VERY restricted subset of them < 1200002531 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :now, someone implement crtl < 1200002532 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...so then it's a FSA. < 1200002534 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or i'll do it!!!! < 1200002547 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :an FSA isn't required... to represent multiple FSAs... that would be confusing and recursive. < 1200002663 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :a believe its a turing machines job to represent an infinite array of FSAs < 1200002707 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...well lets see. < 1200002722 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the state of a dupdog program is... the source code itself. < 1200002724 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so in that regards < 1200002729 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it has an infinite number of possible states. < 1200002737 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so it's not an FSA.... but it's nothing close to being a turing machine. < 1200002767 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :unless someone proves me wrong. Some mad genius could attempt to do it. < 1200002849 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'd say it's somewhere inbetween. Just don't know the name for it. < 1200002863 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :in-between automata < 1200002871 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :someone implement CRTL! :P < 1200002886 0 :^_`!n=saru@219-89-40-70.dialup.xtra.co.nz JOIN :#esoteric < 1200002896 0 :GreaseMonkey!unknown@unknown.invalid QUIT :Nick collision from services. < 1200002905 0 :^_`!unknown@unknown.invalid NICK :GreaseMonkey < 1200002926 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it has infinite states... but I don't think it can reach any of them arbitrarily. Its next state is dependent on its current state. < 1200002939 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Markov chain automata < 1200003017 0 :immibis!n=alex@125-236-169-77.broadband-telecom.global-gateway.net.nz JOIN :#esoteric < 1200003020 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200003030 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Now someone implement CRTL! :P < 1200003076 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...I'd be afraid to get it wrong < 1200003081 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :why < 1200003082 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :what language do you want it in? < 1200003097 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :how do i change channels in irssi? < 1200003100 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :uhhhhhh... CRTL! < 1200003101 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200003103 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :immibis: /win < 1200003108 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :C-Num < 1200003110 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :err < 1200003114 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :M-num < 1200003117 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...you want me to... implement CRTL in CRTL? < 1200003124 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: Yes! < 1200003129 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: Or, you know, any languge. < 1200003134 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :meta being alt? < 1200003141 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :immibis: why not find out < 1200003142 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oh. I thought you needed the first implementation < 1200003145 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Er. That I have a compiler or interpreter for on here, obviously. < 1200003152 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if one already exists... then I'm not doing anything. < 1200003154 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200003159 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't, CakeProphet. < 1200003167 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oh. < 1200003172 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :But I could manually compile your interpreter into C or whatever and use that! < 1200003179 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :Alright. I'll implement it in Python. My practical language of choice. < 1200003182 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Then we could call ourselves CRAZIER-LISP < 1200003184 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :aieee, python! < 1200003187 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :aw, alright. < 1200003222 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :hahaha < 1200003236 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i really want RETROLISP < 1200003241 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :which is like lisp of days of yore < 1200003243 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but crazier! < 1200003247 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and more fun for scripting < 1200003261 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :like, (incf 2) works < 1200003261 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200003280 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and you have a silly prompt, like " RETROLISP >> " < 1200003291 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and it's written in both C and RETROLISP < 1200003316 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :go for about 50:50, where the language particular parts is written it.. totally arbitrary :D < 1200003334 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :well, you need the core and the parser in C :P < 1200003336 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but yeah! < 1200003453 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...I don't understand the expression thing < 1200003454 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(a->(b->c) ...how does that work. < 1200003466 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: tree rewriting < 1200003476 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...lolwhut. < 1200003477 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :if you don't understand it maybe you shouldn't implement it :) < 1200003483 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I TOLD YOU < 1200003487 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol! explain it to him < 1200003493 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :what... are you replacing. < 1200003505 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: terms in the program < 1200003508 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :a with when you do a -> (b -> c) < 1200003510 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's self-modifying. < 1200003516 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...I know. < 1200003517 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you replace the whole expression < 1200003525 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :like thue... except I need this expression thing explained. < 1200003527 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(a->(b->c))->E is: < 1200003540 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"find rules of the form (a->X) where X is of the form (b->c)" < 1200003550 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"and replace with E" < 1200003575 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :.... < 1200003576 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so like < 1200003584 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200003586 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hold on < 1200003590 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200003593 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-headscracth- < 1200003597 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: i see you have it going on pretty well < 1200003600 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1200003600 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: I think he's having problems! :P < 1200003605 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not that well i guess :-) < 1200003608 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: But yeah, take a look at the new spec :D < 1200003619 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :unless that was a productive headscratch or something < 1200003621 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i shall < 1200003621 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :give me an example of how that rule would change something else in the program. < 1200003674 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :so (a->b)->(c->d) = replace a->b with c->d everywhere else? < 1200003695 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :immibis: yes, though that is an invalid rule if entered into a program < 1200003700 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :since 'c' and 'd' are free < 1200003722 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: watch my dialog with immibis and i think it might become clear :P < 1200003738 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean by free? < 1200003756 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :not used? < 1200003757 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :unbound variable < 1200003759 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :in (a->b)->(c->d), 'a' and 'b' are bound, and 'c' and 'd' are free < 1200003776 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :in (a->b)->((c->d)->e), 'a', 'b', 'c', and 'd' are bound, and 'e' is free < 1200003796 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :free variables in a program are an error, no matter what < 1200003798 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the left side is matched with the input, strings are just checked for matching, variables are set to whatever they correspond to in the input < 1200003810 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :variables are then substituted to the right side < 1200003815 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :anything thats on the left side of an expression is bound, everything else is free? < 1200003817 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: with scoping! < 1200003820 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but, guess one explainer at a time :) < 1200003822 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: ? < 1200003823 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: you have to take into account a nested RHS < 1200003845 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm... what do you mean? < 1200003849 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :wait no you're right. (a->b)->((a->c)->c) should use the binding of 'a' from (a->b) < 1200003867 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200003906 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :... which makes this language effing awesome < 1200003909 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :updating the spec a-now < 1200003941 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :OK < 1200003955 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CRTL will become CRTL 1.0 unless anyone sees anything wrong with the updated spec < 1200003955 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200003961 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :can you use this rewrite language as a theorem proer? < 1200003994 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: maybe? < 1200004006 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: do you have the degree rule? < 1200004014 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: whut < 1200004017 0 :timotiis!unknown@unknown.invalid PRIVMSG #esoteric :hm, I could enjoy windowmaker < 1200004051 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :actually... < 1200004066 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't think there's any use for it with the rules don't change themselves rule < 1200004070 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so, forget it < 1200004135 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yeah no self-modifying rules because that would make programs infinitely more hard to write < 1200004144 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: i think a fibonacci program might be good < 1200004265 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :increment: (("increment"->a)->("number"->(a->"a"))) decrement: (("decrement"->(a->"a"))->("number"->a)) < 1200004279 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :clever, oklopol < 1200004294 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nah, just done that many times < 1200004299 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200004311 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: you have to eliminate ("number"->a) at some point though < 1200004315 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :otherwise you'll have weird stuff < 1200004323 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not really, in case you just never have "number" as such < 1200004329 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1200004335 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's what i was gonna ask earlier < 1200004346 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :can you rewrite *inside* another rule? < 1200004362 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because that will screw up pretty much everything :) < 1200004381 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :esplain < 1200004408 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :("foo"->"bar"); ("bar"->"foo") < 1200004416 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :do they rewrite inside the other rule? < 1200004447 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i'll step through that program < 1200004454 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"foo"->"bar"; "bar"->"foo" < 1200004460 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"bar"->"bar" < 1200004472 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i take that as a "yes" < 1200004473 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :epsilon < 1200004477 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(where epsilon is a null program) < 1200004482 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: well what else should it do < 1200004489 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's fine, i think < 1200004497 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and you can do macros! :) < 1200004507 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think. < 1200004508 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :somehow. < 1200004527 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :macro: < 1200004531 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("id"->x)->x < 1200004537 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :simple < 1200004547 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's a bit like a lambda calculus without scoping and all that :P < 1200004555 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :indeed. < 1200004562 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have my reasons for loving tree rewriting < 1200004606 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: you should totally implement this! :P < 1200004610 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because tag->value is a common way to express "normal" tuples, tuples not meant as data < 1200004616 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm.. what because of that... < 1200004621 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wait... < 1200004634 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :actually it's an amusing language in that it's 100% intuitive < 1200004642 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the rewrite rules are very intuitive < 1200004648 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the syntax, and semantisc < 1200004652 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah, i was just thinking perhaps that could be something like . instead of ->, since it's used for both rewriting and tuple creation < 1200004659 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but, i guess -> is good < 1200004691 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've made a tree-rewriter once... i think i could just make a few changes to that < 1200004704 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :basically updating tuples into the rewriter tuple list < 1200004718 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm... that might be a bit slow :-) < 1200004720 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :as long as it runs the example programs correctly! < 1200004727 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not the simplest language to implement well < 1200004745 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i really want to see an infinite-fibonacci program in the langugae though < 1200004758 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm doing some scheming now, perhaps i can do it tomorrow < 1200004769 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :unless you can't resist doing it yourself today ;-) < 1200004772 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1200004774 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :which < 1200004778 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the implementation or fibonacci < 1200004778 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which? < 1200004782 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1200004787 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i meant the interpreter < 1200004794 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :infinite... hmm, doesn't sound hard < 1200004795 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1200004815 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll give it a try < 1200004852 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1200004855 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it should output < 1200004859 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh... < 1200004861 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1200004861 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :fib1\nfib2\nfib3 < 1200004863 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1200004864 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :forever and ever < 1200004870 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :in unary or whatever you want, no matter < 1200004876 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :actually, the rewriting scheme doesn't allow for a trivial implementation < 1200004877 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :note: for newline you will need to actually have a newline < 1200004878 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :like < 1200004879 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"abc < 1200004880 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :" < 1200004882 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and hm does it not? < 1200004883 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that's bad < 1200004886 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :how could i change it? < 1200004900 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for you don't have guards, and you don't have definite evaluation order. < 1200004906 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, wait < 1200004906 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think i have it < 1200004916 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i do have definite evaluation order < 1200004922 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :up to down < 1200004924 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but maybe not < 1200004926 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :eh whatever < 1200004930 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :what's your idea? < 1200005129 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you don't need it to be definite < 1200005159 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fibonacci is easy enough, i'm just a bit headachey today < 1200005287 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200005369 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1200005377 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay, i made a bunch of functions < 1200005381 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then realized i don't need them :) < 1200005384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's a oneliner < 1200005391 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :show! < 1200005412 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->a)->b)->(("fib"->b)->a~b) < 1200005422 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200005423 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1200005429 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that does not output at every step of the way < 1200005433 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :("fib"->"1")->"1" < 1200005433 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and doesn't output with a newline < 1200005435 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh. < 1200005445 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :remember: you need "literal"; -- as one statement -- to output < 1200005451 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so you need to have a dummy statement at the end < 1200005455 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :replace that witht he fibonacci rules < 1200005459 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then calculate one step on a literal < 1200005463 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or similar < 1200005468 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but < 1200005474 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :how do i create a new statement? < 1200005475 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1200005486 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :replacing some kind of dummy literal < 1200005495 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but... i'll need an infinite number of them? < 1200005502 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200005505 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i don't think you will < 1200005507 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i dunno < 1200005514 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :when something is output < 1200005518 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :does the output thing vanish? < 1200005531 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yes, should i change that < 1200005536 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200005539 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't think so < 1200005551 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps make it possible for a rule to produce multiple right sides < 1200005568 0 :RedDak!unknown@unknown.invalid QUIT :Remote closed the connection < 1200005571 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->a)->b)->(("fib"->b)->a~b);a < 1200005579 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i don't get it < 1200005589 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :also < 1200005591 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :a is an error there < 1200005598 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, sorry < 1200005606 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i forgot that was your original splitter < 1200005609 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->a)->b)->(("fib"->b)->a~b), a < 1200005613 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or smth < 1200005628 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i don't see how that would work < 1200005637 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->"1")->"1")' < 1200005673 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :shouldn't that become (("fib"->"1")->"11"), then (("fib"->"11")->"111") etc. < 1200005682 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :what is ' < 1200005688 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :typo :) < 1200005696 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ok, let's see... < 1200005709 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that does nothing on its own < 1200005722 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :? < 1200005727 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->"1")->"1");("fib"->"1") < 1200005730 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :is a fancy way of saying "1" < 1200005738 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ummm... < 1200005747 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :why would that get applied to itself? < 1200005762 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't < 1200005780 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->"1")->"1") is "replace ("fib"->"1") with 1" < 1200005784 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :apart from in the current rule < 1200005787 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so it finds the next statement < 1200005789 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("fib"->"1") < 1200005792 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and makes it "1" < 1200005793 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ummm < 1200005794 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what < 1200005804 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :where did you get that? :) < 1200005813 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :did i say ("fib"->"1")? < 1200005832 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->a)->b) -> (("fib"->b)->a~b), a <<< is the rule that's being applied < 1200005848 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->"1")->"1") will never be applied to anything. < 1200005853 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's "data" < 1200005869 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no it's not < 1200005874 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :k < 1200005875 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's ("fib"->"1")->"1" < 1200005879 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(...) is just for grouping < 1200005885 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(x) is x < 1200005885 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, duh < 1200005895 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(("fib"->"1")->"1") is < 1200005898 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :a rule. < 1200005900 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :not data < 1200005907 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, but there's nothing it can apply to. < 1200005917 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so it can be considered data. < 1200005931 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just like a list in lisp is data even though you can apply it if you want. < 1200005953 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :well in a program it will have that effect. < 1200005960 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200005965 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what effect exactly? < 1200005968 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :dunno. < 1200005977 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: suggest a list quoting syntax for RETROLISP! < 1200005981 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so, will you add ","? < 1200005990 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for multiple right sides < 1200006000 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :modern lisp: (QUOTE (A B C)) or '(A B C), LISP 1.5: ((A B C)), RETROLISP = ? < 1200006003 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: is , like < 1200006012 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's multiple right sides :) < 1200006014 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :a,b -> "replace with a then b" < 1200006018 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :because... < 1200006020 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :"QUOTE"(A B C) < 1200006025 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"foodle"->"bar","foo" < 1200006027 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :"QUOTE"(A "UNQUOTE"B C) < 1200006030 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("foodle"->a)->something < 1200006036 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :what does that produce < 1200006039 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: haha no :P < 1200006042 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1200006049 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the program "a" -> "b", "c"; "a" would print "b" and "c" if the function is applied, otherwise "a" < 1200006064 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :use , for quote and ` for unquote < 1200006065 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :both right sides are added to the tuplespace < 1200006081 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: no < 1200006082 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200006090 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: i'm sorry please look at my example < 1200006093 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :"foodle"->"bar","foo" < 1200006096 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :("foodle"->a)->something < 1200006122 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm looking, i guess you just couldn't use as data the functions that use ",". < 1200006153 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :err < 1200006155 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :there's no distinction < 1200006161 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's tree rewriting < 1200006164 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :not data-and-function-calls < 1200006165 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :asdf. < 1200006172 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's called abstraction < 1200006183 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1200006184 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: suggest! < 1200006189 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I tried! < 1200006190 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: but it's against CRTL philosophy < 1200006206 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can't match on something that isn't data, is the definition of not being data < 1200006209 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: but "ABC" is strings :P < 1200006222 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :[a !b c] < 1200006226 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :for `(a ,b c) < 1200006235 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: naw, it mus thave parens somewhere < 1200006236 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :aww < 1200006242 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I just liked ((a b c)) in lisp 1.5 < 1200006249 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I don't like that :S < 1200006255 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :but it's lisp 1.5 < 1200006256 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :what is () being applied to? < 1200006257 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it's fun and cazy < 1200006260 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and nothing! < 1200006263 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :its special syntax! < 1200006268 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200006271 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ACTION screams < 1200006283 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :old lisp was FUNNNNNNN for example did you know < 1200006286 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that each REPL prompt < 1200006293 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :started with an alice in wonderland quote < 1200006298 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then had a text-only, no-symbols prompt < 1200006303 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then it didn't even read s-expressions < 1200006303 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :awww that's cool < 1200006305 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you did: < 1200006307 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :FUNC arg arg arg < 1200006321 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :to define the identity function you did < 1200006331 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :DEFINE ID ((LAMBDA (X) X)) < 1200006337 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :to evaluate an s-expression you did < 1200006337 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :EVAL ((...)) < 1200006344 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :then you hit enter < 1200006346 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :got another blank line < 1200006349 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :the lewis carroll quote < 1200006354 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and the text-only prompt again < 1200006365 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :cool :O < 1200006368 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :truly, an example of interface design! < 1200006377 0 :timotiis!unknown@unknown.invalid PRIVMSG #esoteric :well, it's different < 1200006382 0 :timotiis!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I must be off < 1200006387 0 :timotiis!unknown@unknown.invalid PRIVMSG #esoteric :ciao all! < 1200006389 0 :timotiis!unknown@unknown.invalid QUIT :"leaving" < 1200006399 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i just want a Lisp 1.5 for a modern machine < 1200006400 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1200006551 0 :CakeProphet_!n=CakeProp@98.18.1.82 JOIN :#esoteric < 1200006552 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: don't you?!?!1!!!111 < 1200006578 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I want a lisp 9999999999999999999999999999999999999999999+1 < 1200006584 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200006604 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I want LISP 1.5 for Modern x86 Architechtures, `libc' Version < 1200006690 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: RETROLISP might be just as good, though < 1200006722 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I think so! < 1200006724 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :mabe better < 1200006731 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :It must have lewis carrol quotes built in < 1200006744 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yes, once every... i don't know, every hour or something < 1200006893 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :how about every call to apply?:D < 1200006960 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1200006961 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1200007020 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: what about wariness to use symbols! < 1200007028 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :PLUS instead of + being used in all example code < 1200007029 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1200007069 0 :CakeProphet!unknown@unknown.invalid QUIT :Nick collision from services. < 1200007075 0 :CakeProphet_!unknown@unknown.invalid NICK :CakeProphet < 1200007132 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...I still haven't made Sophia. < 1200007149 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :my masterpiece-language-to-end-all-languages. < 1200007187 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :example code? < 1200007194 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :2 + 2 < 1200007196 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: see the prompts! http://b54.net/lisp15 < 1200007197 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200007200 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: more example code. < 1200007252 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :#x = 2 + 2 < 1200007254 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200007322 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i love it already < 1200007357 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's smalltalk-esque. Think methods. < 1200007366 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'm still working on... how it... determines order of operation. < 1200007376 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I don't want gajillions of parenthesis. < 1200007379 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but I kinda do. < 1200007516 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the other problem is how it determines the end of a statement... or if it has a statement concept at all. < 1200007558 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...nitpicky things. < 1200007560 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: left-to-right < 1200007563 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or right-to-left < 1200007566 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :pick one, i like right-to-left < 1200007576 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :end of statement: "abc. def." < 1200007578 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so . < 1200007580 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or, newline < 1200007588 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking of newlines. < 1200007597 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :like Python. Newlines unless there's an unclosed paren. < 1200007607 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :how about just . < 1200007607 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :or , < 1200007610 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Yes, like this: < 1200007615 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :message: < 1200007615 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric : a, < 1200007615 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...too lazy. < 1200007617 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric : b, < 1200007618 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric : c. < 1200007620 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I prefer newlines. < 1200007623 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :... < 1200007642 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :Fibonacci would be like... < 1200007674 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...I'm trying to do it in one expression for awesome effect. < 1200007724 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Integer$fib: self < 2 if: {<- self.} else: {<- ((self - 1) fib) + ((self - 2) fib).}. < 1200007755 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :String$sayWith:other: self say, other say. < 1200007863 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(#n = 0) print inc print < 1200007884 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(#n = (n - 1) + (n - 2)) print < 1200007893 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :er < 1200007893 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :(#n = (n - 1) + (n - 2)) print < 1200007893 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :sedjfuihjrd < 1200007906 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :((#n = (n - 1) + (n - 2)) print) while True < 1200007921 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1200007953 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if the mad scientist in me can pull off an implementation < 1200007988 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's going to be like... smalltalk mixed with lisp mixed with Python aesthetics mixed with some strange functional language. < 1200008037 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :redundancy < 1200008038 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :'lisp' < 1200008041 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :'some strange functional language' < 1200008063 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: SETQ returns a variable reference < 1200008073 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(INCF (SETQ A 2)) ; A = 3 < 1200008074 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...and some bits of perl that I like. < 1200008083 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric ::S < 1200008087 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :that makes no sense lol < 1200008091 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: yeah it does < 1200008102 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :INCF takes either a NAME, or a VAR-REF < 1200008107 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :it returns a VAR-REF. < 1200008110 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :SETQ is the same < 1200008136 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(SETQ A 2) ; ==> #{VARIABLE REF 'A'} < 1200008150 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(INCF (SETQ A 2)) ; ==> #{VARIABLE REF 'A'} < 1200008162 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(SETQ (INCF (SETQ A 2)) "FOO") ; ==> #{VARIABLE REF 'A'}, and A = "FOO" < 1200008166 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :(INCF (INCF (INCF (INCF A)))) < 1200008170 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1200008175 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :hehehe < 1200008193 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(REF (QUOTE A)) ; ==> #{VARIABLE REF 'A'} < 1200008196 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: the fib looks interesting, can you give definite semantics? < 1200008203 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :(INCF (SETF (CDR (CONS 0 0)) 7)) ? < 1200008203 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just for what you have there. < 1200008203 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(SETQ (REF (QUOTE A)) 5) ; A = 5 < 1200008212 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :faxlore: SETF is too modern. Doesn't exist! < 1200008215 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, ...yes. But they're messy. I'd like it to be cleaner but with the same look and feel. < 1200008225 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :however < 1200008250 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(REPLACD (CONS 0 0) 7) ; ==> #{CONS REF} < 1200008255 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :(INCF (REPLACD (CONS 0 0) 7)) ; ==> #{CONS REF} < 1200008276 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :actually the second line would need to be < 1200008296 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :((#n = ((n - 1) + (n - 2))) print) while True < 1200008296 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :) < 1200008317 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but at that point < 1200008317 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I've clearly lost my mind. < 1200008368 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet: support #a: 2 < 1200008370 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :to be #a = 2 < 1200008386 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :how? give everything a ":colon:" message. < 1200008386 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200008410 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :#a blah: 2, when blah on #a is not a message, is #a blah :colon: 2 < 1200008411 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200008420 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if you're familiar at all with smalltalk... you'll get the method calling part of the syntax. The difference here is the lack of colons and the use of only binary and unary methods. < 1200008525 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and it's all lazy. Every parenthetical expression is frozen in an internal "block" object with its own methods < 1200008545 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which explains why I can just put "while True" at the end of any expression and magically... make it go on forever. < 1200008593 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :kind of like haskell. < 1200008606 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :sometime i want to make alanguage like haskell, but 'minimized' < 1200008626 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :you get funky type definitions, monads, pattern matching, laziness, etc., but just 'dumbed down' a bit < 1200008628 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :for learning about stuff < 1200008640 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :main : io nil < 1200008652 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :main = printNL "hello, world" < 1200008725 0 :CakeProphet_!n=CakeProp@98.18.23.202 JOIN :#esoteric < 1200008732 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :.... < 1200008733 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :did I miss anything? < 1200008736 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200008740 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :did I miss anything? < 1200008743 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :23:43:23 sometime i want to make alanguage like haskell, but 'minimized' < 1200008743 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :23:43:43 you get funky type definitions, monads, pattern matching, laziness, etc., but just 'dumbed down' a bit < 1200008743 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :23:43:45 for learning about stuff < 1200008743 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :23:43:57 main : io nil < 1200008743 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :23:44:08 main = printNL "hello, world" < 1200008754 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :what was the last thing I said? < 1200008787 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :23:42:22 which explains why I can just put "while True" at the end of any expression and magically... make it go on forever. < 1200008791 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: What I'd really like is a good solid mixfix parser < 1200008799 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: Then hook up various lambda calculus to it < 1200008811 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200008825 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :so in #x = (2 + 2) < 1200008831 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I was going to use the Agda2 one.. but I don't think I can extract it without the whole thing falling to peices < 1200008855 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :the (2 + 2) isn't evaluated... its saved as a function/block/unevaluated-dohicky/whatever. < 1200008868 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :#x means "the symbol x"... as opposed to what x represents. < 1200008896 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :so (2 + 2) never gets evaluated until you send it a message. < 1200008901 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet_: the term is 'thunk' < 1200008948 0 :immibis!unknown@unknown.invalid PART #esoteric :? < 1200008963 0 :sebbu!unknown@unknown.invalid QUIT :"@+" < 1200008983 0 :CakeProphet_!unknown@unknown.invalid PRIVMSG #esoteric :it's basically a weird attempt to combine smalltalk logic and haskell laziness seamlessly. < 1200009200 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so! we have APL-alikes, haskell-alikes and smalltalk-alikes < 1200009204 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :anyone else? < 1200009215 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :APL? < 1200009226 0 :faxlore!unknown@unknown.invalid PRIVMSG #esoteric :I missed any APL alikes < 1200009348 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have a few erlang-like < 1200009349 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :oklotalk < 1200009349 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*s < 1200009353 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and a few prolog-likes < 1200009354 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and ehirdtalk < 1200009369 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :where ehirdtalk is infinitely superior. < 1200009372 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200009483 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :shouldn't it be etalk if mine is oklotalk? < 1200009504 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :your real name is elliott hird, mine is oklofoan polakir < 1200009505 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :no, because mine has /more/ than oklotalk < 1200009509 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1200009512 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1200009518 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and stop being stalkerish to the point of spelling my first name right < 1200009518 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200009531 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :can it be written wrong? < 1200009547 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200009549 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :elliot < 1200009551 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :eliott < 1200009552 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :eliot < 1200009558 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :first most common < 1200009560 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :second middle < 1200009561 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :last least < 1200009566 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i have been called all 3 < 1200009579 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i have met one person with the exact same name as me < 1200009595 0 :CakeProphet__!n=CakeProp@98.18.63.31 JOIN :#esoteric < 1200009598 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :and no more < 1200009598 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric ::P