< 1173658031 0 :nazgjunk!unknown@unknown.invalid QUIT :"Leaving" < 1173658619 0 :bsmntbombdood!unknown@unknown.invalid NICK :Zorpon < 1173659575 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1173659579 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :I should learn smalltalk < 1173659891 0 :Zorpon!unknown@unknown.invalid NICK :Zorpon_ < 1173659933 0 :Zorpon_!unknown@unknown.invalid NICK :Zorpon < 1173660200 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Zorpon: yes < 1173660219 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes it so < 1173660223 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :It's a *real* OO language, unlike Java < 1173660484 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :eww java < 1173661352 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :what's with the : on the end of messages < 1173661416 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it distinguishes them from variables < 1173661422 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :if i remember correctly. < 1173661938 0 :SevenInchBread!unknown@unknown.invalid PRIVMSG #esoteric :yeah smalltalk is nifty. < 1173661947 0 :SevenInchBread!unknown@unknown.invalid PRIVMSG #esoteric :it's just the call syntax. < 1173661974 0 :SevenInchBread!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is basing his Sophia language partially on Smalltalk. < 1173662126 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :I think it has something to do with arguments < 1173662164 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well, each : part is followed by an argument, if that's what you mean. < 1173662318 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i love smalltalk syntx < 1173662384 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I like the fuck-around-with-ability of it < 1173662409 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you can re-define classes and all instances will immediately start using the new version < 1173662425 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :reminds me of ruby < 1173662431 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :1 to: 20 do: [:x| x printNl ] ! < 1173662477 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Haskell: mapM_ print [1..20] < 1173662485 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :That's about as good as you can get < 1173662502 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Haskell: also the world's best imperative language. < 1173662504 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1173662545 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I don't see any others with such elegant rules for handling first-class code blocks < 1173662574 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :especially the issue of creating new variables versus using existing ones. < 1173662867 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :This tutorial isn't too good < 1173662889 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I liked the Dolphin Smalltalk tutorial. < 1173663245 0 :SevenInchBread!unknown@unknown.invalid PRIVMSG #esoteric :Ruby was partially based off of Smalltalk < 1173663401 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :!ps d < 1173663403 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :1 ais523: daemon ul bf < 1173663405 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :2 ais523: daemon deadfish funge93 < 1173663407 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :3 GregorR: ps < 1173664041 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :interesting at the use of lambda for if < 1173664546 0 :tgwizard!unknown@unknown.invalid QUIT :Remote closed the connection < 1173665090 0 :ShadowHntr!i=sentinel@wikipedia/Shadowhntr JOIN :#esoteric < 1173666731 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1173668164 0 :Sukoshi!n=user@user-11fa6h6.dsl.mindspring.com JOIN :#esoteric < 1173668168 0 :Sukoshi!unknown@unknown.invalid PRIVMSG #esoteric :Java users home? < 1173668178 0 :Sukoshi!unknown@unknown.invalid PRIVMSG #esoteric :(I'm sorry, I'm in a big hurry.) < 1173668607 0 :Zorpon!unknown@unknown.invalid PRIVMSG #esoteric :eew java < 1173668992 0 :Sukoshi!unknown@unknown.invalid QUIT :"ERC Version 5.1 (CVS) $Revision: 1.796 $ (IRC client for Emacs)" < 1173669205 0 :calamari!n=calamari@ip72-200-73-175.tc.ph.cox.net JOIN :#esoteric < 1173669995 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :haha! Nonlogic has absorbed yet another denizen of #Esoteric! < 1173670003 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :ACTION cackles maniacally. < 1173670632 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Someone could make a movie about an evil Internet entity which absorbs people. < 1173670642 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :They could call it The Blog. < 1173670659 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :heheh < 1173670989 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1173671419 0 :SevenInchBread!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1173672674 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :good night, guys < 1173672691 0 :RodgerTheGreat!unknown@unknown.invalid QUIT : < 1173673064 0 :ShadowHntr!unknown@unknown.invalid QUIT :"End of line." < 1173675526 0 :Zorpon!unknown@unknown.invalid NICK :bsmntbombdood < 1173679242 0 :ShadowHntr!i=sentinel@wikipedia/Shadowhntr JOIN :#esoteric < 1173679710 0 :Arrogant!i=Arrogatn@122.orlando-09-10rs.fl.dial-access.att.net JOIN :#esoteric < 1173679918 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1173680077 0 :GreaseMonkey!n=thematri@222-152-167-36.jetstream.xtra.co.nz JOIN :#esoteric < 1173680952 0 :ShadowHntr!unknown@unknown.invalid QUIT :"End of line." < 1173681416 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :afk food < 1173682575 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :back < 1173683458 0 :anonfunc_!n=dholman@ppp-67-121-238-228.dsl.chic01.pacbell.net JOIN :#esoteric < 1173683482 0 :anonfunc!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1173683617 0 :anonfunc_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1173683704 0 :anonfunc!n=dholman@ppp-67-121-238-228.dsl.chic01.pacbell.net JOIN :#esoteric < 1173683915 0 :anonfunc!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1173683974 0 :anonfunc_!n=dholman@ppp-67-121-238-228.dsl.chic01.pacbell.net JOIN :#esoteric < 1173684008 0 :anonfunc_!unknown@unknown.invalid QUIT :Remote closed the connection < 1173686399 0 :clog!unknown@unknown.invalid QUIT :ended < 1173686698 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1173686698 0 :Arrogant!unknown@unknown.invalid QUIT :"Leaving" < 1173687025 0 :Sgeo!unknown@unknown.invalid QUIT :"Leaving" < 1173691171 0 :Sukoshi!n=user@user-11fa6h6.dsl.mindspring.com JOIN :#esoteric < 1173691645 0 :GreaseMonkey!unknown@unknown.invalid QUIT :Remote closed the connection < 1173691724 0 :Sukoshi!unknown@unknown.invalid QUIT :"ERC Version 5.1 (CVS) $Revision: 1.796 $ (IRC client for Emacs)" < 1173691860 0 :jix__!n=jix@dyndsl-085-016-234-151.ewe-ip-backbone.de JOIN :#esoteric < 1173691918 0 :jix__!unknown@unknown.invalid NICK :jix < 1173692698 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1173701195 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1173702183 0 :ais523!n=chatzill@chillingi.eee.bham.ac.uk JOIN :#esoteric < 1173702772 0 :jix__!n=jix@dyndsl-091-096-037-031.ewe-ip-backbone.de JOIN :#esoteric < 1173702796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has written one of the slowest 99 bottles of beer programs in history < 1173702825 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because Forte is an order of n slower than every other language < 1173702836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so bottles-of-beer programs are O(n^2) < 1173702861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and on top of that, it's running on an inefficient implementation < 1173703381 0 :jix!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1173703750 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering whether C was, in fact, Turing-complete < 1173703769 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :traditionally it's been said to be bounded-storage because sizeof(void*) has to be finite < 1173703794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I think it's a push-down automaton, due to the possibility of using register variables (which don't have to have addresses) and recursion < 1173704494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("for n in [1,2,3,4]:\n sys.stdout(n)\n") < 1173704495 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704556 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("for n in count(4):\n sys.stdout(n)\n") < 1173704556 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("sys.stdout(4)") < 1173704568 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :4 < 1173704574 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("sys.stdout(4)\n") < 1173704575 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :4 < 1173704587 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("sys.stdout(n)\n") < 1173704588 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :NameError: name 'n' is not defined < 1173704603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("for n in (count(4)):\n sys.stdout(n)\n") < 1173704604 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704689 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("for n in [1, 2, 3]:\n sys.stdout(n)\n") < 1173704689 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704766 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("for n in [1, 2, 3]:\n sys.stdout(n)\nsys.stdout('Finished.')\n") < 1173704766 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704803 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("sys.stdout(1)\nsys.stdout(2)") < 1173704803 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704819 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so eval seems not to accept multi-line strings < 1173704832 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("sys.stdout(1)\rsys.stdout(2)") < 1173704833 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704846 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(1)\nsys.stdout(2) < 1173704846 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid token < 1173704852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(1)\n sys.stdout(2) < 1173704858 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704975 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval('''sys.stdout(1)\nsys.stdout(2)''') < 1173704975 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173704986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout("1\n2") < 1173704986 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1173704986 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1173704993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout("1\r2") < 1173704993 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1173705002 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout("1\t2") < 1173705002 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :1 2 < 1173705070 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout("for n in [1, 2, 3]: sys.stdout(n)") < 1173705071 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :for n in [1, 2, 3]: sys.stdout(n) < 1173705078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec eval("for n in [1, 2, 3]: sys.stdout(n)") < 1173705078 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173705084 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("for n in [1, 2, 3]: sys.stdout(n)") < 1173705087 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1173705089 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1173705091 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :3 < 1173705099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout("for n in [1, 2, 3]:\n sys.stdout(n)") < 1173705100 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :for n in [1, 2, 3]: < 1173705100 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : sys.stdout(n) < 1173705112 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("for n in [1, 2, 3]:\n sys.stdout(n)") < 1173705113 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1173705113 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1173705113 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :3 < 1173705194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t='Hello, world!'\nsys.stdout(t)") < 1173705195 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :NameError: name 't' is not defined < 1173705200 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t='Hello, world!'\nsys.stdout(self.t)") < 1173705201 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173705210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t='Hello, world!'\nsys.stdout(self.t.length)") < 1173705210 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :AttributeError: 'str' object has no attribute 'length' < 1173705219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t='Hello, world!'\nsys.stdout(self.t.size)") < 1173705219 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :AttributeError: 'str' object has no attribute 'size' < 1173705243 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t='Hello, world!'\nsys.stdout(self.t[0])") < 1173705243 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :H < 1173705257 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t='Hello, world!'\nsys.stdout(self.t[13])") < 1173705257 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :IndexError: string index out of range < 1173705267 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523: actually, I think you'll find that the program could be re-run form the beginning with a bigger word size every time it ran out of memory, if you wanted. < 1173705292 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm just trying to use bsmnt_bot to learn Python < 1173705322 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"< ais523> I was wondering whether C was, in fact, Turing-complete" < 1173705322 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: wait a moment, what context was your last comment in? < 1173705338 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you thought not < 1173705356 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think an implementation's allowed to dynamically change sizeof(void*) < 1173705370 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although maybe that isn't against the rules if the program never asks what it is < 1173705394 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I mean: if you run out of address space, re-compile for a bigger architecture. < 1173705402 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :then re-run < 1173705419 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :assuming the usual strict-function-style TC. < 1173705422 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you can do that in MISC, and it isn't Turing-complete < 1173705455 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yeah, but you now have no reason for C not to be Turing-complete < 1173705518 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.n=4\nwhile self.n>0:\n sys.stdout(n)\n n=n-1\nsys.stdout('Finished!')") < 1173705519 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :NameError: name 'n' is not defined < 1173705528 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.n=4\nwhile self.n>0:\n sys.stdout(self.n)\n self.n=self.n-1\nsys.stdout('Finished!')") < 1173705528 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :4 < 1173705528 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :3 < 1173705528 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1173705530 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1173705532 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Finished! < 1173705542 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't see why that makes C TC < 1173705564 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because recompiling for a bigger architecture and rerunning isn't something you're necessarily allowed to do from within the language < 1173705578 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unless you're suggesting something like #pragma make_me_Turing_Complete < 1173705629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.tape=0\nself.tape[10]=self.tape[10]+5\nsys.stdout(self.tape[10])") < 1173705629 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :TypeError: unsubscriptable object < 1173705640 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.tape=[]\nself.tape[10]=self.tape[10]+5\nsys.stdout(self.tape[10])") < 1173705640 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :IndexError: list index out of range < 1173705656 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.tape=[0]*30000\nself.tape[10]=self.tape[10]+5\nsys.stdout(self.tape[10])") < 1173705657 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :5 < 1173705804 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Ok, the language is Turing-complete, but no implementation can be. < 1173705822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t=[0]*30000\nself.p='+++++.!'\nself.i=0\nself.l=0\nwhile self.p[self.i]!='!':\n if self.p[self.i]=='+': self.t[self.l]++\n if self.p[self.i]=='.': sys.stdout(self.t[self.l])") < 1173705822 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173705835 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :You could port C to the Turing machine will a little work, then it really *could* be TC. < 1173705848 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, because even the Turing machine couldn't access an infinite store of memory < 1173705862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the sizeof operator exists, there has to be a hard limit on every data type < 1173705911 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t=[0]*30000\nself.p='+++++.!'\nself.i=0\nself.l=0\nwhile self.p[self.i]!='!':\n if self.p[self.i]=='+':\n self.t[self.l]++\n if self.p[self.i]=='.':\n sys.stdout(self.t[self.l])\n self.i=self.i+1") < 1173705912 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173705936 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(1==2) < 1173705936 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :False < 1173705939 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(1!=2) < 1173705939 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :True < 1173705945 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm < 1173705952 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I wonder... < 1173705971 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :At least, what I've been arguing is what I've come to believe the conventional wisdom is < 1173705975 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I wonder too < 1173705992 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :so, a subset of C is Turing-complete, but the whole of C isn't. < 1173705993 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :weird < 1173706005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it's at least a PDA, because register variables need not have addresses and you can get an infinite number of them using recursion < 1173706045 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t=[0]*30000\nself.p='+++++.!'\nself.i=0\nself.l=0\nwhile self.p[self.i]!='!':\n if self.p[self.i]=='+':\n self.t[self.l]=self.t[self.l]+1\n if self.p[self.i]=='.':\n sys.stdout(self.t[self.l])\n self.i=self.i+1") < 1173706045 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :5 < 1173706107 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t=[0]*30000\nself.p='+++++.!'\nself.i=0\nself.l=0\nwhile self.p[self.i]!='!':\n if self.p[self.i]=='+':\n self.t[self.l]=self.t[self.l]+1\n if self.p[self.i]=='-':\n self.t[self.l]=self.t[self.l]-1\n if self.p[self.i]=='.':\n sys.stdout(self.t[self.l])\n self.i=self.i+1") < 1173706108 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :5 < 1173706200 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.t=[0]*30000\nself.p='++>--<+++.>.!'\nself.i=0\nself.l=0\nwhile self.p[self.i]!='!':\n if self.p[self.i]=='+':\n self.t[self.l]=self.t[self.l]+1\n if self.p[self.i]=='-':\n self.t[self.l]=self.t[self.l]-1\n if self.p[self.i]=='<':\n self.l=self.l-1\n if self.p[self.i]=='>':\n self.l=self.l+1\n if self.p[self.i]=='.':\n sys.stdout(self.t[self.l])\n self.i=self.i+1") < 1173706200 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :5 < 1173706200 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :-2 < 1173706433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.bf=lambda(p): t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n sys.stdout(t[l])\n i=i+1") < 1173706434 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173706467 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.bf=lambda(p):\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n sys.stdout(t[l])\n i=i+1") < 1173706468 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173706487 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.test=lambda(x):\n sys.stdout(x)") < 1173706487 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173706497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("self.test=def test(x):\n sys.stdout(x)") < 1173706498 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173706506 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def test(x):\n sys.stdout(x)") < 1173706511 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.test("Hello, world") < 1173706514 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :AttributeError: IRCbot instance has no attribute 'test' < 1173706521 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec test("Hello, world") < 1173706526 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :NameError: name 'test' is not defined < 1173706546 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def test(x):\n sys.stdout(x)\nself.test=test") < 1173706552 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.test("Hello, world") < 1173706553 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world < 1173706581 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def bf(p):\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n sys.stdout(t[l])\n i=i+1\nself.bf=bf") < 1173706597 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++>+++.<.!") < 1173706597 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :3 < 1173706597 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1173706616 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def bf(p):\n p=p+"!"\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n sys.stdout(t[l])\n i=i+1\nself.bf=bf") < 1173706617 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173706643 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def bf(p):\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n sys.stdout(t[l])\n i=i+1\nself.bf=bf") < 1173706657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++>----<.>.<.") < 1173706657 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :4 < 1173706657 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :-4 < 1173706657 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :4 < 1173706735 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(true or false) < 1173706735 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :NameError: name 'true' is not defined < 1173706742 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(True or False) < 1173706742 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :True < 1173706899 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def bf(p):\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n sy < 1173706900 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: EOL while scanning single-quoted string < 1173706954 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def bf(p):\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='\[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='\[': c=c+1\n if p[i]=='\]': c=c-1\n if p[i]=='\]' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]=='\]': c=c+1\n if p[i]=='\[': c=c-1\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\ < 1173706954 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: EOL while scanning single-quoted string < 1173707027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("""def bf(p):\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n if p[i]=='+':\n t[l]=t[l]+1\n if p[i]=='-':\n t[l]=t[l]-1\n if p[i]=='<':\n l=l-1\n if p[i]=='>':\n l=l+1\n if p[i]=='.':\n < 1173707028 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: EOF while scanning triple-quoted string < 1173707120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec("def bf(p):\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': sys.stdout(t[l])\n i= < 1173707120 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: EOL while scanning single-quoted string < 1173707156 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I seem to have exceeded some sort of maximum input length for bsmnt_bot < 1173707193 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf1="def bf(p):\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173707200 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': sys.stdout(t[l])\n i=i+1\nself.bf=bf" < 1173707211 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173707234 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("+++[->++<]>.") < 1173707235 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :6 < 1173707240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay! < 1173707250 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bf_txtgen Hello, world! < 1173707296 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :121 ++++++++++++++[>+++++>+++++++>+++><<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+. [609] < 1173707379 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.") < 1173707380 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :72 < 1173707380 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :101 < 1173707380 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :108 < 1173707380 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :108 < 1173707380 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :111 < 1173707380 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :44 < 1173707382 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :32 < 1173707384 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :119 < 1173707386 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :111 < 1173707388 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :114 < 1173707390 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :108 < 1173707392 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :100 < 1173707394 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :33 < 1173707683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': sys.stdout(unichr(t[l]))\n i=i+1\nself.bf=bf" < 1173707691 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173707702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.") < 1173707702 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :H < 1173707703 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :e < 1173707703 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :l < 1173707703 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :l < 1173707703 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :o < 1173707703 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :, < 1173707705 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :w < 1173707707 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :o < 1173707709 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :r < 1173707711 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :l < 1173707713 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :d < 1173707715 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :! < 1173707718 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Huh? < 1173707755 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf1="def bf(p):\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173707765 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\nself.bf=bf" < 1173707773 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173707777 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.") < 1173707790 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\nself.bf=bf\nsys.stdout(o)" < 1173707793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173707793 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :NameError: name 'o' is not defined < 1173707802 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\nself.bf=bf\n sys.stdout(o)" < 1173707807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173707807 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173707854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\n sys.stdout(o)\nself.bf=bf" < 1173707857 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173707863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.") < 1173707863 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173708144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~bf(.*)", lambda x,y: self.bf(y.group(2))") < 1173708145 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: EOL while scanning single-quoted string < 1173708150 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~bf(.*)", lambda x,y: self.bf(y.group(2))) < 1173708165 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]. < 1173708165 0 :bsmnt_bot!unknown@unknown.invalid QUIT :Remote closed the connection < 1173708170 0 :bsmnt_bot!i=gavin@abacus.kwzs.be JOIN :#esoteric < 1173708249 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf1="def bf(p):\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173708254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\n sys.stdout(o)\nself.bf=bf" < 1173708264 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173708279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("+++++[->+++++<]>.") < 1173708280 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : < 1173708287 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++++[->++++++<]>.") < 1173708287 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :$ < 1173708306 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~bf(.*)", lambda x,y: self.bf(y.group(2))) < 1173708317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]>. < 1173708317 0 :bsmnt_bot!unknown@unknown.invalid QUIT :Remote closed the connection < 1173708320 0 :bsmnt_bot!i=gavin@abacus.kwzs.be JOIN :#esoteric < 1173708326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]>. < 1173708333 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf1="def bf(p):\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173708335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\n sys.stdout(o)\nself.bf=bf" < 1173708346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173708359 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf(" ++++++[->++++++<]>.") < 1173708360 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :$ < 1173708382 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~cat(.*)", lambda x,y: sys.stdout(y.group(2))) < 1173708387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~cat Hello, world! < 1173708387 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : Hello, world! < 1173708399 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~catv(.*)", lambda x,y: sys.stdout(y.group(2))) < 1173708403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~cat (.*)", lambda x,y: sys.stdout(y.group(2))) < 1173708407 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~cat Hello, world! < 1173708408 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : Hello, world! < 1173708408 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173708417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.pop_raw_regex_queue() < 1173708417 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :AttributeError: IRCbot instance has no attribute 'pop_raw_regex_queue' < 1173708418 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.pop_raw_regex_queue() < 1173708420 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :AttributeError: IRCbot instance has no attribute 'pop_raw_regex_queue' < 1173708444 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue().pop() < 1173708444 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :TypeError: 'list' object is not callable < 1173708448 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173708451 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173708452 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173708457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~cat (.*)", lambda x,y: sys.stdout(y.group(2))) < 1173708461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~cat Hello, world! < 1173708461 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173708490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~catrepr (.*)", lambda x,y: sys.stdout(repr(y.group(2)))) < 1173708495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~catrepr Hello, world! < 1173708496 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :'Hello, world!' < 1173708528 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~bf (.*)", lambda x,y: self.bf(y.group(2))) < 1173708542 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[>++++++<-]>. < 1173708542 0 :bsmnt_bot!unknown@unknown.invalid QUIT :Remote closed the connection < 1173708545 0 :bsmnt_bot!i=gavin@abacus.kwzs.be JOIN :#esoteric < 1173708559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf1="def bf(p):\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173708565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf2=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\n sys.stdout(o)\nself.bf=bf" < 1173708571 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf1+self.bf2) < 1173708596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~catrepr (.*)", lambda x,y: sys.stdout(repr(y.group(2)))) < 1173708604 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~catrepr ++++++[>++++++<-]>. < 1173708605 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :'++++++[>++++++<-]>.' < 1173708617 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :gah! get a loca python interpreter! < 1173708628 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :There are ones for windows too, you know. < 1173708635 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sorry! I was trying to get bsmnt_bot to do Brainfuck < 1173708647 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1173708648 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it works, but I can't get it to respond to commands of the form ~bf < 1173708668 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf("++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.") < 1173708669 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173708672 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Sorry, I thought you were still learning python. < 1173708687 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goesr < 1173708688 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Like this? It wouldn't be very good < 1173708688 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes < 1173708828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bsmntbombdood: I've got bsmnt_bot to do Brainfuck, but I can't get it to work properly on the raw regex queue (for some reason, it just quits whenever I try) < 1173708978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~bf (.*)", lambda x,y: sys.stdout("!ul (~exec self.bf("+y.group(2)+"))S")) < 1173708988 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[>+++++++<-]>. < 1173708988 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :!ul (~exec self.bf(++++++[>+++++++<-]>.))S < 1173708992 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf(++++++[>+++++++<-]>.) < 1173708992 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1173709006 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173709021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~bf (.*)", lambda x,y: sys.stdout("!ul (~exec self.bf(\'\'\'"+y.group(2)+"\'\'\'))S")) < 1173709026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[>+++++++<-]>. < 1173709026 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :!ul (~exec self.bf('''++++++[>+++++++<-]>.'''))S < 1173709030 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf('''++++++[>+++++++<-]>.''') < 1173709031 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :* < 1173709041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :There's always a way.... < 1173709061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+. < 1173709062 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :!ul (~exec self.bf('''++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.'''))S < 1173709066 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf('''++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+.''') < 1173709067 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173709235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :You know you've spent too much time programming when, like I just did, you try to save a directory after renaming a file < 1173709308 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf3="def bfarg(x,y):\n p=y.group(2)\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173709387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf (.*)',bfarg)" < 1173709393 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173709403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173709414 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]>. < 1173709414 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :$ < 1173709425 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay again! < 1173709520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++++++++++[>+++++>+++++++>+++<<<-]>++.>+++.+++++++..+++.>++.------------.<++++++++.--------.+++.------.--------.>+. < 1173709520 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173709994 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout("Hello, world!"[1:]) < 1173709995 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :ello, world! < 1173710126 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n if p[i]==',':\n t[l]=ord(y.group(4)[0])\n y.group(4)=y.group(4)[1:]\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf (.*)(!(.*))?',bfarg)" < 1173710139 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173710142 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710142 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: can't assign to function call (, line 28) < 1173710163 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf3="def bfarg(x,y):\n p=y.group(2)\n a=y.group(4)\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173710190 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n if p[i]==',':\n t[l]=ord(a[0])\n a=a[1:]\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf (.*)(!(.*))?',bfarg)" < 1173710194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710212 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,>,>,.<.<.!abc < 1173710247 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]>. < 1173710254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]>.! < 1173710283 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173710284 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173710290 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710306 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(repr(self.raw_regex_queue)) < 1173710306 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :[(<_sre.SRE_Pattern object at 0xb7cc1c98>, >), (<_sre.SRE_Pattern object at 0x80d2290>, >), (<_sre.SRE_Pattern object at 0x80d24c8>, >), (<_sre.SRE_Pattern object < 1173710307 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :at 0x80d1cc0>, >), (<_sre.SRE_Pattern object at 0x80d26e0>, >), (<_sre.SRE_Pattern object at 0x80d2918>, >), (<_sre.SRE_Pattern object at 0x80c1010>, >), (<_sre.SRE_Pattern object at 0x80d2b80>, >), (<_sre.SRE_Pattern object at 0x80d6980>, )] < 1173710335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~ps < 1173710336 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :None < 1173710352 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(self.bf4) < 1173710353 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : if p[i]=='+': t[l]=t[l]+1 < 1173710353 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : if p[i]=='-': t[l]=t[l]-1 < 1173710353 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : if p[i]=='<': l=l-1 < 1173710353 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : if p[i]=='>': l=l+1 < 1173710354 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : if p[i]=='.': o=o+unichr(t[l]) < 1173710355 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : if p[i]==',': < 1173710356 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : t[l]=ord(a[0]) < 1173710358 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : a=a[1:] < 1173710359 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : i=i+1 < 1173710361 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric : sys.stdout(o) < 1173710363 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :self.register_raw(r'\S+ PRIVMSG (\S+) :~bf (.*)(!(.*))?',bfarg) < 1173710390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~quit < 1173710404 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710412 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,.!a < 1173710440 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec sys.stdout(repr(self.raw_regex_queue.pop())) < 1173710440 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :(<_sre.SRE_Pattern object at 0x80d6980>, ) < 1173710485 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf3="def bfarg(x,y):\n p=y.group(2)\n a=y.group(3)\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173710504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n if p[i]==',':\n t[l]=ord(a[0])\n a=a[1:]\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf (.*)!(.*)',bfarg)" < 1173710510 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710516 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,.!a < 1173710516 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :a < 1173710549 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.raw_regex_queue.pop() < 1173710592 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n if p[i]==',':\n t[l]=ord(a[0])\n a=a[1:]\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf ([^!]*)!?(.*)',bfarg)" < 1173710597 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,.!a < 1173710608 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710609 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,.!a < 1173710610 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :a < 1173710618 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++[->++++++<]>. < 1173710618 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :$ < 1173710709 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!Hello, world! < 1173710710 0 :bsmnt_bot!unknown@unknown.invalid QUIT :Remote closed the connection < 1173710713 0 :bsmnt_bot!i=gavin@abacus.kwzs.be JOIN :#esoteric < 1173710729 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf3="def bfarg(x,y):\n p=y.group(2)\n a=y.group(3)\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173710748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf3="def bfarg(x,y):\n p=y.group(2)\n a=y.group(3)+unichr(0)\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n" < 1173710754 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n if p[i]==',':\n t[l]=ord(a[0])\n a=a[1:]\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf ([^!]*)!?(.*)',bfarg)" < 1173710757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~exec exec(self.bf3+self.bf4) < 1173710764 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!Hello, world! < 1173710765 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1173710819 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!This implementation returns 0 on EOL. < 1173710820 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :This implementation returns 0 on EOL. < 1173710885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++++++++++++[->++++++++<]>-[.-] < 1173710885 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!  < 1173710886 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :  < 1173712385 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf >,[>,]<.[<.]!Hello, world! < 1173712385 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :!dlrow ,olleH < 1173712389 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Huh? < 1173712785 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bf >,[>,]<.[<.] < 1173712793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!i 1 Hello, world! < 1173712802 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!i 3 Hello, world! < 1173712804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!eof 3 < 1173712807 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :!dlrow ,olleH < 1173712819 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (I haven't broken this, have I?)S < 1173712821 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :I haven't broken this, have I? < 1173713216 0 :nazgjunk!n=htitan@wikipedia/Nazgjunk JOIN :#esoteric < 1173713268 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!Hello, nazgjunk! < 1173713270 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, nazgjunk! < 1173713277 0 :nazgjunk!unknown@unknown.invalid PRIVMSG #esoteric :! < 1173713279 0 :nazgjunk!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1173713281 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Huh? < 1173713302 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I spent ages trying to get bsmnt_bot to do Brainfuck < 1173713310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :* brainfuck < 1173713936 0 :UpTheDownstair!n=htitan@wikipedia/Nazgjunk JOIN :#esoteric < 1173714255 0 :fushd!n=htitan@tb-reh-1f0cf.adsl.wanadoo.nl JOIN :#esoteric < 1173714269 0 :nazgjunk!unknown@unknown.invalid QUIT :Nick collision from services. < 1173714365 0 :fushd!unknown@unknown.invalid NICK :nazgjunk < 1173714888 0 :jix__!unknown@unknown.invalid NICK :jix < 1173715147 0 :UpTheDownstair!unknown@unknown.invalid QUIT :Connection timed out < 1173715325 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1173715342 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!Hello, oerjan! < 1173715343 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :Hello, oerjan! < 1173716235 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1173716252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't see why Forte has to be O(n^2). < 1173716275 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Basically, because you need to keep generating new line numbers for lines < 1173716286 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so when you do a loop, the redefinition table grows at O(n) < 1173716293 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :* as < 1173716317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I suppose it might be possible to do the redefinition table more efficiently < 1173716392 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Trees. < 1173716445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :So, let me put it this way: 99 bottles of beer written in Forte written in Thutu is probably O(99^2) minimum < 1173716459 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and yes, I did test it with other values of 99) < 1173716543 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's at least going to be O(n) in space when it should be O(1), with any language used to write the interpreter < 1173716560 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(but if it were O(n) in space before, it may still be O(n) in space after Forteisation) < 1173716575 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, space is hard to keep down. < 1173717021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :By the way, the compiled version of my interpreter is http://pastebin.ca/391947 < 1173717053 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I hacked the Thutu interpreter to support arithmetic and a few string operations natively, so if I gave the Thutu source code you couldn't run it anyway) < 1173717107 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders why Perl syntax-highlighters never seem to be able to handle regexps correctly < 1173717224 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that leads to the obvious question: can Perl regexps parse Perl regexps? < 1173717258 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :No. You can't do nested brackets with regexps (it's a computational class thing) < 1173717282 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah, that old pumping lemma < 1173717292 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to handle nested brackets in Thutu, the easiest way is to change them to some other sort of bracket from the inside out, in pairs < 1173719068 0 :kxspxr!n=kxspxr@x1-6-00-0c-41-39-32-8e.k302.webspeed.dk JOIN :#esoteric < 1173719080 0 :kxspxr!unknown@unknown.invalid QUIT :Client Quit < 1173719405 0 :tgwizard!n=tgwizard@c-a73ee155.178-1-64736c10.cust.bredbandsbolaget.se JOIN :#esoteric < 1173721891 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :What do people think of the idea of using a separate pastebin (e.g. esoteric.pastebin.ca) instead of the main pastebin.ca pastebin? < 1173721922 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Advantages: our stuff is separated from people using the pastebin for other things. < 1173721959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Disadvantages: slightly extra hassle to get it set up, slightly longer URL, we would need at least one post every 3 months (which is easy enough to manage) to keep the pastebin active < 1173722048 0 :digital_me!n=digital@wikipedia/Digitalme JOIN :#esoteric < 1173722249 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :"meh" < 1173722280 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :la "meh" nt < 1173723085 0 :nazgjunk!unknown@unknown.invalid PRIVMSG #esoteric :ais523, sounds like a plan < 1173723147 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll go and set up esoteric.pastebin.ca, then, if there are no objections soon < 1173723184 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i have an objection! < 1173723199 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what is it? < 1173723211 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :"why" < 1173723216 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Second. < 1173723240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :The idea would be that if #esoteric's posts were separated, then we could look back through them in the future < 1173723251 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would sort of reduce the attrition rate of esolang-related material < 1173723260 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :would it. < 1173723276 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Public pastebins die after 3mo. < 1173723284 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :(Of unuse) < 1173723329 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :3 months of disuse, yes. I listed that as a potential disadvantage. < 1173723338 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what are the chances of that happening? < 1173723362 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :almost 100% < 1173723398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Oh well, in that case we can just use the main one < 1173723404 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and use clog to find all the relevant post numbers < 1173723414 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it depends on your time frame, of course :) < 1173723429 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I guessed your answer would be in that sense < 1173724090 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but people here are right, it's likely that our pastebin archiving services are good enough already < 1173724238 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Now, if somebody wrote a custom esoteric pastebin with highlighting for Brainfuck and Befunge ... :P < 1173724387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I already have a brainfuck-mode on Emacs < 1173724396 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :someone was having fun with bsmnt_bot ... < 1173724397 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks into their own filesystem < 1173724404 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :!ps d < 1173724405 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :1 ais523: daemon ul bf < 1173724405 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!that was me < 1173724406 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :that was me < 1173724407 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :2 ais523: daemon deadfish funge93 < 1173724409 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :3 GregorR: ps < 1173724509 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bsmntbombdood: anyway, I don't see why bsmnt_bot shouldn't have a BF interpreter too < 1173724523 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :because EgoBot has one? < 1173724587 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's like saying "no need to make any more esolangs, INTERCAL is Turing-complete" < 1173724601 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1173724604 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :go ahead < 1173724614 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :No, I've done it already < 1173724634 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ,[.,]!This is a complete Brainfuck interpreter (EOF = 0) < 1173724635 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :This is a complete Brainfuck interpreter (EOF = 0) < 1173724647 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :fun < 1173724651 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and ! separates program from input (can be omitted if you don't want input) < 1173724669 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can set it up in 3 commands, too < 1173724683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(It would be 1 but that exceeds the maximum line length I can send) < 1173724732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bf_txtgen bsmnt_bot does Brainfuck! < 1173724797 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :208 ++++++++++++++[>+++++++>++++++++>++++++++>++<<<<-]>.>+++.>---.+.<+.<---.+++.>>+.<.>>++++.<<<++.>>.----------.<-.>>.<<<----------------------------------.>-.>----.++++++++.+++++.--------.<+++.>---.++++++++.>+. [409] < 1173724809 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf ++++++++++++++[>+++++++>++++++++>++++++++>++<<<<-]>.>+++.>---.+.<+.<---.+++.>>+.<.>>++++.<<<++.>>.----------.<-.>>.<<<----------------------------------.>-.>----.++++++++.+++++.--------.<+++.>---.++++++++.>+. < 1173724809 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :bsmnt_bot does Brainfuck! < 1173724868 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :come to think of it, I haven't tested it with nested square brackets yet < 1173724920 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf >,[>,]<[.[-]<[.<]>[-]>[.>]<]!123456789 < 1173724920 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :98765432123456788765432345677654345665455 < 1173724956 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf >,[>,]<[.<[.<]>[-]>[.>]<[-]<]!123456789 < 1173724957 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :987654321234567898765432345678765434567654565 < 1173724988 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf >,[>,]<.[-]<[.<[.<]>[-]>[.>]<[-]<]!123456789 < 1173724988 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :9876543212345678765432345676543456545 < 1173724995 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's what I was aiming for < 1173725265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf >,[>,]<.[-]<[.<[.<]>[-]>[.>]<[-]<]!_,.-'^ < 1173725266 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :^'-.,_,.-'-.,.-. < 1173725301 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :~bf >,[>,]<.[-]<[.<[.<]>[-]>[.>]<[-]<]!<({[|]})> < 1173725301 0 :bsmnt_bot!unknown@unknown.invalid PRIVMSG #esoteric :>)}]|[{(<({[|]})}]|[{({[|]}]|[{[|]|[| < 1173725376 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :My brain hurts. < 1173725459 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why are you in #esoteric, then? < 1173725471 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can see why it would make your brain hurt, < 1173725485 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it isn't a very good place for soothing a brain that's already been hurt < 1173725497 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1173725552 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yes, one's brain does hurt when it is repeatedly fucked. < 1173726961 0 :ais523!unknown@unknown.invalid QUIT : < 1173727925 0 :sebbu!n=sebbu@ADijon-152-1-60-138.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1173730938 0 :sebbu2!n=sebbu@ADijon-152-1-109-130.w86-218.abo.wanadoo.fr JOIN :#esoteric < 1173730994 0 :calamari!n=calamari@ip72-200-73-175.tc.ph.cox.net JOIN :#esoteric < 1173731401 0 :sebbu!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1173731860 0 :sebbu2!unknown@unknown.invalid NICK :sebbu < 1173732151 0 :Sgeo!n=sgeo@ool-18bf61f7.dyn.optonline.net JOIN :#esoteric < 1173732461 0 :graue!i=graue@ip68-100-130-21.dc.dc.cox.net JOIN :#esoteric < 1173732951 0 :UpTheDownstair!n=htitan@wikipedia/Nazgjunk JOIN :#esoteric < 1173733147 0 :kxspxr!n=kxspxr@x1-6-00-0c-41-39-32-8e.k302.webspeed.dk JOIN :#esoteric < 1173733223 0 :kxspxr!unknown@unknown.invalid QUIT :Client Quit < 1173733286 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1173733484 0 :nazgjunk!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1173733529 0 :nazgjunk!n=htitan@wikipedia/Nazgjunk JOIN :#esoteric < 1173734199 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1173734552 0 :UpTheDownstair!unknown@unknown.invalid QUIT :Connection timed out < 1173735521 0 :calamari!n=calamari@ip72-200-73-175.tc.ph.cox.net JOIN :#esoteric < 1173736548 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1173738127 0 :jix!unknown@unknown.invalid QUIT :"Bitte waehlen Sie eine Beerdigungnachricht" < 1173738661 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1173741931 0 :kxspxr!n=kxspxr@x1-6-00-0c-41-39-32-8e.k302.webspeed.dk JOIN :#esoteric < 1173741950 0 :kxspxr!unknown@unknown.invalid QUIT :Client Quit < 1173742436 0 :nazgjunk!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1173742472 0 :nazgjunk!n=htitan@wikipedia/Nazgjunk JOIN :#esoteric