< 1200615250 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :this isn't a city deep under the sea? < 1200616449 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :there might be a dimensional loophole < 1200616549 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :so! who wants to help work on the underload->C compiler < 1200617898 0 :skabet!n=johnsen@pc-10-249.skjoldhoej.dk JOIN :#esoteric < 1200618073 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :nobody? :( < 1200618087 0 :skabet!unknown@unknown.invalid PRIVMSG #esoteric :i'm not nobody... < 1200618357 0 :puzzlet_!unknown@unknown.invalid QUIT :Remote closed the connection < 1200618357 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200619633 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`: written in python? < 1200620613 0 :ehird`!unknown@unknown.invalid QUIT : < 1200620924 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1200620925 0 :puzzlet_!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200622575 0 :skabet!unknown@unknown.invalid PART #esoteric :? < 1200627982 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200627985 0 :puzzlet_!unknown@unknown.invalid QUIT :Remote closed the connection < 1200631210 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. and dlte ur files. thx." < 1200633681 0 :puzzlet_!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200634301 0 :puzzlet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1200637578 0 :Justin_!n=Justin@CMU-196057.WV.CC.CMU.EDU JOIN :#esoteric < 1200637599 0 :Justin_!unknown@unknown.invalid PART #esoteric :? < 1200643199 0 :clog!unknown@unknown.invalid QUIT :ended < 1200643200 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1200643732 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :http://www.vjn.fi/oklopol/graphica.txt turns out it *was* trivial to make an n-dimensional hypercube < 1200643757 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also turns out my implementation is slow as hell :D < 1200645751 0 :oklopol!unknown@unknown.invalid NICK :Z < 1200645766 0 :Z!unknown@unknown.invalid NICK :oklopol < 1200645779 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :too late < 1200646226 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1200649186 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Hello. < 1200649392 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :malbolgo < 1200649449 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Am I supposed to mod this by 94 to get hello? < 1200649548 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i should ask you that very same question. < 1200649679 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1200649722 0 :slereah_!n=slereah@ANantes-252-1-27-253.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1200650667 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1200653314 0 :puzzlet_!unknown@unknown.invalid QUIT :Remote closed the connection < 1200653326 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200655632 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1200655639 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200656849 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1200656855 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200661224 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION will try to implement the 2D version of the Love Machine 9000. < 1200661649 0 :jix!n=jix@dyndsl-080-228-177-030.ewe-ip-backbone.de JOIN :#esoteric < 1200662651 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1200663769 0 :helios24!i=helios@bytefight.org JOIN :#esoteric < 1200664032 0 :sebbu!unknown@unknown.invalid QUIT :"@+" < 1200664890 0 :sebbu!n=sebbu@ADijon-152-1-44-63.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1200664980 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1200664982 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200665694 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1200666962 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1200667097 0 :slereah__!n=slereah@ANantes-252-1-27-253.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1200667097 0 :slereah_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1200667223 0 :Corun!unknown@unknown.invalid QUIT :Client Quit < 1200668205 0 :slereah__!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1200668208 0 :slereah_!n=slereah@ANantes-252-1-27-253.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1200668901 0 :helios24!unknown@unknown.invalid QUIT :Remote closed the connection < 1200670486 0 :ehird`!n=ehird`@user-514dc61d.l4.c2.dsl.pol.co.uk JOIN :#esoteric < 1200670809 0 :jix!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1200670959 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric < 1200671090 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :who is fast with log grepping? < 1200671100 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :i need to know the date where me and ais523 discussed 'turing complete regexps' < 1200671340 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :http://tunes.org/~nef/logs/esoteric/07.10.03 < 1200671346 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :or maybe http://bespin.org/~nef/logs/esoteric/07.11.12 < 1200671368 0 :jix!n=jix@dyndsl-091-096-048-060.ewe-ip-backbone.de JOIN :#esoteric < 1200671370 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :or maybe neither, btw, I used http://www.google.co.uk/search?hl=en&q=ais523+ehird+turing+complete+regexp :D < 1200671774 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :2007-10-03 is right, Asztal < 1200671775 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1200671823 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :The 2D Love Machine has some problems dealing with the adding-new-squares-around < 1200671896 0 :helios24!i=helios@bytefight.org JOIN :#esoteric < 1200672001 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :ACTION (a(b)) -> [['a', ['b']]]  < 1200672004 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :that IS a good idea. < 1200672124 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric : FUCK! I'm starting to think like Larry Wall. < 1200672129 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :wait, why am i still ehird` < 1200672130 0 :ehird`!unknown@unknown.invalid NICK :ehird < 1200672768 0 :fax!n=afg@83.104.248.190 JOIN :#esoteric < 1200672823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hello fax machine < 1200672888 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :Hello < 1200672933 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :I found a great Logic textbook < 1200672978 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :Lectures on the Curry Howard Isomorphism < 1200673825 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :http://membres.lycos.fr/bewulf/Russell/Hello.png < 1200673829 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Am I doin it rite? < 1200673857 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :There seem to be some problems with some of the tape-displaying functions. < 1200673872 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :But then again, it's not the most important part I guess. < 1200673909 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :One day, I'll have to dig in that code to clean it. I don't look forward to it. < 1200674024 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :your code looks like random line noise. < 1200674075 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Well, it's just directions and "print space". < 1200674116 0 :sebbu2!n=sebbu@ADijon-152-1-12-37.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1200674358 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :http://membres.lycos.fr/bewulf/Russell/Hello2.png < 1200674371 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Hides the problems better with space as the empty char! < 1200674497 0 :ais523!n=ais523@chillingi.eee.bham.ac.uk JOIN :#esoteric < 1200674531 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Hi. < 1200674540 0 :ais523!unknown@unknown.invalid TOPIC #esoteric :What is the title of this topic? Logs: http://tunes.org/~nef/logs/esoteric < 1200674555 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Freenode get annoyed if a channel is publically logged but you don't tell anyone < 1200674557 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and hi < 1200674583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, ehird, you got your nick back? < 1200674585 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :Hey < 1200674597 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :h < 1200674598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yep < 1200674607 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :<3 freenode staff < 1200674615 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I also have 'rice' < 1200674619 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and as for those TC regexps, I'm still working on them < 1200674629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :written about 70% of the spec, now < 1200674630 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because, i saw an unused-for-a-year, short, memorable dictionary word, and nabbed it < 1200674633 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1200674636 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and started working on the implementation for a third time < 1200674637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm picking mine up again < 1200674641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kind of from the start < 1200674657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now I have a version of Perl that understands (??{$regexp}) < 1200674668 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Why embed it in perl? < 1200674671 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's turing complete by itself! < 1200674680 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm using Perl to write the interpreter < 1200674697 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but without that construct, matching brackets is tedious < 1200674713 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :of course, it exists in my regexp language too < 1200674718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with a much shorter notation < 1200674750 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mine will be written in Haskell or something, probably. < 1200674754 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Dunno. < 1200674773 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :one of my favourite innovations is a concise way to do yacc-like matching < 1200674779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what's a^nb^nc^n < 1200674781 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in yours < 1200674799 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^(a*)b*:1c*:1$ < 1200674841 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or you can use :- rather than :1 if you don't want to hardcode a group number < 1200674841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that has changed since last time.. < 1200674844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :significantly < 1200674854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what did I say last time? < 1200674909 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : also, I have things like (a*)b*:-c*:- to solve the famous n as, n bs, n cs problem, which I think is considerably shorter than the corresponding BF program < 1200674919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's the same program < 1200674929 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except that I didn't put the ^ and $ to anchor it to the whole expression < 1200674937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, ^ and $ have completely different implementations < 1200674990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200675000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm going to start with regexps as i like them, then extend to matching brackets < 1200675003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is to say: < 1200675004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :recursion < 1200675008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does that sound like a good basis? < 1200675016 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mine is also based on recursion < 1200675027 0 :sebbu!unknown@unknown.invalid QUIT :Connection timed out < 1200675030 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a* is just an abbreviation for (|a$+) < 1200675050 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :i.e. either match nothing, or match a followed by a repeat of the current group's code < 1200675065 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's crazy :) < 1200675068 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :strictly speaking, (??|a$+), but the ?? just prevents the group being allocated a number < 1200675084 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I want a lambda symbol < 1200675086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$ = quine < 1200675099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lambda in a RE language < 1200675106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... < 1200675118 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :\(\)|\($\) < 1200675120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would be easy enough in a self-modifyin language < 1200675124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :matches balanced brackets, but does nothing with them < 1200675134 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :\(\)()|\(($)\) < 1200675139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :matches brackets into a parse tree < 1200675141 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :() -> [] < 1200675144 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(()) -> [[]] < 1200675144 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1200675145 0 :puzzlet_!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200675145 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1200675147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1200675150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[""] < 1200675151 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i guess < 1200675160 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my language produces a parse tree no matter what you do < 1200675169 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the colons force two regexps to have the same parse tree < 1200675219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can choose whether . matches just a character, or whether it's equivalent to (\x0|\x1|\x2|...|a|b|c|...|\x10fffe|\x10ffff) using options < 1200675229 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(or whatever Unicode goes up to nowadays) < 1200675245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and which option in a set is chosen is also taken into account < 1200675253 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does that account for all the nomansland stuff in unicode? < 1200675258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :those higher 'planes' or whatever they are < 1200675266 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's all very epic and spooky < 1200675266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not entirely sure < 1200675267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200675274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :all I know is that there are some codepoints that can't be used < 1200675276 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I don't use them < 1200675277 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'The Unicode encoding space consists of 17 planes with each plane consisting of 65536 code points' < 1200675292 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that at least explains where the 10ffff comes from < 1200675294 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As of Unicode 5.0.0, 102,012 (9.2%) of these code points are assigned, with another 137,468 (12.3%) reserved for private use, 2,048 for surrogates, and 66 designated noncharacters, leaving 872,582 (78.3%) unassigned. The number of assigned code points is made up as follows: < 1200675302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :9.2% assigned :P < 1200675330 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder when if ever they'll run out and have to add more planes? < 1200675335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the BMP itself is sufficient for most things < 1200675385 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikibooks.org/wiki/Windows_Programming/Unicode/Character_reference/E0000-E0FFF do they really need this page. < 1200675393 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can also do things like ('a-z=A-Z') < 1200675399 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to change lowercase to caps < 1200675419 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and as for do they really need that page; I think that might have beeen on Wikipedia once but they moved it because Wikibooks was a better fit < 1200675433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it seems reasonable that some book might need page after page of Unicode characters in it... < 1200675458 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has to go for a while, but should be back maybe about half an hour later < 1200675476 0 :ais523!unknown@unknown.invalid QUIT :"hopefully back in about 1e mins..." < 1200675957 0 :slereah_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1200675974 0 :slereah_!n=slereah@ANantes-252-1-27-253.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1200676010 0 :slereah_!unknown@unknown.invalid NICK :Slereah < 1200677724 0 :ais523!n=ais523@chillingi.eee.bham.ac.uk JOIN :#esoteric < 1200678349 0 :fax!unknown@unknown.invalid NICK :afx < 1200678601 0 :RedDak!n=dak@host54-85-dynamic.10-87-r.retail.telecomitalia.it JOIN :#esoteric < 1200678876 0 :afx!unknown@unknown.invalid NICK :fax < 1200678993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^(\`$+$+=$+$+\^|'skivdce(\..)')$ < 1200679078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that converts Unlambda from Polish to Reverse Polish notation < 1200679104 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's easy enough to expand on it to produce an Unlambda to Underload converter in a single statement, except for c < 1200679224 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hello ais523 < 1200679229 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1200679248 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :of course, my implementation isn't finished yet, so I haven't tested any programs < 1200679259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've only got as far as implementing the crazy quoting and precedence rules < 1200679284 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm still thinkning about mine < 1200679297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i think i'll start a rewrite of the compiler's scheme code < 1200679301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the prelude staying the same ofc < 1200679311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i was thinking, I dunno. Haskell? It'd be good for writing the optimizations.. < 1200679317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm better at the C than at the Scheme < 1200679328 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah, and the scheme is ugly < 1200679331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I think the C's about as good as it's likely to easily get < 1200679334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is why i'm switching to something else :) < 1200679345 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(one of the things i want to add is a real parse tree) < 1200679350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I figured out how to make dup O(1), but the other costs of doing so are sufficiently high that it isn't worth it < 1200679355 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, with a new frontend < 1200679358 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we can optimize the code < 1200679370 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so, what languages do you understand? haskell might be a bit optimistic i guess :) < 1200679382 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to learn it without docs < 1200679385 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is a bit difficult < 1200679396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I'm not on my own computer at the moment, so I don't have access to an interpreter anyway < 1200679402 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nor to svn for that matter < 1200679410 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1200679476 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my computer is currently over 4 miles away from my Internet connection... < 1200679554 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: this seems like a bit of a problem ;) < 1200679568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, I'm at the Internet connection at the moment, obviously < 1200679588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but not your computer. < 1200679609 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, so I'm stuck with the ancient version of ChatZilla < 1200679697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :awesomecakes < 1200679744 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: do you even have a decent editor? :-) < 1200679771 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when I connect to Unix, like I do now, I have Emacs or vi < 1200679781 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :otherwise, Visual Studio, Notepad, Wordpad and Textpad < 1200679789 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and MS Office, of course, bu I don't count that) < 1200679797 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's your opinion as to what's a decent editor < 1200679807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :personally I find sed works quite well in many cases < 1200679881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh, sed < 1200679884 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wellll, let's see.. < 1200679901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :emacs, blah, blah, blah, blah ... ok, you have one good OS which has a good editor inside < 1200679910 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you're connecting to unix already that's an awful lot of indirection :-) < 1200679927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's worse; some of the projects I do are on a friend's Linux server < 1200679936 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I have to connect to Unix to ssh over to Linux... < 1200679946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's great fun trying to run curses programs like that < 1200679955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION uses Linux at home, by the way < 1200679961 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I use OS X :) < 1200679979 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha, wow.. I telnetted in to Franz's Allego Lisp demo prompt for no reason < 1200679982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : = ^? < 1200679986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just like the good ol' days < 1200679993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^H works XD < 1200680000 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DOS was worse < 1200680006 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : = < 1200680017 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the backspace key worked as well, fortunately for everyone's sanity < 1200680036 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: still in windows prompts today.. < 1200680039 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or at least: xp era. < 1200680041 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200680055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I should netcat the whole swank source to the prompt < 1200680057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and conncet with SLIME < 1200680057 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :run doskey and it gets a lot saner < 1200680058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200680069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what, you mean netcat | sh < 1200680076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200680082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you know what SLIME/swank is < 1200680083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :surely < 1200680089 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200680091 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1200680096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SLIME = Superior Lisp Interaction Mode For Emacs < 1200680111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :basically, it's what Symbolics would have been proud of. < 1200680113 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is that real lisp, or elisp? < 1200680118 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :real lisp < 1200680123 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The whole editor gets knowledge about your lisp system < 1200680135 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SLIME actually connects with a socket to your lisp implementation < 1200680136 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Emacs knows scarily much anyway < 1200680139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is running swank < 1200680142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :swank is the backend < 1200680147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with some implementation-specific parts < 1200680153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and it tells SLIME /everythiing/ it wants to know < 1200680180 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :from basic things like 'complete based on symbol table' to crazy, crazy introspection < 1200680185 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and it has a lisp mode < 1200680189 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :like "run-lisp" < 1200680191 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but vastly superior < 1200680200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with debugger integration and everything < 1200680210 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's one of the Must Haves for CL development < 1200680219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Emacs has all those features which are great but nobody who was brought up on a GUI will like or even understand < 1200680223 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but anyway... i should cat that over to franz' telnet and get SLIME on it < 1200680224 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200680229 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was brought up on a gui.. < 1200680242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you managed to shake yourself out of it < 1200680246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no.. < 1200680250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm still running a gui irc client here < 1200680250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200680258 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :connecting to the Internet doesn't count < 1200680262 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and - shock! - using a mouse! < 1200680266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it became designed for a GUI < 1200680275 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: occasionally i end up using the mouse in emacs :P < 1200680280 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and actually I don't use mice all that often nowadays, now I have a laptop < 1200680280 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm fast with a mouse though < 1200680282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so it doesn't matter < 1200680306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my editing style is really idiosyncratic < 1200680317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so is most people's, I expect < 1200680320 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it comes from using every editor from Notepad to vim to TextMate to ... < 1200680344 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sed? < 1200680348 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, i suck at sed < 1200680351 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh! < 1200680353 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I've used acme < 1200680369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it overwhelms you with pure awesomeness, too bad it can't really do shit i guess < 1200680376 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :actually i have al lthe plan9 tools installed on here < 1200680383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :including an x11 acme < 1200680389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: OH! Have you used sam? < 1200680392 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :another plan9 invention < 1200680395 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it has: < 1200680397 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200680399 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a top frame, with an ed prompt < 1200680406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and loads of windows below each with one file < 1200680418 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you can edit the file with all the flexibility of ed, while seeing it below < 1200680419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hardcore < 1200680424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's even GRAPHICAL! < 1200680431 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sort of like the relation of ddd to gdb? < 1200680438 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ddd= < 1200680443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was started on ddd, but grew to prefer gdb < 1200680450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ddd is sort of a GUI for gdb < 1200680474 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it runs gdb in a separate process, and translates GUI input into gdb commands and gdb output into graphical displays < 1200680486 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can see the gdb commands scrolling past at the bottom < 1200680523 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1200680547 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: plan9 is crazy < 1200680547 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, this /is/ the computer on which I wrote my buggy elisp abstraction eliminator < 1200680550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ever used it's WM? < 1200680560 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I'm pasting it now so I can later get it onto my laptop < 1200680589 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and no, I've only used Win 3.1 and Win 95 onwards WM, X11, the Common Desktop Environment, Gnome and KDE < 1200680601 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :never used OS X? < 1200680602 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :poor thing < 1200680603 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1200680610 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not on my own computer < 1200680616 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've used it on other computers < 1200680623 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I'm a fan of several of its features < 1200680632 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's probably slightly better in UI terms than Gnome/KDE, but not by much < 1200680645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it is once you learn about it through using it < 1200680670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i must admit that i'm an exposé addict, though mostly keyboard-based :P < 1200680695 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, the abstraction eliminator is at http://pastebin.ca/860539 < 1200680703 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's buggy if you don't use a prefix arg to disable optimisation, though < 1200680718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wrote it so long ago that I've forgotten the syntax, though so I'd have to work it out again < 1200680750 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Is it for lambda expressions in Haskell syntax? < 1200680759 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Unlambda syntax < 1200680767 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with an extension to write lambdas < 1200680776 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :\ or ^? < 1200680792 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it seems to be ^ and $, according to the source < 1200680802 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^ to declare a lambda binding, $ to use it < 1200680872 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Unlambda. Mode. < 1200680872 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Jeez. < 1200680886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FONT LOCK WHAT THE HELL < 1200680887 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I make it a habit to write Emacs modes for all the esolangs I work in < 1200680894 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with font lock < 1200680911 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :only intercal-mode is publically released, though, and I didn't even originally write that < 1200680919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just added font lock and some helpful functions to it < 1200680946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`^x`$x$x`^x`$x$x < 1200680951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :followed by C-c C-b < 1200680956 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gives ```sii```sii < 1200680966 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which come to think of it is actually wrong < 1200680987 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :ACTION uses this one : http://membres.lycos.fr/bewulf/Russell/Lazy%20Bird/ae9.py < 1200680988 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the input should have been `^x`$x$x^x`$x$x < 1200681001 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :giving the correct ```sii``sii < 1200681011 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Although it doesn't differentiate combinators from variables. < 1200681025 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :So s, k, i, c and b are better left out of the expression. < 1200681026 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I still th ink we need an abstraction introducer. < 1200681043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :```sii``sii -> ((\x. x x) (\x. x x)) < 1200681049 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :who was it who said that decompiling Unlambda was probably easier than compiling? < 1200681050 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Wouldn't that just be replacing the combinator by its lambda? < 1200681060 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's what abstraction introduction is < 1200681078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well yes < 1200681080 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but also optimizing < 1200681082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :see my example < 1200681087 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :'kay. < 1200681127 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :here's a program I wrote for the abstraction eliminator: < 1200681128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://pastebin.ca/860594 < 1200681138 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I wonder, does Unlambda and all the purely functional qualify as string-rewriting? < 1200681157 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it can be implemented with string-rewriting < 1200681166 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that's the method I use when stepping through Unlambda by hand < 1200681185 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I could probably write a quick interpreter in my new regexp language, which I decided to call Cyclexa < 1200681265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the program that I pasted, by the way, is a P'' interpreter in Relambda (which compiles into Unlambda with C-u C-c C-b; it should work without the prefix arg, but it's buggy) < 1200681288 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Relambda = Unlambda + lambda; any infinite loop must contain a ! character somewhere, which otherwise has the same semantics as i < 1200681311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Does it detect? :-) < 1200681323 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it detects everything but infinite loops < 1200681331 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :btw, my golf idea: http://golf.shinh.org/, but you can add challenges, and it has a golf challenge for the site source itself < 1200681334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: aww < 1200681334 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is why you have to put a ! somewhere inside to tell it where they are < 1200681340 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: why? < 1200681345 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's in theory, at least. In practice it seems not to work. < 1200681353 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Can't you just solve the halting problem to detect them? < 1200681438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how does that golf site work? < 1200681443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, how do you use it? < 1200681502 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: uh < 1200681506 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you see input/output < 1200681510 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :implement the program, etc < 1200681511 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :upload it < 1200681513 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it goes in the rankings < 1200681525 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does it check the program to see if it works? < 1200681580 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and how can Esolang not have a page about GolfScript? < 1200681587 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, it does check < 1200681591 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/p.rb?print+file < 1200681595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it checks input to output < 1200681603 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: because its really new < 1200681621 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION must write a stub immediately < 1200681808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/reveal.rb?Quine/shinh/1182045546&php < 1200681810 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that is so cheating < 1200681830 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :What language is it? < 1200681845 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Ruby? < 1200681891 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Brainfuck, probably < 1200681982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200681983 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PHP < 1200681992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :_ is apparently a PHP quine < 1200681999 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just tested it: yep. < 1200682003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1200682004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1200682005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as is anything that doesn't contain < 1200682011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :grrr < 1200682013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that is so cheating < 1200682027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :In HOMESPRING, the null program is not a quine. < 1200682043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/p.rb?Quine i'm trying to find an interp with short error messages < 1200682046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so ican do a kimian quine < 1200682046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200682050 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if it has ed < 1200682056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :one char quine! < 1200682092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION had the idea of trying to create an iterating Kimian quine < 1200682106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or even better, a quine-pair where one program was Kimian but the other wasn't < 1200682143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1200682145 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1200682170 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if I manage to do it in gcc, then that'll be my IOCCC entry for next year < 1200682196 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my previous one was a BF interpreter in alphanumericless C (apart from defines and the prototype of main) < 1200682199 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sed: 1: "~": invalid command code ~ < 1200682206 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which contained several hidden programs < 1200682216 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damnit < 1200682218 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they use a different sed < 1200682227 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION installs gnu sed < 1200682231 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some of which were written in Perl, some of which were written in BF < 1200682235 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gnu error messages are large :( < 1200682266 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Create a language full of short error messages! < 1200682276 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Or some sort of language where the output is only error messages < 1200682338 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :ed < 1200682376 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what about this for a Kimian quine, in x86 machine code? < 1200682383 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Illegal instruction (core dumped) < 1200682405 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least on the 8086, all lowercase letters are illegal instructions, so I'd just have to check what capital I does < 1200682424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1200682435 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not too long either... < 1200682445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Error: not ELF binary" < 1200682447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :from the golf site < 1200682457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what, they want it in Elf format? < 1200682460 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200682465 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just give them your own shorter program < 1200682469 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that you just told me < 1200682474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which one... < 1200682475 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that sed? < 1200682478 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's bsd sed output < 1200682481 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they use gsed < 1200682481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Error: not ELF binary < 1200682483 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1200682484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1200682485 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no.. < 1200682489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it outputs it and rejects the submission < 1200682493 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it checks before verifrying < 1200682506 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so that's a Kimian quine against the website itself < 1200682512 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a moral victory, at least < 1200682583 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1200682584 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200682592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, shit < 1200682595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it checks for status=1 < 1200682597 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bastards:P < 1200682609 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I had my D compile time quine: < 1200682610 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :test.d(1): found '1' when expecting ')' < 1200682611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :test.d(1): no identifier for declarator test.d < 1200682611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :test.d(1): semicolon expected, not ')' < 1200682611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :test.d(1): Declaration expected, not ')' < 1200682615 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :do you mean status=0? < 1200682625 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or are you using VMS? < 1200682631 0 :RedDak!unknown@unknown.invalid QUIT :Remote closed the connection < 1200682664 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it checks if status=1 and denis it < 1200682665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*denies < 1200682701 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :test.sh: line 1: [: missing `]' < 1200682705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fuck you bash < 1200682710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fuck you for matching up yuour []s in errors < 1200682717 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cruel people < 1200682739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, the man page for true gave information on how to make it error out < 1200682750 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh well: < 1200682752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'cat $0' < 1200682754 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :accepted. < 1200682759 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i feel kinda hollow inside < 1200682762 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : /bin/true --version 2>&1 | /dev/full < 1200682768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: wow < 1200682777 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WTF TRUE TAKES OPTIONS < 1200682779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :..... < 1200682801 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :only --help and --version < 1200682806 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and only then if you give a full path < 1200682822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and even only then on the GNU version < 1200682834 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, /bin/false errors even if you ask for help or version info < 1200682846 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :because it's so important to know what version of true you're running ;) < 1200682860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :updated in version 2. now fails. < 1200682920 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if anyone ever has run true --help in an attempt to find out what it does? < 1200682950 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :well, they'd find out alright. < 1200682991 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/p.rb?Nothing Um < 1200683016 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1200683017 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hahaha < 1200683018 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you have to print: < 1200683023 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*NOTHING* < 1200683034 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with the actual input: < 1200683036 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*NOTHING* < 1200683049 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :You'd think that most of the shortest programs would be of length zero. < 1200683058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, Slereah < 1200683061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you have to print out the string: < 1200683063 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*NOTHING* < 1200683081 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Then why are some of the program of length one :o < 1200683094 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because you get the stirng: < 1200683096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*NOTHING* < 1200683097 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as input < 1200683099 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so in e.g. sed < 1200683103 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can just do nothing < 1200683106 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It is subtle < 1200683106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it denies 0 length programs < 1200683114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/p.rb?Evil+C+Compiler i'm just gonna hardcode this one < 1200683114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200683118 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I just entered qq as a palindromic PHP quine < 1200683131 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it rejected q; apparently it only wants even-length palindromes < 1200683151 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait no... i want to call out to gcc < 1200683152 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :MWAHAHA < 1200683203 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :echo"Compiling...\nRunning...";gcc /dev/stdin;./a.out < 1200683229 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200683233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: how do you read form stdin in gcc compiles < 1200683239 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc -x c /dev/stdin < 1200683244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you have to tell it what language stdin is in < 1200683309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is now trying to figure out a palindromic quine in Underload < 1200683316 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :omg i did it < 1200683317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEW RECORD < 1200683319 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :echo 'Compiling... < 1200683319 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Running...';gcc -xc /dev/stdin;./a.out < 1200683330 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :HAHAHAHHAAHAHAH I RULE < 1200683346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm sure that's cheating... < 1200683347 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :huh wtf < 1200683351 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... 58 chars < 1200683355 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thats not hte winner < 1200683359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: um duh all the submissions are like < 1200683363 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :500-40 chars < 1200683367 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ofc they do that < 1200683396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!daemon ul bf http://pastebin.ca/raw/367774 < 1200683436 0 :oklopol!unknown@unknown.invalid QUIT :Remote closed the connection < 1200683509 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: could i abuse gcc to make it print my lines? < 1200683515 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which are < 1200683516 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compiling... < 1200683518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Running... < 1200683526 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think so < 1200683645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: speaking of which < 1200683649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how small can a c compiler get? < 1200683651 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :self-compiling < 1200683664 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I would venture, 200-300 lines maybe? < 1200683685 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://fabrice.bellard.free.fr/otcc/otcc.c otcc is rpetty close, but post-obfuscation.. < 1200683700 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also: < 1200683704 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :outputting assembly < 1200683706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for portability. < 1200683708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :int main(){system("gcc -xc /dev/fd/0");} < 1200683713 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :har har < 1200683715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but seriously < 1200683723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fd/0 saves one char over your stdin < 1200683725 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION /dev/stdin < 1200683727 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION /dev/fd/0 < 1200683729 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200683730 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thanks for the suggestion < 1200683731 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1200683732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but anyway < 1200683733 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1200683784 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (:aS(:^S^:)Sa:):^S^:(:aS(:^S^:)Sa:) < 1200683785 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so what about for a real compiler < 1200683786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1200683787 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :(:aS(:^S^:)Sa:):^S^:(:aS(:^S^:)Sa:) < 1200683793 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul ( < 1200683797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul ) < 1200683800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul ~ < 1200683807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :try a longer program < 1200683814 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (Test)S < 1200683817 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Test < 1200683825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul S < 1200683836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul S < 1200683839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (S)^ < 1200683847 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (S):^ < 1200683847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (S):^ < 1200683850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1200683851 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :S < 1200683853 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :S < 1200683854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1200683860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (S):a^ < 1200683866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (SS)::a^ < 1200683875 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200683876 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a^ is unlikely to produce output < 1200683878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1200683879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200683885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I can only assume that EgoBot restarts the daemon each time < 1200683886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (S):~a~^ < 1200683889 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :(S) < 1200683897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it's written in BF and does no error checking < 1200683897 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (SS):~a~^ < 1200683901 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :(SS)SS < 1200683907 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (:~a~^):~a~^ < 1200683912 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200683914 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eff ths < 1200683915 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :L:P < 1200683917 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no Ss in that < 1200683928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (:aSS):aSS < 1200683931 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :(:aSS):aSS < 1200683948 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (aS(:^)S):^ < 1200683951 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :(aS(:^)S):^ < 1200683953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I know < 1200683968 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :those are the two main sorts of quines < 1200683972 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul ()(*)*S < 1200683975 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :* < 1200683982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul ()(()*S)*S < 1200683985 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :()*S < 1200683998 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (()*S)(*S):*S < 1200684001 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :*S*S < 1200684015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!ul (()*S)(*S)*~:~^ < 1200684049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: have you got svn on that machine yet? :) < 1200684052 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or a c compiler. < 1200684056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have a c compiler < 1200684059 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :two c compilers, in fact < 1200684066 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's also a program called c99 < 1200684069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when I run it I get < 1200684083 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :c99 utility unavailable SunOS 5.9 < 1200684112 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :do you have svn yet? :P < 1200684133 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :can't install software on here < 1200684146 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hahaha, golf.sinh.org pokes fun at ICFP < 1200684148 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"GolfScript is the programming tool of choice for discriminating golfers. < 1200684148 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ruby is a fine programming tool for many courses." < 1200684149 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it isn't my machine, I'm not root, and I'm not supposed to download any to my home account < 1200684162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ICFP is a great idea, by the way < 1200684187 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, and Perl is not too shabby < 1200684194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :according to their rankings, anyway < 1200684310 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh: puts'gXgle'.sub'X','o'*gets.to_i < 1200684316 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm silly < 1200684345 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does that do? < 1200684377 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :10000000000000000000000000000000000000000000000000000... ? < 1200684398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :input 1 < 1200684399 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you get < 1200684402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gogle < 1200684402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1200684403 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :google < 1200684404 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 < 1200684406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gooo... < 1200684411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :its the 'google' challenge < 1200684413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :on the golf site < 1200684417 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :puts"g#{'o'*gets.to_i}gle" < 1200684419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :26 chars < 1200684430 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the top is 14 chars in golfscript. < 1200684435 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to beat ruby i need to beat 24 chars < 1200684515 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i need to optimize gets.to_i < 1200684628 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :I see String#oct .. but no String#dec :( < 1200684680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"42".oct.to_s(8).to_i < 1200684680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200684824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh my god < 1200684828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :here's a loop forever program: < 1200684828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :main=-277; < 1200684849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is that machine code for goto self? < 1200684855 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or machine code for wait-for-interrupt? < 1200684858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or something similar? < 1200684865 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :I heard the IOCCC disqualified such things < 1200684881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it works on os x < 1200684887 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and i dont think golf.shinh.org does < 1200684888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so: < 1200684889 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that was a rule change after that won the first year < 1200684892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i think its portable, in some crazy way < 1200684893 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :because although compilers would technically accept main not being a function... < 1200684894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also: < 1200684895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1 GOTO 1 < 1200684898 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my basic entry :D < 1200684905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1200684906 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :my befunge entry: < 1200684906 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :can you do < 1200684908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1GOTO1 < 1200684918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :LOOL < 1200684918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in C, I think the record is main(){main();} < 1200684924 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :4 char ruby: < 1200684925 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :`vi` < 1200684930 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: doesn't work on it < 1200684932 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :is that valid C? I know it's not valid C++ < 1200684932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the compiler needs to do tail-recursion optimization to optimize that < 1200684944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C doesn't have a no-recursive-main restriction < 1200684960 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :in C++, at least, main has undefined linkage and can't be called from inside the program :( < 1200684973 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is rewriting the Love Machine 9000 < 1200684979 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can just work around it by making a function that main is a wrapper around < 1200684984 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Hoping for some nicer code < 1200684997 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can't call main() in C ais523 < 1200684998 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :its forbidden < 1200685001 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and undefined < 1200685010 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, you're thinking of C++ < 1200685014 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's legal in C < 1200685014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1200685054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION submits ```sii``sii < 1200685065 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ooh < 1200685067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :``ci`ci < 1200685068 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :now that's clever. < 1200685137 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can beat that < 1200685144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which number is the problem? < 1200685158 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh i submitted >< in befunge < 1200685161 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: "timeout" < 1200685165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ctrl-F it < 1200685174 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :omg < 1200685176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a one-char befunge < 1200685178 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"1" < 1200685195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pity, it didn't work < 1200685203 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what was it < 1200685204 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :` leads to a timeout in normal Unlamda because it waits for more input < 1200685208 0 :RedDak!n=dak@host54-85-dynamic.10-87-r.retail.telecomitalia.it JOIN :#esoteric < 1200685213 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but they remembered to add an EOF < 1200685252 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :hah, I like this ruby one: `vi` < 1200685336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200685574 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: the only thing better will be mine < 1200685580 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which as i have asid will have a golf on the site's code itself < 1200686186 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :loooooooooooooooooooooooool < 1200686191 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I submitted this to the 123 challenge < 1200686193 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :puts 1;x=File.read("test.rb").sub("puts","puts 1+");File.open("test.rb","w").write(x) < 1200686217 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks at the 123 challenge < 1200686278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :take a look at the top ones < 1200686279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200686290 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I did, it's a clever idea < 1200686295 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1200686295 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :keep resubmitting until it works... < 1200686302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and hah < 1200686302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1200686304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you're right < 1200686305 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sheesh < 1200686403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what's the sheesh for? < 1200686428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because its lame for them to do that < 1200686428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200686549 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :puts$_ unless$_=="\n"while gets < 1200686550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i am lame. < 1200686597 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :,[----------[++++++++++.],] < 1200686599 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh. < 1200686605 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what's the most compact way to represent 10 in BF? < 1200686608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just 10 -s or +s < 1200686608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :isn't it < 1200686614 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's a page about it on the wiki < 1200686635 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :+++++[>++<-]> < 1200686637 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yes, all numbers up to 14 are best done in unary < 1200686644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: but i have duplication there < 1200686645 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :? :S < 1200686647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 -s and 10 +s < 1200686697 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, I like my Perl entry for the echo, even though it's clearly not the shortest < 1200686701 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#!perl -p < 1200686723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the whole program is preprocessor directives ! < 1200686737 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1200686790 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :most people probably don't even realise that you can do that < 1200686862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise, a perl quine: < 1200686866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#!/bin/cat < 1200686881 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't even know if that's cheating or not < 1200686888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it is < 1200686893 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, it's an X quine for all X < 1200686919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, because only perl will run a different program with the current source if it sees a #! at the start < 1200686924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cat doesn't, for instance < 1200686951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my ruby sort: < 1200686952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :print gets.split('').sort < 1200686956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/p.rb?sort+characters < 1200686959 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1200687061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hello oerjan < 1200687064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we were discussing golf. < 1200687099 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :one of the many sports i have not tried. < 1200687099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I went and entered a new competition: to create the shortest Underload interpreter < 1200687117 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :unless you count minigolf. < 1200687128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this is the programming kind of Golf < 1200687144 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Our compiler won't do very well. :-) < 1200687156 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I allowed execs, though, so it will be allowed... < 1200687194 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why did you allow execs? < 1200687197 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200687206 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so that you can pipe a compiled output into gcc < 1200687219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and because I couldn't see a reason to deny them < 1200687243 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I < 1200687246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'d need to include prelude.c < 1200687253 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and that would make it biiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiig ;) < 1200687273 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there should be an anti-golf < 1200687283 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'find the most obscure, drawn out, just plain ridiculous solution' < 1200687362 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :all the COBOL users would win on file size :( < 1200687441 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, you could probably make some program that will send an email to a third party, asking him to send a letter containing "Hello world!" < 1200687466 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Ideally, on another continent < 1200687471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is then OCR'd in < 1200687487 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :by writing an x86 emulator, an OS, with a TCP/IP stack and sendmail < 1200687527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not email, snailmail < 1200687571 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Are there any company that will send snailmails containing some text automatically? < 1200687582 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Relying on a third party feels a little like cheating. < 1200687721 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :probably not < 1200687723 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1200687735 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :you'd still have to write a "driver" for the third party. Think of it as a piece of hardware. < 1200687940 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I'm not a machine! < 1200687943 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I'm a man! < 1200687958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: man: a very fancy machine < 1200687963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for some values of 'very fancy' < 1200687968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pretty slow ones. < 1200688024 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :humans are slow and unreliable, but quite flexible < 1200688025 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, depends in what areas. < 1200688038 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :both mechanically and in terms of their capabilities < 1200688038 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :We can walk without bumping into walls! < 1200688052 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :You can't say that of every robot < 1200688055 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :we can read crappy handwriting with amazing accuracy! < 1200688061 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :we can interpret regional accents! < 1200688247 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Plus, we're not that slow! < 1200688256 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It just takes us a while to speed up. < 1200688266 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :A few thousand years, the time for us to invent computers. < 1200688320 0 :puzzlet_!unknown@unknown.invalid QUIT :Remote closed the connection < 1200688327 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1200688358 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :fair enough < 1200688375 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :plus our collective processing power is capable of growing at a nearly exponential rate < 1200688416 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so! who wants to write a tiny esoteric C compiler < 1200688424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aimed to be the smallest self-compiling C compiler < 1200688424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1200688425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not really C < 1200688428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tiny-esoteric-subset-of-C < 1200688429 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200688480 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :ACTION foresees abuse of goto < 1200688488 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :sounds vaguely interesting. What platform will we target? < 1200688500 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: if that's the case, I'm definitely in. :D < 1200688514 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wants an ISWYM impl. < 1200688522 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :let's make goto capable of calling function pointers or something < 1200688526 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wasn't that done already as an IOCCC winning entry? < 1200688537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: maybe, but whatever < 1200688542 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: i was thinking just portable asm < 1200688547 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: heard of it, but who cares, it'll be fun < 1200688550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1. it's easier to debug :) < 1200688554 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :2. portability! < 1200688558 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200688559 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i use OS X, you probably use something else. < 1200688563 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I use OSX < 1200688567 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :do you < 1200688567 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1200688570 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well someone else might not < 1200688570 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1200688574 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :what about replacing goto with the J operator (not that I actually know what it does) < 1200688587 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :lies and heresy. Everyone uses OSX or a degenerate form of OSX. < 1200688590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fax: that's a bit too changed from C < 1200688594 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hopefully we can make the only thing requiring special stuff syscalls < 1200688600 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :It is? < 1200688608 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :It's very much like how all labor is really degenerate forms of bending. < 1200688611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, this code should compile OK: < 1200688620 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(void) { printf("Hello, world!\n"); return 42; } < 1200688622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :when we're done obviously. < 1200688625 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1200688627 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(int argc, char **argv) { printf("Hello, world!\n"); return 42; } < 1200688628 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that too < 1200688631 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so: we do need types < 1200688633 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :let's build everything around those two examples < 1200688639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: let's not :P < 1200688643 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1200688649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bit hard to jump right into c like that < 1200688649 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :dang < 1200688676 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: Oh yeah and no parser generators < 1200688677 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1200688677 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :will we also have to build portions of a standard library from scratch? < 1200688684 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and... maybe. maybe not. we'll see < 1200688689 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION did a 303-byte Underload interpreter in Perl < 1200688693 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I never use parser generators. They're for pussies and people in a rush < 1200688701 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: though i don't think we should compile to _main < 1200688708 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because the C stdlib does that stuff < 1200688713 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and well it just seems like too much of a copout :P < 1200688713 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1200688716 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's actually an optimising interpreter, so it's not quite correct because it sometimes optimises inside literal strings, but the examples don't catach that problem < 1200688720 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but... entry points are wildly different between platforms < 1200688736 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I'm just trying to firmly establish what we plan to accomplish and create from scratch < 1200688774 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: yeah < 1200688791 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: OK i guess we can compile to just main for now < 1200688795 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :make 'int' arbitrary precision < 1200688797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and let the c runtime do the legwork. < 1200688833 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: do we want to typecheck? :D < 1200688839 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200688862 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :it'll make it simpler, and we can just assume C programmers know what they're doing < 1200688871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aww < 1200688872 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :everything is an int! including pointers! < 1200688876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but that's not as fun RodgerTheGreat :) < 1200688877 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1200688879 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :exactly < 1200688882 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :everything IS an int < 1200688891 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :chars will actually be ints, booleans will actually be ints, etc < 1200688901 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :everythin is arbitrary precision int < 1200688907 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :we can encode things differently, but you can randomly swap however you want < 1200688907 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: but imagine golfing a typechecker < 1200688908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heck < 1200688910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you're inventing BCPL < 1200688913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we could add type inference < 1200688916 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :so we *might* want some way to cast stuff < 1200688918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'wtf' type < 1200688922 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf foo = 2; < 1200688931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200688935 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: exactly < 1200688939 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's not C without type checking < 1200688947 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I encourage an extremely minimalist standard < 1200688959 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :ideally with as little undefined behavior as is reasonably possible < 1200688971 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But we're trying to compile something that is recognizable as C here :P < 1200689035 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :we're trying to make something that is A) a programming language, B) is compatible with C functions/libs/etc, and C) can compile the test programs "int main(void) { printf("Hello, world!\n"); return 42; }" and "int main(int argc, char **argv) { printf("Hello, world!\n"); return 42; }" like you'd expect them to in regular C, without cheating. < 1200689047 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :this is different than "recognizable as C" < 1200689059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you are splitting hairs here, though < 1200689075 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :Splitting hairs, perhaps, but this is necessary < 1200689094 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why can't we just aim to write "A c compiler" and then decide what to not implement when we come to that? < 1200689106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But type checking is very fundamental to *C*, one of its defining things, so.. < 1200689113 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I am reducing the scope of the problem until we have solidified a design. This is generally how I work. < 1200689127 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, but this way we'll be going through the whole spec < 1200689128 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nitpicking < 1200689172 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :if you don't nitpick, how can you collaboratively design something as necessarily precise as a programming language? < 1200689175 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :what about the preprocessor? < 1200689197 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: we're not designing a programming language. we're implementing a language, continually reducing it. < 1200689202 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's incremental development. < 1200689207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: i think that can come last. < 1200689213 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: it seems reasonable that we could do without a preprocessor, unless it allows us to get away with a simpler language < 1200689235 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a preprocessor will only be a few hundred lines anyway < 1200689243 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we're going for 'conciseness', not 'bytes' < 1200689250 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :A nice macro system would be cool < 1200689273 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :concise CLISP < 1200689281 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :a nice macro system and a powerful goto might make it possible to have entirely synthetic functions! XD < 1200689285 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1200689296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :macros with return types! < 1200689301 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :brilliant < 1200689303 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they define the type of the expression they produce < 1200689303 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I love it < 1200689332 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :all we need to do is come up with a way for macros to generate something a linker can work with < 1200689342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: Macros are easy: < 1200689352 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :docompile(macro_body); < 1200689356 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :call_assembler(that); < 1200689361 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then: < 1200689369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :call_linker(that,"blah"); < 1200689371 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dlopen("blah"); < 1200689375 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... get a funcptr ... < 1200689380 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :funcptr(argstomacro); < 1200689382 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1200689383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200689384 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1200689396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: you can just grab a funcptr from the linked file < 1200689399 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and call that < 1200689428 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :sounds very creative, and it will significantly reduce the complexity of the language, I think < 1200689442 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nah, i don't think so < 1200689445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it'll be a fun extra < 1200689451 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :recursion may cease to be possible, depending on how this works, but that's fine. < 1200689454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but i don't think it'll provide much actual usefulness or ways to reduce < 1200689499 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: by the way, what source control systems do you have? < 1200689505 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pleasesaymercurialordarcspleasesaymercurialordarcs < 1200689520 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I don't enjoy source control systems < 1200689527 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :they cause me pain and irritation < 1200689550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :are you suggesting that we just ftp it somewhere and overwrite everything? < 1200689550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1200689555 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :darcs and hg aren't like svn and the like < 1200689558 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :http://rodger.nonlogic.org/ssvn/about.htm < 1200689560 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :woo < 1200689578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so you have experience with subversion and didn't like it < 1200689580 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not suprising. < 1200689589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you should try a distributed system like darcs or hg though. < 1200689604 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :subsubversion solves most of my objections to source-control systems in general < 1200689741 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1200689761 0 :sekhmet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION can't stand *not* using VCSes < 1200689815 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anybody want to work on the compiler that doesn't despise vcses? :P < 1200689818 0 :sebbu!n=sebbu@ADijon-152-1-4-93.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1200689963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hehe, guess not < 1200690099 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: so are you adamant about this vcs thing? :P < 1200690118 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :pretty much < 1200690128 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not even going to *try* darcs or hg? < 1200690134 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which are nothing LIKE svn? < 1200690203 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :there is a sizeable portion of my soul dedicated to my hatred of version control systems. If I am getting paid, I will use one, but I at one point stated that I would never use one for personal projects < 1200690231 0 :sekhmet!unknown@unknown.invalid PRIVMSG #esoteric :What do you hate about them, out of curiosity? < 1200690248 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just for future reference: < 1200690249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: you really think they're all like svn don't you.. < 1200690250 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :'('/'{'*')'/'}'*'S'/'p'*'a'/'`'*'~'/"\\"*'!'/';'*'*'/'+'*':'/'.'*'^'/'~'* < 1200690260 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is almost a Underload -> GolfScript compiler in GolfScript < 1200690267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'almost'? < 1200690269 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except that the output is completely wrong < 1200690275 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ah < 1200690278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it translates string literals into GolfScript too < 1200690280 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: make it store the original string. < 1200690282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: as well < 1200690290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: then add an 'eval' and submit it to your competition :P < 1200690293 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not very easy, I don't think < 1200690304 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :they seem to me an inherently flawed design. Merging, forking and the like can be resolved with policy, rather than software. They also almost universally force people to install the program just to check out the latest ticket, which is stupid for many reasons. < 1200690311 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it simply literally converts equivalent commands < 1200690322 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat: Yes, let's do what the computer can do for us! < 1200690322 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :that second reason is a bigger gripe for me, really. < 1200690333 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :both languages are concatenative, and in such cases a one-to-one conversion is often possible < 1200690335 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And you can check out svn, darcs, ... just with a recursive wget. < 1200690363 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :oh, a recusive wget, how incredibly convenient < 1200690382 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh i'm sorry i forgot that typing one line is impossible < 1200690387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :let's just click instead :| < 1200690423 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :there are many reasons I use a mac, and one of them is that I have no patience whatsoever for a shitty UI, be it console-based or graphical. < 1200690437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... wget is a shitty UI? < 1200690443 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :the UI defines the usefulness of any program. < 1200690447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i repeat < 1200690452 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wget is a shitty ui? < 1200690453 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :and you're intentionally misinterpreting my argument < 1200690544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm not < 1200690678 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so, is this bash quine a quine by cheating? < 1200690680 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ps ho%a -Cps < 1200690696 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ps: %a: keyword not found < 1200690697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ps: no valid keywords < 1200690698 0 :sebbu2!unknown@unknown.invalid QUIT :Connection timed out < 1200690710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it looks to me like on some system, it works by ps'ing to find its own command line < 1200690779 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, someone's come up with a 76-byte Underload interpreter in C < 1200690784 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if it's for real or by cheating? < 1200690802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cheating < 1200690811 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :has to be, really, doesn't it < 1200690825 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe it looks at the input and comes up with one of the three possible outputs depending on what the input was < 1200690830 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :But, is it good cheating or bad cheating? < 1200690847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ps -Aocommand|grep "ps -" < 1200690850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ working ps quine < 1200690854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err wait < 1200690854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200690863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1200690866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eh. < 1200690869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: and yeah of course < 1200690878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :can't you check? < 1200690880 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as the creator < 1200690886 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not until the deadline < 1200690889 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which I set in 4 weeks time < 1200690896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: bah, 4 weeks? < 1200690904 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :may as well leave it up there a while < 1200690905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :51b(embed) < 1200690906 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'embed'.. < 1200690909 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1200690910 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also: < 1200690915 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :51b is a big user of that site < 1200690915 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so that's a clue that it's a cheat < 1200690917 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so.. it's possible < 1200690929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that it's real < 1200690931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but what's (embed) < 1200690941 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my guess is that the answers are embedded in the source < 1200690951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1200690958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then 51b pointed it out < 1200690959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so its ok < 1200691123 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I did it probably the same way in 37 by cheating < 1200691189 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just switch between the 3 possible answers based on whether certain characters are in the source < 1200691209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does an underload interp reeaallly need an infinite stack < 1200691214 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or is, say, 65536 enough < 1200691241 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :according to the spec, it needs an infinite stack, but it also has to be capable of infinitely long strings, etc., regardless of your computer's memory < 1200691247 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in real life you can put limits on it < 1200691282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah i am going to for speed < 1200691287 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what about the length of the strings? < 1200691292 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1024 enough? < 1200691297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e. (..morethan1024chars..)=err < 1200691302 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not nearly, because numbers are generally stored in unary < 1200691306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1200691307 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :taking up two characters per value < 1200691307 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what then < 1200691327 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :65540 is probably enough < 1200691338 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that lets you store numbers up to 32767 with a bit of leeway for doing arithmetic < 1200691370 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why do you want a string length limit anyway? < 1200691375 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Are you trying to avoid malloc? < 1200691389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no -- trying to avoid realloc() < 1200691397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cause you have to store the length, check, etc < 1200691414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :golf here.. < 1200691425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :actually, wait < 1200691432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in that case, make the limits just long enough to run the example programs < 1200691451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i wish you could get the length of stdin in c < 1200691451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1200691471 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :putting a limit on the /length/ of an input program is probably acceptable < 1200691480 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm just doing it in ruby < 1200691482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :far easier to golf < 1200691490 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1200691514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yup < 1200691595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i'm only handling one line programs < 1200691595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200691610 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it isn't as if newlines are legal outside strings anyway < 1200691899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :huh. the compiler allows that. < 1200691905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in fact it allows all junk < 1200691913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for strings, ofc. < 1200691931 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it uses the INTERCAL rule; junk only causes an error if it's executed < 1200691942 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so just compile an error function as the code and use the correct string < 1200691978 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nope: < 1200691980 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(abc)^ < 1200691984 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1200691986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the a will fail < 1200691987 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(foo)^ < 1200691989 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that works. < 1200692021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you just need to map all unrecognized characters to call error() just like ~ is mapped to swap(), etc. < 1200692048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200692053 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thats sloow < 1200692055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1200692056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1200692057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thats big < 1200692130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not slow, but inefficient < 1200692145 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... maybe you could not generate any code in a block after the first error() < 1200692154 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :after all, nothing past that point can be run anyway < 1200692288 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: damn mine is 325 < 1200692290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :vs your 303 < 1200692297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ul.rb:1:in `+': < 1200692298 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :line 1. < 1200692299 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what sort of method did you do? < 1200692300 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :very helpful ruby. < 1200692313 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s=(gets.split"").map{|x|x[0]}.reverse; < 1200692317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ^^ probably what takes the space < 1200692340 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mine's all regexp < 1200692379 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't evaluate in the right order - it's a strange mix of lazy and eager - but that doesn't matter for the example problems because it only affects the S command < 1200692451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% echo "(:aSS):aSS" | ruby ul.rb && echo < 1200692452 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(:aSS):aSS < 1200692460 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :343 < 1200692477 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% echo "(x)(::**)(::**)^^S" | ruby ul.rb && echo < 1200692477 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ul.rb:1:in `[]=': index -2 out of array (IndexError) < 1200692478 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damn. < 1200692514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% echo "(x)(::**)(::**)^^S" | ruby ul.rb && echo < 1200692514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :x::**::**x::**::**x::**::**x::*............ < 1200692524 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: < 1200692524 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a=[];s=(gets.split"").map{|x|x[0]}.reverse;while s!=[];c=s.pop;case c;when ?(;i=1;a<<[];while i>0;x=s.pop;if x==?(;i+=1;elsif x==?);i-=1;else a[-1]< i guess < 1200692672 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's what your js does < 1200692685 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yup, I was preparing to retrofit the " syntax in later < 1200692690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it never really caught on < 1200692705 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it remains part of the spec but never implemented, and it's probably better to keep it that way < 1200692719 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :besides, an escape character is useless if it can't even escape parens < 1200692731 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it only escapes <>[]", which are only banned because I say so < 1200692759 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :My basic stuff is going to be: s/INSTRUCTION([^<]*)(([^<]<)*)TOP ELEMENT/RESULT/g < 1200692764 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is... that right? < 1200692773 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1200692776 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :paren matching will be too hard < 1200692777 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fsck that < 1200692778 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1200692891 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the Thutu method is to change inner parens to {} temporarily < 1200692905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that makes up a good part of the program < 1200692962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i submitted a cheat one. < 1200692963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/.*^^S/xxxxxxxxxxxxxxxxxxxxxxxxxxx/ < 1200692963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/.*^S$/::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::/ < 1200692974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but forgot to say cheat < 1200692974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :shit < 1200692996 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Write an UL interp in your regexp lang < 1200693262 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(```s$+$+$+!=``=1=3`=2=3|``k$+$+!==2|`i$+!==1|`$+$+|[ski])=^*?('ski'|`'sk'$+|``s$+$+)$ < 1200693268 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does it for ski unlambda < 1200693269 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1200693280 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it'll go into an infinite loop on an invalid program < 1200693308 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, as for forgetting to say cheat, resumbit it as ehird(otherthesamelengthisacheatandsoisthisone) < 1200693437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://golf.shinh.org/p.rb?Minimal+scheme+interpreter < 1200693441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :possibly the hardest one yet :P < 1200693466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :barely golfable actually < 1200693514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: if you even get a submission that works with that in less than an awful lot of code i'll be impressed :P < 1200693563 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pretty cheatable, of course < 1200693570 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1200693579 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and i missed out things like (quote X) < 1200693580 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but eh. < 1200693583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does Scheme have an eval? < 1200693588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. < 1200693589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes it does. < 1200693598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you don't need to provide it though < 1200693604 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, but you could use it < 1200693612 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :actually yes < 1200693614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you're right < 1200693683 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(let l()(let((_(read)))(if(not(eof-object? _))(eval _))(l))) < 1200693712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1200693716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :have to specify an environment < 1200693746 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DAMNIT < 1200693751 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i have unbalanced parens in my test < 1200693753 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :woe is me < 1200693788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lfjklsdhfsdjklfhs WHY CAN'T YOU EDIT IT < 1200693852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :submit a 'fixed version' of the problem, and mention in the description that the other has typos in the test cases < 1200693891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i'm just submitting a lambda calculus one < 1200693894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with unlambda-lambda-syntax < 1200693899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but with multichar identifiers < 1200693903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^x x < 1200693903 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :abstraction elimination? < 1200693906 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or interpretation? < 1200693908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^x $x x < 1200693914 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :interpretation < 1200693919 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :acxtually < 1200693920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$ -> ` < 1200693923 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^x `x x < 1200693925 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that looks good < 1200693938 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :`^x x ^ x x < 1200693939 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1200693952 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what is apply? < 1200693965 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: (a b) in lambda calculus < 1200693970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1200693977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: should i specify regular lambda calculus syntax? :) < 1200693977 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you use parens for disambiguation? < 1200693982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er no < 1200693992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :`x y < 1200693993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :make it Unlambda syntax, just with lambdas < 1200693993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BUT < 1200693996 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IT IS < 1200693999 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1200694003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but anyway < 1200694007 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i think i should make it real lambda calculus < 1200694008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :\x. x < 1200694019 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :\x y z. x z(y z) < 1200694020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1200694022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200694025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1200694027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :possibly too hard < 1200694104 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :Why does no one use ?? < 1200694111 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in what context? < 1200694120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I use ?? in Perl a lot < 1200694130 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :eek < 1200694156 0 :fax!unknown@unknown.invalid PRIVMSG #esoteric :I meant lambda character < 1200694208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes golfscript-inspired language < 1200694221 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :everything is a stack: even the program < 1200694222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1200694275 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{ a b c } -> stack with top=a, prev=(top=b, prev=(top=c, prev=())) < 1200694279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you can call it < 1200694285 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Around stacks, never relax. < 1200694293 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :ACTION <3 tapes < 1200694295 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the whole program is implicitly in {...}! < 1200694378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and the main stack is accessed as $ < 1200694383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{1}{1+}$~! < 1200694389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we start with: < 1200694412 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :STACK={ }, PROG={ { 1 } { 1 + } $ ~ ! } < 1200694419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :STACK={ { 1 } }, PROG={ { 1 + } $ ~ ! } < 1200694425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :STACK={ { 1 } { 1 + } }, PROG={ $ ~ ! } < 1200694436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :STACK={ { 1 } { 1 + } }, PROG={ ~ ! } < 1200694450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :STACK={ { 1 1 + } }, PROG={ ! } < 1200694459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>>zoop callstack < 1200694471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>>STACK={ }, PROG={ 1 1 + } < 1200694479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>>STACK={ 1 }, PROG={ 1 + } < 1200694483 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>>STACK={ 1 1 }, PROG={ + } < 1200694487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>>STACK={ 2 }, PROG={ } < 1200694489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>>zeep < 1200694496 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :STACK={ 2 }, PROG={ } < 1200694509 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my stack trick for the genuine Perl Underload interpreter was to just leave (...) constructs at the left-hand end of the program as a stack, and to execute the first real command after them < 1200694518 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :saves having to implement (...) at all < 1200694586 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :challenge < 1200694590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :someone step through: < 1200694592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{0={1}{:1-#!*}?}4! < 1200694646 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not very easy when we don't know the syntax < 1200694653 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'xactly < 1200694661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you got a kind of feel for it up there < 1200694661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so. < 1200694739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe 2008 will be the year of concatenative languages? < 1200694764 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've spent a while thinking about one which also has arrays, pointers and GOTO < 1200694773 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so as to be able to use as many paradigms as possible < 1200694995 0 :ais523!unknown@unknown.invalid QUIT :"wow, it's late" < 1200695061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, what languages should i allow in my golf? < 1200695241 0 :RedDak!unknown@unknown.invalid QUIT :Remote closed the connection < 1200695351 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1200697451 0 :cherez!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1200697782 0 :helios24!unknown@unknown.invalid QUIT :"Leaving" < 1200698053 0 :jix!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1200698196 0 :jix!n=jix@dyndsl-091-096-048-060.ewe-ip-backbone.de JOIN :#esoteric < 1200698568 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hello jix < 1200698610 0 :immibis!n=immibis@125-236-169-77.broadband-telecom.global-gateway.net.nz JOIN :#esoteric < 1200699942 0 :cherez!n=cherez@r02snw275.desktop.umr.edu JOIN :#esoteric < 1200700138 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who's alive? < 1200700140 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!help < 1200700143 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon < 1200700145 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain qbf rail rhotor sadol sceql trigger udage01 unlambda whirl < 1200700379 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :ehird: obviously everyone in the channel is alive (or most people anyway) < 1200700386 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was meant figuratively < 1200700388 0 :immibis!unknown@unknown.invalid PRIVMSG #esoteric :well it depends. what is life? < 1200700568 0 :Corun!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1200700614 0 :timotiis!unknown@unknown.invalid QUIT :"leaving" < 1200700626 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric