< 1203206417 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, are redundant functions better than a switcher, or merely "acceptable"? < 1203206432 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Better. < 1203206439 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :howso? < 1203206506 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Let's say I'm dealing with both chars and Lnums? < 1203206564 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I think {*} is a crap name < 1203206576 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :I would prefer: <*$list> < 1203206579 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :or <#$list> < 1203206588 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Because, that obscures the semantics of {...} i think. < 1203206644 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Anyway, I can leave that out for now. < 1203206675 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Now -- should parsing be on files/streams or strings? < 1203206679 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :(Unicode strings, of course.) < 1203206691 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Strings, I think. < 1203206696 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :I think strings, because I mean all code using eval and uplevel and crap is going to involve parsing strings anyway. < 1203206703 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :and wrapping a string in a file is a bad solution when it's so common. < 1203206709 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :So: If parsing is fast and simple on strings.. < 1203206865 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: So, all agreed. < 1203206871 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Now, obviously (char *) is not a string. < 1203206905 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I guess you're not talking about PSOX STRINGs? < 1203206906 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Do you suggest using available unicode routines (safer, but there generally aren't any decent ones sans glib's, and glib is big 'n bloated just for that...) or writing my own (probably broken, but small&fast) < 1203206913 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: PSOX PSOX PSOX PSOX PSOX. < 1203206949 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Dunno. < 1203207003 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Well, one thing I hope we can agree on: Strings should be utf-8 internally. It's probably what you want to output, probably what you want to input (Assuming a platonically ideal world), so it's best to keep it utf-8 all the way through. < 1203207022 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, of course. < 1203207031 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's in Tcl, and so it must be in Ptl. < 1203207040 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1203207074 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://www.icu-project.org/ Hmm. < 1203207143 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: They use UTF-16. < 1203207156 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Personally, I prefer UTF-8, but with such mature-looking libraries... what do you think? < 1203207157 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1203207161 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1203207192 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hell; if you've got mature libraries for UTF-16, why not? < 1203207197 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I mean, a lot of code points fit into one value in utf-16, so maybe simple operations on them would be faster < 1203207203 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :It's just all the conversion at both ends I'm worried about.. < 1203207362 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Thoughts? < 1203207373 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and since we're clogging up #esoteric with non-esoterica: #ptl < 1203207442 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :has anyone else started getting logged out of wikipedia all the time? < 1203207797 0 :timotiis!unknown@unknown.invalid QUIT :"leaving" < 1203207859 0 :ihope_!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1203208082 0 :ihope__!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1203208225 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What are the most common logic operations? < 1203208268 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, I don't understand what you mean < 1203208276 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia, NOT, AND, OR, those kinds < 1203208290 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm putting NOT first, but what other ones are needed most? < 1203208303 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Maybe AND and OR? < 1203208306 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :in that order? < 1203208342 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :XMOR < 1203208343 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :for bit-twiddling XOR is also important < 1203208356 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :XMOR? < 1203208364 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, so should XOR go after OR? < 1203208384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :exclusive-maybe-or < 1203208410 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's the operation found in natural languages < 1203208421 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the english or. < 1203208472 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Should PSOX use the bitewise operators, or the boolean? < 1203208482 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Or should both be fit in? < 1203208513 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, the bitewise squingies can do boolean, but boolean operators are more quandriligious < 1203208520 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What? < 1203208538 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I recommend both, myself. < 1203208551 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :boolean AND, then bitwise AND < 1203208592 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err... don't you have types? < 1203208598 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :can't you like, overload < 1203208609 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Not that type of types < 1203208866 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203209031 0 :jix!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1203209143 0 :ihope_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203209398 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Just NAND. < 1203209403 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Don't implement any others. < 1203209410 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :To implement others would be UTTERLY non-esoteric. < 1203209422 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :GregorR, I don't want PSOX to be painful to use < 1203209429 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Whaaaaaaaaaaaaaaa? :P < 1203209459 0 :ihope__!unknown@unknown.invalid NICK :iihop < 1203209462 0 :iihop!unknown@unknown.invalid PRIVMSG #esoteric :Oops. < 1203209482 0 :iihop!unknown@unknown.invalid PRIVMSG #esoteric :Cool. I grew an extra i. < 1203209507 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION politely doesn't mention what he lost < 1203209533 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :iihop: congratulations, now you have the normal amount. < 1203209556 0 :iihop!unknown@unknown.invalid PRIVMSG #esoteric :Oh, wonderful. < 1203209577 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :iihop is the new IHOP restaurants sponsored by Apple. < 1203209590 0 :iihop!unknown@unknown.invalid NICK :iIHOP < 1203209591 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :iIhop. < 1203209593 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Why didn't I think of that? < 1203209621 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Capitalization counts in XChat's nick coloration < 1203209755 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :nobody sane uses nick coloration < 1203209802 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`_: why's that? < 1203209802 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird`_, please do stop calling me insane < 1203209822 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, I don't think I should really include the VARG() variations < 1203209825 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not that i take that as an insult, i'm fairly insane. < 1203209826 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :I don't < 1203209826 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :not directly, anyway < 1203209833 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203209837 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: of course you are. must i search for the cheshire cat quote again? < 1203209843 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: it's very distracting! ;) < 1203209856 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :cheshire cat quote? < 1203209861 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok then. < 1203209887 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, it's fairly *ugly*, and most nick colorings always fail to distinguish the nicks that would most need distinguishing < 1203209891 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for some reason < 1203209899 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but it's a nice idea! < 1203209909 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"But I don't want to go among mad people," Alice remarked. "Oh, you can't help that," said the Cat: "We're all mad here. I'm mad. You're mad." "How do you know I'm mad?" said Alice. "You must be," said the Cat, "or you wouldn't have come here." < 1203209935 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :* < 1203209939 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1203209947 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If you want nick coloring done right, base it upon the md5 sum of the name. :p < 1203209958 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm done implementing a good portion of domain4 < 1203209960 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Woohoo! < 1203209973 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: randomization is ok, but you can do better. < 1203209996 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Now it just needs documenting, and also warnings that e.g. conversions from a number to a string only work for certain bases.. < 1203209997 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Perhaps randomization + comparing to already-assigned colors? < 1203210002 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1203210030 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :plus weighing by nick lengths and hamming distance to existing nicks < 1203210034 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or a better distance < 1203210066 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nick coloring is art < 1203210131 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Use neural nets! < 1203210212 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :This is nick coloring: http://en.wikipedia.org/wiki/Self-organizing_map < 1203210305 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: No, inverse hamming distance. < 1203210317 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :You want to tell apart "foodlepip" and "foodlepop" more than "sad" and "AifnAk" < 1203210336 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird`_: i didn't specify the function, just that you need to take into account the hd, < 1203210337 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*. < 1203210379 0 :oklopol!unknown@unknown.invalid NICK :AifnAk < 1203210382 0 :AifnAk!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1203210387 0 :AifnAk!unknown@unknown.invalid PRIVMSG #esoteric :this is one cool nick < 1203210396 0 :AifnAk!unknown@unknown.invalid PRIVMSG #esoteric :why didn't i invent it < 1203210401 0 :AifnAk!unknown@unknown.invalid PRIVMSG #esoteric :so simple.. < 1203210524 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i must warn you that it is a very naughty word in basque < 1203211024 0 :ehird`!n=ehird@user-5445797c.lns6-c11.dsl.pol.co.uk JOIN :#esoteric < 1203211033 0 :ehird`_!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1203211053 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Sorry. < 1203211060 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm? < 1203211061 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :I can't seem to join #ptl. < 1203211061 0 :ehird`!unknown@unknown.invalid PRIVMSG #esoteric :Invite me? < 1203211108 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION was able to join < 1203211196 0 :ehird`!unknown@unknown.invalid NICK :ehird < 1203211277 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION accidentally gave ehird a wrong command as e left < 1203212884 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, http://trac2.assembla.com/psox/browser/trunk/spec/psox-utils.txt < 1203212887 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :thoughts? < 1203213052 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oerjan? < 1203213058 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :RodgerTheGreat? < 1203213061 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :GregorR? < 1203213130 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Pong. < 1203213132 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1203213143 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Comments on what I posted? < 1203213151 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://trac2.assembla.com/psox/browser/trunk/spec/psox-utils.txt < 1203213539 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, any comments? < 1203213559 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Anyone? < 1203213566 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Is anyone in here alive, for that matter? < 1203213578 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION nods < 1203213646 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That works. < 1203213684 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Why does xor only take one arg? < 1203213685 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Are the arthmatic functions too high up in number? < 1203213711 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, that's because the documentation's wrong < 1203213718 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It's implemented correctly (I think) < 1203213800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: drop the boolean funcs < 1203213803 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can use bitwise for them < 1203213823 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Even a boolean not? < 1203213848 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :hm, maybe drop booleans except for boolean not? < 1203213852 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: OK, good point < 1203213863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But other bitwise ops like and, or... work fine when treating them as booleans < 1203213867 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :and what about boolean XOR? Can that be done as bitwise? < 1203213872 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You just end up passing '54' to if(..), which isn't a problem < 1203213879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Boolean XOR works fine as bitwise, I think < 1203213883 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Plus nobody uses boolean xor!! < 1203213895 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :tyvm ehird < 1203213938 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION recalls -1 being true in Oric BASIC, so not worked equally well boolean and bitwise < 1203213957 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or so i think. it's been a long while. < 1203213965 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-1 should be true. < 1203213966 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1203213974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :isTrue = (/= 0) < 1203213975 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i mean _the_ true < 1203213979 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1203213981 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :forth does that too < 1203213986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the idea is that all bits are set < 1203213988 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e. it's 111111111111 < 1203214077 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :So do we have an issue with boolean XOR or not? < 1203214080 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION commits < 1203214089 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://trac2.assembla.com/psox/browser/trunk/spec/psox-utils.txt < 1203214388 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm wait < 1203214391 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :boolean not= < 1203214408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :~(x&1) < 1203214409 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think. < 1203214421 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Err < 1203214425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1203214451 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(== 0) < 1203214456 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Sure < 1203214459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But he doesn't have == < 1203214459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1203214488 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you cannot make it from bitwise operators < 1203214546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1203214578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :􀀀 SECOND LAST UNICODE CHARACTER 􀀀 < 1203214582 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How many of your clients broke there? < 1203214593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :􏿽 WELL HOW ABOUT THIS ONE 􏿽 < 1203214615 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the question marks show up just fine, thank you ;) < 1203214625 0 :Corun!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203214633 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :saved by being broken already :D < 1203214662 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0FFFD 10FFFD < 1203214692 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :So is there a problem with the only boolean being boolean NOT? < 1203214699 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Nope, no problem at all < 1203214748 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, see, you had another piece of influence over PSOX. Because of you, I removed unnecessary boolean operators < 1203214768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1203214772 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, ok, i am warming to it < 1203214775 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1203214780 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203214812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: ok then.. how's this for an actually fun idea.. < 1203214815 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :psox gui domain < 1203214820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and DON'T go implementing it, I want to < 1203214820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203214836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... omg, i can't handle the awesome < 1203214839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also: < 1203214841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ncurses domain < 1203214853 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :graphical game of life, and graphical-console game of life! < 1203214856 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Heck, graphical mandelbrot! < 1203214868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Sgeo: All who think this idea is awesome, raise your hand < 1203214870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203214874 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION raises hand < 1203215124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://wiki.tcl.tk/15348 this is awesome < 1203215143 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, maybe events can be done by checking an infile descriptor? < 1203215187 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Maybe. I'm thinking, though, that PSOX needs a way to send some code over the wire. :P < 1203215197 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That'd be kind of weird though. < 1203215199 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"over the wire"? < 1203215234 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: To PSOX. < 1203215242 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But then you'd have to write BF code to output a program < 1203215244 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No fun! :) < 1203215255 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But an infile sounds about right. < 1203215257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BUT < 1203215260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Make it window-specific. < 1203215265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Pseudocode: < 1203215273 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fd = mkwin(640,480) < 1203215273 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I thought you meant for a domain to transmit stuff without being asked to.. < 1203215283 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :btn = mkbtn("CLICK ME") < 1203215300 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :addwidg(1,btn) # 1 is window number < 1203215308 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait_on(fd) < 1203215311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :handle_event(fd) < 1203215317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Something like that. < 1203215333 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, a GUI hello world should be about 7 lines of commented code, without densely-packed lines. < 1203215334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Agreed? < 1203215337 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Something like what I said, or were you reinforcing the pseudocode? < 1203215339 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: LMAO < 1203215359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Something like what you said, yes < 1203215363 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe more modular though. < 1203215367 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :like, a button has its own fd < 1203215368 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you wait on that fd < 1203215374 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to handle events for just that button < 1203215381 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it would make things simpler, for larger GUIs < 1203215389 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, I have a list of custom domains I'd like to see, and GUI is one of them < 1203215399 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: In the spirit of esotericism, I imagine I will use PyGame and draw my own widgets < 1203215406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That, is actually an advantage: It means e.g. mandelbrot is easier. < 1203215430 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It would also make things simpler because it could be designed around PSOX. < 1203215433 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Tk? < 1203215437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: So I guess I will write it tomorrow. Wish me luck. < 1203215444 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: No. We've just been talking about it. < 1203215445 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(sometime later. Much later.) < 1203215450 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh? < 1203215461 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think it will be a lot simpler to write our own, because we don't have fancy stuff needed. < 1203215464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am currently thinking: < 1203215470 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fancy. < 1203215473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a widget like a button, has a infile descriptor < 1203215478 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you can check that for events, basically. < 1203215479 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, are you looking into how to write domains? < 1203215487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: I will tomorrow. I am going soon today. < 1203215494 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: this means that you can write bigger guis without much fuss < 1203215498 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, the thing about 1 fd per widget is that the client would need to keep changing FDs < 1203215511 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Make the IO operations take an FD as an argument. < 1203215521 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+ provide special ones that operate on the current fd < 1203215535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I will just use pygame and draw my own simple widgets, because doing the event stuff with another gui toolkit would be painful < 1203215539 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, if the FD never transmits a 0x0A, you can infinite loop on that FD by only ever calling the input function once < 1203215577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Don't do that.. leave it up to the console driver to handle that stuff < 1203215586 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, wha? < 1203215593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, why do you wait for 0x0A? < 1203215601 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just read a character, then send it off < 1203215605 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Because one of the ways of getting input is a line at a time < 1203215612 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OK. One of the ways. < 1203215633 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :The other way is calling the input function 1nce for X characters < 1203215635 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :g2g < 1203215637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Anyway, just add functions that take an FD as an argument. < 1203215639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :A lot nicer. < 1203215641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bye :) < 1203215644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I will write it tomorrow. < 1203215696 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :By the way, how does everyone pronounce PSOX? < 1203215700 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I pronounce it as 'Pee socks'. < 1203215742 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Same here, although "P S O X" is truer to the epitomology < 1203215749 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :or wahtever you call it < 1203215786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: 'pee socks' is a bit unfortunate though < 1203215816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: By the way, I am also going to implement a metadomain. < 1203215824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It lets you define and implement domains from within a PSOX app. :D < 1203215879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: With this, I will then define trivial things like the http domain within brainfuck, using the tcp one < 1203215879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :\o/ < 1203216004 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :ehird's is how my phonological loop pronounces it. < 1203216215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :iIHOP: Thoughts on a bf gui lib? :P < 1203216254 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Do what other programming languages do. < 1203216278 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Which, I suppose, means using lots of libraries. < 1203216350 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :iIHOP: No-- i mean, < 1203216354 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Awesome idea or not? < 1203216362 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean, you could do a brainfuck interactive mandelbrot < 1203216372 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1203216374 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or a brainfuck game of life, with editor < 1203216391 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203216399 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or a brainfuck graphical calculator < 1203216402 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :I tend to be more interested in theory than practice. < 1203216406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or -- A brainfuck IDE in brainfuck! < 1203216415 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :iIHOP: Yeah, me too. But this is a pretty awesome idea, I think. < 1203216438 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :The fact that a BF GUI thingy could be written and the results could be replicated more easily is enough for me. < 1203216479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :iIHOP: I don't follow what you're trying to say < 1203216542 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :It's possible to write a Mandelbrot program in BF, but it's also possible to write a program that does exactly the same thing in some other programming language. < 1203216547 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: You know how you said you were going to write a c lib using PSOX? < 1203216548 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I'm glad to see that ehird is interested in PSOX. < 1203216554 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Yeah? < 1203216559 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Though it can be fun to write programs in BF, of course. < 1203216572 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I bet I can do it with less C constructs and more PSOX constructs. :-P < 1203216584 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Though I'd rather learn how to do it than actually do it. < 1203216599 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I was planning to have the types be lnum_t and such. < 1203216602 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1203216611 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :The fact that I know how to do my chemistry homework doesn't mean I want to do it. :-P < 1203216625 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I'll make it more awesome, and just make all ints be lnum_t and similar < 1203216636 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So NO conversion, but NO construction of types -- that's in C! < 1203216664 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Either that, or I'll actually *write a libc* < 1203216665 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Of course, if I did it in C++, then I'd have to overload the operators for the math calls. :p < 1203216678 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Actually, writing a libc would be a cool use of time. < 1203216685 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes.. < 1203216691 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Even better with PSOX, because that's just crazy < 1203216693 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Useless, but quite cool. < 1203216700 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I started to write a libc as part of an OS I was writing once. < 1203216715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Friendly tip: string/memory functions are easy. I/O is not. < 1203216715 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Even cooler if you decide to create a better, replacement libc. < 1203216734 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That, I'd think, would be obvious. < 1203216741 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Format? *shudder* < 1203216749 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :printf is pretty easy actually. < 1203216767 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: CRAZY IDEA: Writing libcox (libc-psox? Get it? Ahahahahahaha. :|), recompiling the python interpreter with it, then running PSOX under it, but with it using THAT instance of psox... Infinite loop! < 1203216770 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Whereas the string functions are fairly straightforward, and the memory functions are wrapped up syscalls. < 1203216781 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Too crazy. < 1203216798 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: OK, How about just one level of nesting. < 1203216798 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203216840 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I still want to see a TCP domain, so that 'wget' can be done the hard way, and I could right netcat, and. . . < 1203216844 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :s/right/write/ < 1203216846 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I will do that, tomorrow. < 1203216849 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yay! < 1203216850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It seems an obvious step to me. < 1203216853 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, an FFI, possibly. < 1203216857 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Arbitary Python/C function mapping. < 1203216876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Combined with my metadomain domain, you can define arbitary domains using python functions from within an esolang < 1203216876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203216894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like, the TCP domain can be made from within BF < 1203216899 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh God. < 1203216904 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. :D < 1203216932 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If I use that in PEBBLE, then I'd have a python_inline command. :p < 1203216963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Well, maybe not python_inline so much as python_func "name" "intype intype ..." "outtype" < 1203216970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Also, same for C functions. < 1203216985 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can provide a PSOX interface to malloc/free -- without leaving the comfort of BF. ;D < 1203217014 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: I'm afraid that the Brainfuck coding universe will never be the same. < 1203217021 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Most certainly not. < 1203217043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now excuse me while I go and write a graphical IRC client in Brainfuck with only the metadomain and the ffi. < 1203217051 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :LMAO < 1203217121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway. gtg now. Shall write libcpsox, many domains tomorrow... and ptl. :) < 1203217176 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :metadomain? ffi? < 1203217185 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Foreign Function Interface. < 1203217187 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Metadomain = define PSOX domains in PSOX. < 1203217192 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FFI = call C and Python functions in PSOX. < 1203217196 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :;D < 1203217204 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Basically sums it up: < 1203217205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :" You can provide a PSOX interface to malloc/free -- without leaving the comfort of BF. ;D" < 1203217208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :" Now excuse me while I go and write a graphical IRC client in Brainfuck with only the metadomain and the ffi." < 1203217244 0 :bd_!unknown@unknown.invalid QUIT :"rebooting server" < 1203217246 0 :puzzlet!unknown@unknown.invalid QUIT :"leaving" < 1203217270 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1203217305 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: And a BF->C compiler that, when compiling a non-PSOX program, uses libcpsox < 1203217305 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203217366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: And c2bf with PSOX. Anyway, bye for now. Levae any notes in here, i'll check logs. < 1203217373 0 :ehird!unknown@unknown.invalid QUIT :"K-Lined by peer" < 1203217415 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Well, I don't think I'm going to make it easier to access other FDs from input and output, switching will be the way to go < 1203217426 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Actually, I don't have the time to actually implement PEBBLE 2 ATM. < 1203217435 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I may, however, have the time to make BFbasic uses PSOX. :p < 1203217435 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, you might want to ignore what I said about waiting on FDs by retrieving lines < 1203217440 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That might not work < 1203217443 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, BFbasic? < 1203217530 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Calamari's Basic->Brainfuck compiler. < 1203217757 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Although Basic == Ugh. < 1203217940 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hopes that domain-writing isn't too ugly-difficult for ehird to do what he wants < 1203217970 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :For a fixed number of functions that have fixed types, it's easy, but changing the types dynamically is a different story < 1203218009 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, the current architecture doesn't allow a domain to just go and make.. well, actually it does < 1203218040 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Since psoxglobals (a module to hold global variables) is used promiscuiously < 1203218084 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is glad ehird is excited about PSOX though < 1203218195 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :" Sgeo: I'm afraid that the Brainfuck coding universe will never be the same." < 1203218196 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :LD < 1203218198 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1203218249 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :tyvm < 1203218294 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Actually, I'm writing the preprocessor for PEBBLE2 ATM. < 1203218301 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1203218597 0 :lispy!n=dagit@198.145.244.130 JOIN :#esoteric < 1203218610 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :What is the puprose of #esoteric? < 1203218626 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm maybe should change the topic back < 1203218640 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what _was_ the last on-topic topic, anyone? :D < 1203218640 0 :faxathisia!unknown@unknown.invalid TOPIC #esoteric :back < 1203218675 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :esoteric programming languages, such as brainfuck, unlambda etc. < 1203218717 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :oh, okay < 1203218723 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :what is esoteric about them? < 1203218732 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :ACTION uses brainfuck at work < 1203218736 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Oh, wait, no that's C++ < 1203218738 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :my bad < 1203218740 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :I confuse them < 1203218746 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :easily done :D < 1203218779 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well they are languages that may seem even worse than C++, at least until you delve deep enough into it < 1203218794 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :brainfuck is probably the only programming language that you can write a compiler for more easily than you can write an interesting program in < 1203218824 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :I know this because, I wrote the bf compiler that lambdabot uses, but I can't write anything in bf :) < 1203218835 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I've written quite a few things in Brainfuck. < 1203218841 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :My most recent hack is wget.b. < 1203218862 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :you added enough IO to do wget? < 1203218864 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :http://pikhq.nonlogic.org/wget.b < 1203218879 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo here wrote PSOX, which allows for quite a few insane features. < 1203218891 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I believe ehird is planning on doing GUI with it tomorrow. < 1203218915 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :is HTTP::get, a system call then?, well a function call < 1203218939 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's a PSOX call. < 1203218975 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :So, it's not really bf so much as bf++ or bf2? < 1203218987 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :maybe it's craniumfuck? < 1203218989 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lispy, it's not just for BF. Just about any language can use it < 1203219018 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It's a layer that goes between BF (or whatever) and standard I/O < 1203219040 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :But, let me get this straight, you had to extend the bf language to allow this to work, right? < 1203219054 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1203219059 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It's not the language. It's more like an interpreter < 1203219070 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Just stick a standard Brainfuck interpreter in. < 1203219083 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :PSOX binds to that interpreter's stdio, and interprets that. < 1203219092 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :normally bf would ignore sequences like PSOX_Init < 1203219097 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1203219103 0 :puzzlet_!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1203219114 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :The string "PSOX_Init" is a comment, actually < 1203219116 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It will ignore PSOX_Init. < 1203219126 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The stuff before that is what initialises PSOX. ;p < 1203219141 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Outputting 0x00 0x07 0x01 0x0A 0x00 0x00 0x0A is the PSOX_Init < 1203219150 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Ah, okay < 1203219152 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Now I get it < 1203219161 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Very nice < 1203219164 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ty < 1203219226 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :more evidence that turing complete does mean something important :) < 1203219311 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :do you guys work with python too? < 1203219326 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :(okay sorry, that was meant to be a joke making fun of python) < 1203219348 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is a Python person, can't say for the others < 1203219371 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lispy, wait, were you noting that PSOX is implemented in Python? < 1203219399 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: was it? no actually, I'm just completely poking fun at python here < 1203219429 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Python, unlike Ruby, has a readable syntax :p < 1203219434 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :lispy, what? re turing complete < 1203219441 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but they left out the type annotations :) < 1203219450 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: bf is turing complete < 1203219479 0 :BMeph!n=chatzill@adsl-76-212-202-40.dsl.sndg02.sbcglobal.net JOIN :#esoteric < 1203219479 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: and so even though it seems kinda worthless for real work, because it's TC, you can do cool things like wget just as long as you have IO < 1203219498 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION brought lispy here from #haskell by accident, for those who don't know :) < 1203219504 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :lispy, This is true of non turing complete languages < 1203219529 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: I suppose so in some cases. But, BF happens to be TC. < 1203219536 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :lispy, This is true of subturing languages ** what I meant to say < 1203219539 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :so that's why i phrased it that way :) < 1203219565 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :TC just means able to make any computation that a computer can make. That's part of the motivation for PSOX, actually, because I wanted BF to be able to do anything a generic program can do, which is how I kept mistakenly thinking of TC < 1203219637 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: which reminds me...since TC definition doesn't involves a system clock and user input. I've sometimes wondered if there are things we could make a modern computer do that a TC technically cannot. < 1203219655 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :er TC program < 1203219676 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lispy, go online, which standard BF cannot do < 1203219873 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :and truely seeds < 1203219874 0 :puzzlet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203219880 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :by using outside entropy i guess < 1203219885 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :er truely random seeds < 1203219903 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :oh, has anyone written a mersenn twister in bf? < 1203219918 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :or other high quality prngs? < 1203219950 0 :oerjan!unknown@unknown.invalid TOPIC #esoteric :the international hub for esoteric programming language design and deployment - map: http://www.frappr.com/esolang - forum: http://esolangs.org/forum/ - EgoBot: !help - wiki: http://esolangs.org/wiki/ - logs: http://tunes.org/~nef/logs/esoteric/ or http://ircbrowse.com/channel/esoteric - Pastebin: http://pastebin.ca/ < 1203219987 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :ACTION decides to head home and stop reading papers for the day < 1203220011 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(slightly modified from 18.05.07) < 1203220042 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but there are only 12 months in a year, so what date is that? ;) (sorry, I live in the US and like to intentially be a dumbass about dates ) < 1203220064 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :actually, I wish we all used the format YY/MM/DD < 1203220072 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :or YYYY/MM/DD < 1203220107 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you may find it interesting that i considered clarifying that date, and rejected the thought because 18 > 12 anyway < 1203220190 0 :iIHOP!unknown@unknown.invalid PRIVMSG #esoteric :Either YY/MM/DD or DD/MM/YY. < 1203220205 0 :iIHOP!unknown@unknown.invalid NICK :ihope < 1203220240 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :YYYY/MM/DD makes a bit more sense, if you look at what's best for computers wrt sorting < 1203220262 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, in numerical systems where the leftmost digit is most significant >.> < 1203220315 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1203220319 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Hi puzzlet < 1203220331 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is excited about GUI BF programs tomorrow :D < 1203220487 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I think there's a bug in the input domain < 1203220501 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It gets unreasonably slow eventually < 1203220576 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: indeed. < 1203220594 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :We should just make all notations big-endian. < 1203220609 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Always put the most significant word at the beginning of a sentence, and all. < 1203220643 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :It's 2008 February 16 PM 10:57, everyone! < 1203220697 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :And since a week is between a month and a day, you can also say "2008 February Saturday 16" where it's important. < 1203220704 0 :puzzlet!unknown@unknown.invalid QUIT :"leaving" < 1203220723 0 :puzzlet_!unknown@unknown.invalid NICK :puzzlet < 1203220883 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :hmm, yes, today is indeed today... is that in any way significant? < 1203220921 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks not and goes to bed, probably < 1203220925 0 :puzzlet!unknown@unknown.invalid PRIVMSG #esoteric :maybe it's the timezone < 1203220941 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :possibly < 1203220958 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :very well, I'm off < 1203221473 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I hope I'll be here tomorrow to help ehird if needed < 1203221488 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :If not, I hope that ehird will be able to figure everything out on eir own < 1203221550 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1203221554 0 :RodgerTheGreat!unknown@unknown.invalid QUIT : < 1203221703 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I should get going now < 1203221729 0 :Sgeo!unknown@unknown.invalid QUIT :Remote closed the connection < 1203221836 0 :RodgerTheGreat!n=Rodger@wads-5-233-27.resnet.mtu.edu JOIN :#esoteric < 1203222177 0 :ihope_!n=ihope@c-71-205-106-61.hsd1.mi.comcast.net JOIN :#esoteric < 1203223172 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203225218 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :lispy, http://www.jsoftware.com/ < 1203225250 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :oh damn, gwern left < 1203225301 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1203225303 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :wrong channel < 1203225420 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's a curse, i say! < 1203225437 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :what an #esoteric curse :) < 1203225451 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes bad puns regularly < 1203225911 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION bakes mud pans regularly < 1203225936 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION should make baking mud pans a regulated action < 1203225961 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :? < 1203225995 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :In Agora, an action is regulated if it affects something an officer has to report on, among other things. < 1203226560 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fucking wonderful. < 1203226568 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Someone modded one of my /. posts redundant. . . < 1203226575 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's the 4th post on the article, for God's sake. < 1203226651 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :I stopped posting on /. a while ago because the mods seemed to be pretty vicious < 1203226753 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah; for a while, my account had negative karma for one post. < 1203226807 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And does redundant even get metamodded? < 1203226851 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :ACTION shrugs < 1203226860 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's one thing to moderate a post identical to mine that came 10 minutes after 'redundant', but come on. . . < 1203226873 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The only post made that covered the same topic was about half a second before mine. < 1203227219 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Ah well; it got modded back up. < 1203227282 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :slashdot is a pretty tough MMO, but I hear it gets more fun at the higher levels < 1203227364 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :LMAO < 1203227402 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :Facebook and Myspace are pretty popular RPGs, but they're mostly just grindfests < 1203227439 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :And Digg is pretty much a dumbed-down clone of slashdot- I think they wanted to cater to the console crowd < 1203227502 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :Deviantart has a pretty sophisticated crafting system, but I think the fanbase is too creepy < 1203227515 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :in general, I tend to stay away from online games < 1203230163 0 :ihope_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203230190 0 :ihope_!n=ihope@c-71-205-106-61.hsd1.mi.comcast.net JOIN :#esoteric < 1203230195 0 :ihope_!unknown@unknown.invalid NICK :ihope < 1203230940 0 :bsmntbombdood_!unknown@unknown.invalid NICK :bsmntbombdood < 1203231093 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1203232371 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203232953 0 :BMeph!unknown@unknown.invalid QUIT :"calls it a night" < 1203233480 0 :ihope_!n=ihope@c-71-205-106-61.hsd1.mi.comcast.net JOIN :#esoteric < 1203233486 0 :ihope_!unknown@unknown.invalid NICK :ihope < 1203235199 0 :clog!unknown@unknown.invalid QUIT :ended < 1203235200 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1203237159 0 :ihope_!n=ihope@c-71-205-106-61.hsd1.mi.comcast.net JOIN :#esoteric < 1203238034 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203238096 0 :RedDak!n=dak@87.18.81.219 JOIN :#esoteric < 1203239781 0 :Dagide!n=dak@host91-85-dynamic.10-87-r.retail.telecomitalia.it JOIN :#esoteric < 1203240504 0 :RedDak!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203241265 0 :ihope_!unknown@unknown.invalid QUIT :Connection timed out < 1203241626 0 :ihope_!n=ihope@c-71-205-106-61.hsd1.mi.comcast.net JOIN :#esoteric < 1203241633 0 :ihope_!unknown@unknown.invalid NICK :ihope < 1203242197 0 :ihope_!n=ihope@c-71-205-106-61.hsd1.mi.comcast.net JOIN :#esoteric < 1203242684 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203243792 0 :faxathisia!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1203244275 0 :sco50000!n=scott@unaffiliated/sco50000 JOIN :#esoteric < 1203244291 0 :sco50000!unknown@unknown.invalid PRIVMSG #esoteric :INTERCAL :D < 1203244319 0 :sco50000!unknown@unknown.invalid PART #esoteric :? < 1203244539 0 :ihope_!unknown@unknown.invalid QUIT :Connection timed out < 1203244587 0 :AifnAk!unknown@unknown.invalid PRIVMSG #esoteric :" brainfuck is probably the only programming language that you can write a compiler for more easily than you can write an interesting program in" <<< nope < 1203244633 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :null-language. Compiler: "main(){}" And no matter how hard you try, you can't write an interesting program in it. < 1203244712 0 :AifnAk!unknown@unknown.invalid PRIVMSG #esoteric :lispy: python is the simplest and intuitive language on earth < 1203244961 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Thai yellow curry is the most flavorful and delicious food on Earth. < 1203244973 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :[an argument just as easy to defend :P ] < 1203244986 0 :AifnAk!unknown@unknown.invalid NICK :oklopol < 1203245060 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :GregorR: why defend something everyone knows is true < 1203245079 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wish i had some curry < 1203245098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[12:35] --> sco50000 has joined this channel (n=scott@unaffiliated/sco50000). < 1203245098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[12:36] INTERCAL :D < 1203245098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[12:36] <-- sco50000 has left this channel ("Leaving"). < 1203245112 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :SCO wurves INTERCAL. < 1203245116 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :I guess it's no big surprise. < 1203245119 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :we should keep track of newcomers' intentions, not all are irpers! < 1203245124 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1203245129 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it he an oldie < 1203245171 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :need to brush the intercal taste away -> < 1203246596 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :please say please say please say please say please say please say cheese. < 1203250037 0 :helios24!i=chaos@bytefight.org JOIN :#esoteric < 1203250311 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric < 1203252637 0 :jix!i=jix@78.47.212.92 JOIN :#esoteric < 1203252660 0 :jix!unknown@unknown.invalid QUIT :Remote closed the connection < 1203252678 0 :jix!i=jix@78.47.212.92 JOIN :#esoteric < 1203253659 0 :ihope_!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1203253665 0 :ihope_!unknown@unknown.invalid NICK :ihope < 1203253832 0 :lament!unknown@unknown.invalid QUIT :Remote closed the connection < 1203253839 0 :lament!n=lament@S010600110999ad06.vc.shawcable.net JOIN :#esoteric < 1203255118 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1203258097 0 :Tritonio_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1203258208 0 :Tritonio_!n=Tritonio@150.140.225.238 JOIN :#esoteric < 1203261490 0 :Dagide!unknown@unknown.invalid QUIT :Remote closed the connection < 1203262709 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :wow, ursala is really crazy < 1203262716 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yyyyyyyup < 1203262798 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :the alphabet is too small to give names to all the "pointers", so they added numbered "escapes" for extension < 1203262842 0 :Corun_!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1203262853 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I didn;t get that far yet < 1203262928 0 :Corun!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1203263668 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :"An operator precedence relation exists, but it is neither transitive, reflexive, nor anti-symmetric." < 1203263672 0 :Corun_!unknown@unknown.invalid NICK :Corun < 1203263715 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :and some operators have multiple arities, with each arity having its own precedence < 1203263795 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Fine as long as it's all well-defined. < 1203263975 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :the specification recommends trial-and-error for discovering the precedence rules rather than attempting to understand the description :P < 1203264030 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Weird. < 1203264095 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :also featuring prefix, infix, postfix, "solo" and circumfix/outfix operators < 1203264136 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :(many operators usable in more than one fixity) < 1203264142 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1203264232 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :My gosh. < 1203264777 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1203265086 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ihope: no, not yours < 1203265095 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1203265101 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :olsner's gosh. < 1203265119 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :plenty of gosh to go around < 1203265207 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :About how much gosh do you have? < 1203265233 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :In cubic meter pascals per Kelvin mole? < 1203265837 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :about 1 square foot per square fortnight Kelvin mole < 1203265866 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :*Reaumure mole < 1203265948 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Rankine, surely? < 1203265960 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and what is "Reaumure"? < 1203266044 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/R%C3%A9aumur_scale < 1203266091 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION disposes of the stray 'e' with a flyswatter < 1203267766 0 :calamari!n=calamari@ip24-255-58-134.tc.ph.cox.net JOIN :#esoteric < 1203268271 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Oh dear, I just used the adjective "Internetty" < 1203268273 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :... in referring to the political compass readings of Mike Gravel (D) and Dennis Kucinich (D) < 1203268283 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1203268287 0 :puzzlet!n=puzzlet@147.46.241.160 JOIN :#esoteric < 1203268303 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :use "Internet-esque". < 1203268304 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Internetty sounds like a silly name for a mascot < 1203268345 0 :RodgerTheGreat!unknown@unknown.invalid PRIVMSG #esoteric :"Internetty the tube! Don't look inside, though- he's filled with porn and social networks!" < 1203268701 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1203270142 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1203273094 0 :ihope_!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1203274065 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203275647 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1203275661 0 :Slereah!n=slereah@ANantes-252-1-86-60.w81-48.abo.wanadoo.fr JOIN :#esoteric < 1203277480 0 :ehird`!n=ehird@user-5445797c.lns6-c11.dsl.pol.co.uk JOIN :#esoteric < 1203277869 0 :ehird`_!n=ehird@user-5445797c.lns6-c11.dsl.pol.co.uk JOIN :#esoteric < 1203277932 0 :ehird`!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1203278423 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: plz let it access FDs < 1203278426 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :it will be so convenient < 1203278462 0 :oerjan!unknown@unknown.invalid QUIT :"Supper" < 1203278489 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :omfg < 1203278491 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :topic is back on topic < 1203278493 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :when did that happen < 1203278532 0 :Hiato!n=Hiato@dsl-245-46-56.telkomadsl.co.za JOIN :#esoteric < 1203278550 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :what is the difference between porn and social networks? < 1203278560 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :are social networks just porn for girls? < 1203278590 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :lispy: are you a markov chain bot? < 1203278621 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :am I markov "Internetty" chain bots? < 1203278629 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :(sorry) < 1203278635 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :ehird`_: no! < 1203278646 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :but I play one on IRC < 1203278686 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :I used to have a megahal here on freenode called {}, boy, that was a fun bot < 1203278693 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :lispy: crazy nick < 1203278699 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :if only 'I' was available < 1203278704 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :'I was talking to I yesterday, and..' < 1203278706 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :yeah, it kinda looks like a .... um... nevermind < 1203278708 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :even better: 'myself' < 1203278729 0 :lispy!unknown@unknown.invalid PRIVMSG #esoteric :most irc clients show'd the bot as <{}> < 1203278735 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :* you :Erroneous Nickname < 1203278738 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :fuck. you. freenode. < 1203278760 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :oh well < 1203278764 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :I have awesome nicks registered anyway < 1203278766 0 :ihope_!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1203278775 0 :ihope_!unknown@unknown.invalid PRIVMSG #esoteric :What are some of your awesome nicks? < 1203278790 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :ihope_: Actually they aren't very awesome. < 1203278798 0 :ihope_!unknown@unknown.invalid PRIVMSG #esoteric :I think my most awesome nick is ihop. < 1203278799 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :I have 'rice' though, which is a dictionary word so I guess that's pretty cool. < 1203278813 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :( Python, unlike Ruby, has a readable syntax :p <-- bullcrap, ruby is beautiful ... well, kinda. it's like perl but less ugly.) < 1203278829 0 :ihope_!unknown@unknown.invalid NICK :hyperpyrexia < 1203278835 0 :hyperpyrexia!unknown@unknown.invalid PRIVMSG #esoteric :Also a dictionary word. :-P < 1203278837 0 :hyperpyrexia!unknown@unknown.invalid NICK :ihope < 1203278862 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :'rice' is short though < 1203278868 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Actually, I was pretty close to getting 'z' at one point.. < 1203278876 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :then the bastard logged in for the first time in ages :( < 1203278896 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :It's a legal nick? < 1203278906 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Oh yes. < 1203278909 0 :ihope!unknown@unknown.invalid NICK :i < 1203278914 0 :i!unknown@unknown.invalid PRIVMSG #esoteric :This one isn't. < 1203278917 0 :i!unknown@unknown.invalid NICK :ihope < 1203278917 0 :ehird`_!unknown@unknown.invalid PRIVMSG #esoteric :Registered or forbidden, most all of them. < 1203278920 0 :ehird`_!unknown@unknown.invalid NICK :i < 1203278923 0 :i!unknown@unknown.invalid NICK :ehird < 1203278925 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeppers. < 1203278957 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I wonder why i is may-not-be-used and you is erroneous. < 1203278957 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I should write a script that checks every one-letter nick and tells me which are available for dropping. < 1203278969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ihope: freenode's ircd is.. not the cleanest thing < 1203278972 0 :ihope!unknown@unknown.invalid NICK :c < 1203278976 0 :c!unknown@unknown.invalid NICK :ihope < 1203278980 0 :Hiato!unknown@unknown.invalid PART #esoteric :? < 1203278991 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Fun stuff. < 1203279020 0 :ehird!unknown@unknown.invalid NICK :c < 1203279028 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Nothing special on that one. < 1203279029 0 :c!unknown@unknown.invalid PRIVMSG #esoteric :-NickServ- The nickname [c] is private < 1203279030 0 :c!unknown@unknown.invalid NICK :ehird < 1203279041 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :always use /ns info < 1203279043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :before trying < 1203279055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if they haven't been logged in for a month or a few, celebrate < 1203279058 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :The nickname [a] is private. The nickname [B] is private. The nickname [c] is private. < 1203279059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then #freenode and ask for droppation < 1203279065 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Fun stuff. < 1203279066 0 :ehird!unknown@unknown.invalid NICK :y < 1203279076 0 :y!unknown@unknown.invalid PRIVMSG #esoteric :this is... available < 1203279076 0 :y!unknown@unknown.invalid PRIVMSG #esoteric ::O < 1203279079 0 :y!unknown@unknown.invalid NICK :ehird < 1203279084 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eh < 1203279085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damnit < 1203279086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1203279098 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Damnit wait? < 1203279100 0 :ehird!unknown@unknown.invalid NICK :Y < 1203279103 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1203279121 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :combinator < 1203279124 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :ha! ha! ha! < 1203279197 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :omg < 1203279199 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :i could get Q < 1203279199 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1203279357 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :no Y for me < 1203279360 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :I can't be a combinator. < 1203279369 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :and q is erronous < 1203279379 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :Hey, I know! I should start my own network so I can get a one-char nick :P < 1203279383 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1203279394 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Or get that nick on Sine. < 1203279405 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :ihope: There's no nickserv, is there < 1203279418 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Ami's kind of one. < 1203279430 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric :OK. But that doesn't let me secure both 'Y' and 'q'. < 1203279431 0 :Y!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1203279436 0 :Y!unknown@unknown.invalid NICK :Yq < 1203279439 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :owned < 1203279444 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :ooh < 1203279445 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :2 years < 1203279778 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Cool, the nick "aefn" isn't registered. < 1203279816 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I prefer long nicks, though. < 1203279836 0 :ihope!unknown@unknown.invalid NICK :ThreePointOneFou < 1203279837 0 :Yq!unknown@unknown.invalid NICK :aefn < 1203279845 0 :ThreePointOneFou!unknown@unknown.invalid PRIVMSG #esoteric :That's as long as it gets? My. < 1203279846 0 :aefn!unknown@unknown.invalid NICK :Yq < 1203279873 0 :ThreePointOneFou!unknown@unknown.invalid PRIVMSG #esoteric :And I'd typed it out to "ThreePointOneFourOneFiveNineTwoSixFiveThreeFiveEightNineSevenNineThreeTwoThree" in case nick lengths could go that far. < 1203280367 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :ideas spread fast < 1203280372 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric : spb: Feel like donating a single character nick to me? < 1203280379 0 :helios24!unknown@unknown.invalid QUIT :"Leaving" < 1203280692 0 :ThreePointOneFou!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1203280704 0 :ThreePointOneFou!unknown@unknown.invalid NICK :ihope < 1203280763 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: question about tcl < 1203280770 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :aren't return values and output redundant? < 1203280785 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :like, in shell, i guess you do have the error status, but mostly subshells output are their 'return' < 1203281070 0 :Sgeo!n=Anonymou@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1203281166 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :WAs ehird in here earlier? < 1203281196 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :I am ehird. < 1203281226 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: you good at lojban? < 1203281251 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, I used to know a drop of lojban, and sort of know the basics < 1203281275 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Yq, are you going to work on those domains? < 1203281310 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Yes, I guess so. < 1203281316 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :Is there a PSOX usage tutorial anywhere? < 1203281318 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :With brainfuck. < 1203281330 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Yq, there are examples, and the spec < 1203281343 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I think one part of the spec is out-of-date, holdon < 1203281350 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fucktorial < 1203281382 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yq: Nope. < 1203281393 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: How are they unique theoretically < 1203281424 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :proc foo {} {return 1} returns 1 to the caller; proc bar {} {puts 1} outputs one. < 1203281445 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :if {[foo]} is therefore like if {1}. . . < 1203281471 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :if {[bar]} is more like if {puts 1}; testing if puts actually outputs without an error. < 1203281524 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Really, it's the difference between printf() and return in C. ;) < 1203281535 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Duhhh. I'm saying it SHOULDN'T be like that. < 1203281548 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Why the hell *not*? < 1203281557 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm. < 1203281562 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Why the hell shouldn't it be like that? < 1203281564 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :example: < 1203281575 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wants to see a GUI domain soon < 1203281581 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :proc bar {} {puts 1}; if {[bar]} ;# this is 'if {1}...' < 1203281585 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :it's like this in shell < 1203281592 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :and it makes sense when the language is like a shell < 1203281596 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :which tcl is, essentially. < 1203281598 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Which it's not. < 1203281599 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :as well as the string focus < 1203281639 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Are you fucking mad? < 1203281681 0 :RedDak!n=dak@host91-85-dynamic.10-87-r.retail.telecomitalia.it JOIN :#esoteric < 1203281711 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Perhaps; but saying that helps little. < 1203281724 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :[puts 1] is just the same as [puts stderr 1]. < 1203281746 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I am aware what the actual semantics are. < 1203281752 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :I am arguing theoretically, what would be better. < 1203281757 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :s/stderr/stdout/ < 1203281765 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Perhaps if you're making a shell vaguely like Tcl. < 1203281776 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :But Tcl's not shell. < 1203281789 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I'm just saying I can't see how it wouldn't be nicer. < 1203281807 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You've obviously never had a function *want to output*. < 1203281853 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Uhm, if I have a nested expression I don't expect side-effects to creep out of it relying on evaluation order, no. < 1203281866 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :I would put the first action, then the second. Then my nested ones. < 1203281867 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :*one < 1203281882 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Did you also happen to fail to notice that Tcl is imperative as fuck? < 1203281970 0 :Yq!unknown@unknown.invalid PRIVMSG #esoteric :May be so. But in nested expressions, that's just ugly style. < 1203281987 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... < 1203281998 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Would you support the same behavior in C? < 1203282274 0 :Yq!unknown@unknown.invalid NICK :{ < 1203282278 0 :{!unknown@unknown.invalid NICK :} < 1203282327 0 :}!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: No < 1203282337 0 :}!unknown@unknown.invalid PRIVMSG #esoteric :You should seperate side-effecting seperations and not nest them oddly. < 1203282344 0 :}!unknown@unknown.invalid PRIVMSG #esoteric :Anything else is obfuscation. < 1203282360 0 :}!unknown@unknown.invalid QUIT :Nick collision from services. < 1203282365 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oO < 1203282369 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Nick collision? < 1203282398 0 :ehird`_!n=ehird@user-5445797c.lns6-c11.dsl.pol.co.uk JOIN :#esoteric < 1203282408 0 :ehird`_!unknown@unknown.invalid NICK :[ < 1203282417 0 :[!unknown@unknown.invalid PRIVMSG #esoteric :test < 1203282418 0 :[!unknown@unknown.invalid NICK :] < 1203282419 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :wb ehird < 1203282420 0 :]!unknown@unknown.invalid PRIVMSG #esoteric :test < 1203282425 0 :]!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. :P < 1203282426 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :} had a nick collision? < 1203282429 0 :]!unknown@unknown.invalid PRIVMSG #esoteric :Yah < 1203282431 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :/whois } < 1203282434 0 :Sgeo!unknown@unknown.invalid NICK :} < 1203282439 0 :]!unknown@unknown.invalid PRIVMSG #esoteric :sgeo: it's forbidden < 1203282439 0 :}!unknown@unknown.invalid NICK :Sgeo < 1203282447 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :-NickServ- If you do not change within one minute, you will be disconnected < 1203282456 0 :]!unknown@unknown.invalid PRIVMSG #esoteric :yah < 1203282461 0 :Sgeo!unknown@unknown.invalid NICK :I < 1203282463 0 :I!unknown@unknown.invalid NICK :Sgeo < 1203282464 0 :]!unknown@unknown.invalid PRIVMSG #esoteric :forbidden < 1203282483 0 :]!unknown@unknown.invalid NICK :_ < 1203282489 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :this < 1203282491 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :would be so awesome < 1203282492 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :as a nick. < 1203282496 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :/nick We /me are the bork! < 1203282515 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :_, is that forbidden or something? < 1203282526 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: No, it's allowed. I am asking in #freenode. < 1203282530 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1203282530 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :I imagine I will be denied < 1203282533 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, any chance of working on the GUI domain now? < 1203282545 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Bah, pygame is a lot of wurk :P < 1203282552 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1203282553 0 :slereah_!n=slereah@ANantes-252-1-86-60.w81-48.abo.wanadoo.fr JOIN :#esoteric < 1203282560 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :So use something simpler if you want < 1203282566 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :You're the one making it, not me < 1203282587 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :haha, I know.. I know. < 1203282593 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, it's dependant on you. < 1203282598 0 :_!unknown@unknown.invalid PRIVMSG #esoteric :The model requires not having to switch FDs to be nice. < 1203282630 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure how I can fit in not switching FDs.. < 1203282703 0 :_!unknown@unknown.invalid NICK :^ < 1203282708 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1203282710 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Easy < 1203282716 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :add an extra parameter to the functions < 1203282720 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Or: just add some more, for backwards-compat < 1203282740 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :There isn't really room to add functions < 1203282758 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Uhm < 1203282759 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Explain? < 1203282779 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 (num-of-bytes-to-take) 0x0A < 1203282784 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That's input < 1203282793 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Where in there is there room to fit something else? < 1203282800 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :... Another domain? < 1203282802 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :ALTERNATIVELY < 1203282808 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 (fd) (num-of-bytes) 0x0A < 1203282811 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :nicest solution < 1203282819 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That would break compatibility.. < 1203282825 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, what about output? < 1203282846 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Tell me exactly how many PSOX programs are there, mr Sgeo? < 1203282853 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :About 3? Maybe even 4? < 1203282858 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lol true < 1203282859 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :How could you possibly stop them working! < 1203282869 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :They run whole ENTERPRISES! < 1203282872 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1203282880 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What about output though? < 1203282885 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :What is it right now? < 1203282904 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Printing a character outputs that character unless it's 0x00, which is escape < 1203282907 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :to function < 1203282915 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :and 0x00 0x00 escapes the next character < 1203282944 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :That can stay the same. What is the actual function for outputting, though, in PSOX? < 1203282949 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Because that gets an extra FD peramater < 1203282957 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :But, you can still keep the sometimes-useful 'current FD' model -- < 1203282958 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That is outputting < 1203282968 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Uh, but you have FDs. < 1203282971 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :How do you output to the current FD? < 1203282986 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Exactly as I said < 1203282986 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x00 char < 1203283005 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Ah, I see. < 1203283006 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. That's no one-letter nick. < 1203283012 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :OK then: < 1203283027 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :You have, at the base, functions which take an fd, and the rest of the parameters. < 1203283031 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :This includes a special output one. < 1203283031 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :THEN, < 1203283034 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :On top of that, < 1203283041 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :you layer on a 'current FD' system < 1203283042 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1203283052 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :which is basically all the functions, sans FD parameters, and a 'change FD'/'get FD' functions < 1203283055 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Then, < 1203283067 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :you use your model of output - i.e. JUST OUTPUT the character! - to use the implicit-FD versions. < 1203283069 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Simplel. < 1203283094 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :back < 1203283140 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Would it be just simpler for a GUI client to just switch FDs every two seconds? < 1203283148 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: No. < 1203283154 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :It would be far harder to code with. < 1203283160 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe special input/output functions in the system domain? < 1203283161 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :Plus, this model of output/input is used by C and similar < 1203283164 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :fputc, and putc. < 1203283166 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :fprintf, and printf. < 1203283167 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1203283173 0 :^!unknown@unknown.invalid PRIVMSG #esoteric :(fgetc, and getc, ...) < 1203283237 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :heh, backtick is already taken < 1203283286 0 :^!unknown@unknown.invalid NICK :s < 1203283290 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :s, would input/output functions in the System domain be ok? < 1203283290 0 :s!unknown@unknown.invalid NICK :a < 1203283305 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :a, do you have ehird on highlight? < 1203283308 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1203283311 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Anyway sgeo: < 1203283312 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1203283319 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :I have some simple questions to help me understand < 1203283336 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :How is the current model of IO accomplished? How do I select an FD, input, output, etc. < 1203283341 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Answer that, and I'll explain my suggestion. < 1203283372 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x02 0x10 f 0x0A sets the current outfile FD < 1203283381 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x02 0x11 f 0x0A sets the current infile FD < 1203283416 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :There are 4 builtin FD numbers: 0x00 is the current outfile FD, 0x01 is the current infile FD, 0x02 is stdout, 0x03 is stdin < 1203283445 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Okay. < 1203283448 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :And after that. < 1203283452 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :how do I do stuff with them? < 1203283466 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I already described input and output < 1203283485 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Do it again, I don't grasp it yet. < 1203283512 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Output is either just outputting the character if it's not 0x00 < 1203283522 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Or just output 0x00 0x00 first to escape the next char < 1203283537 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Input is 0x00 0x01 (num-of-bytes) 0x0A < 1203283567 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Specify what 0x01 and 0x02 are in english < 1203283580 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Domain specifiers < 1203283589 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Yes... < 1203283590 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :What domains. < 1203283599 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0x01 is the input pseudodomain < 1203283613 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0x02 is the System domain < 1203283613 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :define `pseudodomain' < 1203283636 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pseudodomain because 0x01 doesn't have functions like a normal domain. The num-of-bytes pretends to be the function name, but it isn't < 1203283651 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :OK. < 1203283664 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Well, my idea is quite radical then. < 1203283666 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :But it's very simple.. < 1203283680 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :0x01 will no longer be the input pseudodomain. It will be the 'IO domain'. < 1203283682 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :With me so far? < 1203283686 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1203283692 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :OK, and, < 1203283699 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :There will be a function in it for input. < 1203283704 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :So, something like: < 1203283723 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x00 (num-of-bytes) 0x0A < 1203283723 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :(Not exact synatx, maybe. But you get the idea?) < 1203283741 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I get the idea, but it's an extra byte of overhead :/ < 1203283754 0 :a!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: With me? < 1203283754 0 :a!unknown@unknown.invalid NICK :ehird < 1203283758 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1203283759 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1203283763 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: ping < 1203283767 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1203283768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sorry < 1203283769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I lagged. < 1203283779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, I have a suggestion re: byte of overhead < 1203283807 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :If the PSOX server has nothing to send, and a character is requested, it sends off a character from $FD. (Don't think about this too much. I'll explain it once I get my concepts down.) < 1203283825 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :back < 1203283848 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, the PSOX server doesn't know when a character is requested < 1203283857 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: It can, though, quite easily. < 1203283865 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I might give an example, but that's not the point.. < 1203283870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The point is the idea I am explaining. < 1203283878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, you can see the logical outcome: < 1203283886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x01 (char) 0x0A < 1203283895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Please ignore that these are very verbose ways to do IO, I will fix that later..) < 1203283897 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, select.select() doesn't work on Windows last time I checked docs < 1203283900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: With me so far? < 1203283908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Don't. think about it. too much!) < 1203283930 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1203283955 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: OK, now what I propose < 1203283968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It would look like this, in the core: < 1203283971 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x00 (fd) (num-of-bytes) 0x0A < 1203283979 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x01 (fd) (char) 0x0A < 1203283988 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is obviously not an ideal interface for the programmer. < 1203283994 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: But it's a solid base for IO. < 1203284000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And with that, we can build upon it: < 1203284013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x02 (fd) 0x0A ;; change fd < 1203284020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x03 0x0A ;; get fd (not required) < 1203284032 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x04 (num-of-bytes) 0x0A ;; no need for fd param -- works on current fd < 1203284039 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x05 (char) 0x0A ;; ditto < 1203284056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now, with all of this we have an IO system more powerful than PSOXs. But it's still not that convenient! < 1203284065 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, what we can do.. is this: < 1203284071 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You know your current stuff for output? < 1203284073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e. just output it < 1203284076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with a possible escape? < 1203284079 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1203284085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, that ends up using "0x00 0x01 0x05 (char) 0x0A" < 1203284087 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's just sugar. < 1203284115 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The input thing is valid, and maybe you can check for input, or maybe you can have a special other magic sugar -- like "0x01 bytes", and escape that... You already have one already. But, this isn't such a major problem. < 1203284126 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The point is that it would make e.g. the GUI lib *very nice* to use < 1203284138 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and it also lets you unify the infile/outfile mess thing < 1203284199 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure I'm willing to change around the whole current structure, but that stuff could go in a custom domain.. < 1203284213 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203284222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: And why not? < 1203284227 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There is no programs to speak of. < 1203284232 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is more elegant, and it's what every other language uses. < 1203284241 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It is also just as convenient if you take into account my sugar ideas.. < 1203284257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe even more convenient, with my 0x01 sugar. (Shorter programs, 0x01 is easy to make in BF) < 1203284278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, when you start doing things like e.g. heavy file IO < 1203284279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Which is not that uncommon I must add!) < 1203284284 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it will be a lot nicer < 1203284287 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and shorter < 1203284336 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Well, the thing with the 0x01 sugar is that how do we make sure it gets to the server before the client requests it? < 1203284351 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :the reason 0x0A is at the end of every function is to make sure the server gets it < 1203284396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Simple < 1203284403 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 only reads one byte < 1203284408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the syntax: < 1203284408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x?? < 1203284411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'read ?? bytes.' < 1203284432 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Suppose I have a BF interpreter that only sends out at a 0x0A < 1203284436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You don't need an ending marker because it's not variadic. < 1203284437 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :and I have this BF program: < 1203284438 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And you can escape it like this: < 1203284438 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x01 < 1203284440 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now of course the question 'how do you input one byte??' < 1203284445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Probably, by 0x01 0x00. < 1203284448 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :+.., < 1203284452 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Since you never actually want to read 0 chars. < 1203284454 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What happens? < 1203284460 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Well, let's see < 1203284464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's 0x01 0x01 < 1203284469 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Then waits < 1203284474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1203284476 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1203284476 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :But the BF interpreter never sends it to the server < 1203284482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: In my semantics if you look < 1203284484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that actually escapes 0x01 0x01 < 1203284485 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Because there's no 0x0A to flush it < 1203284490 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1203284491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :uh < 1203284493 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no interp does that < 1203284496 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no sane one < 1203284504 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i guess < 1203284505 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I remember GregorR being worried about oit < 1203284506 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :it < 1203284518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but fine < 1203284518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this: < 1203284518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x?? 0x0A < 1203284518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Actually, that's good < 1203284518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Because: < 1203284519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x0A < 1203284537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :means just a literal \1 < 1203284537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, wait < 1203284537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No < 1203284537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IGNORE THAT < 1203284537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1203284540 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: OK: < 1203284546 0 :BMeph!n=chatzill@adsl-76-212-202-40.dsl.sndg02.sbcglobal.net JOIN :#esoteric < 1203284551 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x?? 0x0A < 1203284552 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is a macro for < 1203284569 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x00 0x01 0x05 0x?? 0x0A < 1203284569 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and: < 1203284569 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x01 0x0A < 1203284569 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is a literal \1 < 1203284574 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF you want to actually read one char: < 1203284577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x00 0x0A < 1203284607 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, here's a "read one char" BF program: < 1203284622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+.-.+++++++++., < 1203284626 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :A "cat one char": < 1203284628 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+.-.+++++++++.,. < 1203284630 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But obviously < 1203284641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait < 1203284641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: You get an EOF indicator, right? < 1203284641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OK. Then this: < 1203284657 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+.-.+++++++++.,,. < 1203284657 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That doesn't work if it's 0x00, though.. < 1203284664 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :EOF Indicator, Num-of-bytes-not-EOF, bytes, padding < 1203284680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But this is simple enough to fix: < 1203284685 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+.-.+++++++++.,,>.+.+++.<.>++++++++++. < 1203284688 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Is what currently happens when you request a fixed number < 1203284692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: There's a "read one char, output": < 1203284697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1203284700 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well then you just add more ,s < 1203284700 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1203284705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But, you get the basic idea. < 1203284708 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And I would say: that's nice and short! < 1203284718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And it allows for my cleaner semantics < 1203284727 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So I would say it's a good thing < 1203284727 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Opinions? < 1203284733 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0x01 0x?? 0x0A is only one byte less than 0x00 0x01 0x?? 0x0A < 1203284743 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :although it just frees up domain 0x01 < 1203284745 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I guess < 1203284767 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Yeah, well it might be only one byte less, but the benefits that come with it are nice, very nice! < 1203284777 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And it doesn't really free up domain 0x01. < 1203284781 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's the IO domain in my semantics, remember? < 1203284794 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Yes, frees up 0x01 for your IO domain is what I meant < 1203284799 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right < 1203284812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IMO, it's cleaner. And it's the most widely used model of IO - C, etc. use it < 1203284828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Plus, when you do heavy file I/O (or, in my case, heavy widget-FD I/O) it makes programs a lot nicer, I think < 1203284905 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I suppose you'd be opposed to making input 0x00 0x01 fd num-of-bytes 0x0A? < 1203284934 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :and output 0x00 0x00 fd char ? < 1203284959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Of course... domains are the best way to organize this. < 1203284965 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Besides, a domain allows for expansion of IO capabilities. < 1203284974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like, an 'isEOF' function or something. < 1203284985 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Well, input gives an EOF indicator < 1203285020 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Or I could make a custom IO domain.. < 1203285026 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: I know it does. < 1203285027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was an example < 1203285033 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Can't you stop taking every example I give literally? < 1203285042 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And a custom IO domain means you have two models for IO, neither of which is integrated < 1203285049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Which is ugly, and so is the whole 'pseudodomain' idea. < 1203285185 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1203285190 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1203285351 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :back < 1203285360 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It would be a major change :/ < 1203285365 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bf_txtgen IO < 1203285367 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bf_textgen IO < 1203285371 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Huh? < 1203285402 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!help < 1203285405 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon < 1203285407 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 < 1203285415 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: What's the problem with that? < 1203285417 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Who is going to die? < 1203285449 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Why isn't bf_txtgen working? < 1203285451 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!ps < 1203285455 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :1 Sgeo: bf_txtgen < 1203285457 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :2 Sgeo: ps < 1203285528 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!bf_txtgen it does just slowly < 1203285555 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Too slowly. Is there an online alternative? < 1203285643 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Making your changes would not be easy < 1203285669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: there's a java alternative. < 1203285672 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: and yes it would. < 1203285675 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :38 +++++++++[>++++++++>>><<<<-]>+.++++++. [67] < 1203285680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :its just a few python files < 1203285681 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sheesh < 1203285840 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :How often would apps need to do I/O to arbitrary FDs? < 1203285852 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Quite often.. < 1203285858 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :When using multiple files when using the gui toolkit ... < 1203285863 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :133 +++++++++++++++[>+++++++>++++++++>++><<<<-]>.>----.>++.<<-----.>-----.<+.>++++.>.<<+++++.>++.--.+.>.<-.-------.<+++++.++++++++.>.<++. [913] < 1203285865 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And besides they still have the short interface. < 1203285877 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Couldn't those cases be covered with a custom domain? < 1203285997 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Yes, but that's ugly. < 1203286002 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And besides, my way has no downsides. < 1203286037 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Maybe your way could go in PSOX 1.1? < 1203286107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Why not 1.0? < 1203286110 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There's no programs to speak of. < 1203286123 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :The current PSOX Server doesn't count as a program < 1203286124 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :? < 1203286145 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: It wouldn't require many changes.. < 1203286150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Gimme svn access and I'll branch off and do it < 1203286154 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1203286164 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, do you have an Assembla account? < 1203286167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: no < 1203286168 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1203286174 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :get one < 1203286181 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1203286195 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1203286197 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, later ;) < 1203286243 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Why later? < 1203286336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :quite busy -- you'll see < 1203286357 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :busy with PSOX, or with something else? < 1203286362 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :something else < 1203286390 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Well, give me your email address, and I'll invite you < 1203286506 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eh < 1203286511 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :penguinofthegods@gmail.com < 1203286537 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so you did have an Assembla account.. < 1203286542 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :did i < 1203286543 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1203286573 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.assembla.com/user/best_profile/dxUzeMKqWr25QeaaeP0Qfc < 1203286658 0 :jix!unknown@unknown.invalid QUIT :"CommandQ" < 1203286751 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ahh yes < 1203286751 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for Blink < 1203286781 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Blink? < 1203286801 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a quite old project of mine < 1203286806 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was a CMS built on Rails, minimal < 1203286808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :designed to run my site < 1203286813 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was based on blocks and views.. < 1203286825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a block is a hunk of content, like a page or blog post or a picture with text or anything < 1203286834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a view specified how they were displayed, and could be controlled with ruby code < 1203286844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you could have parent views and stuff < 1203286854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so you could have a 'site' view which displayed the menu and header and footer < 1203286860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then a 'blog' view which had that as the parent < 1203286869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and some small ruby code to tell it what blocks to dispaly and how. < 1203286884 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it never got far < 1203286939 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Sounds interesting.. why didn't it get far? < 1203286982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: 1. Rails sucks 2. I am really terrible at keeping projects going < 1203287048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: But basically the same idea has carried throughout various languages and mindsets and I still plan to make somthing like it for my site. < 1203287055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think the timeline is: < 1203287065 0 :lispy!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1203287077 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Blink, , Alchemy, various Alchemys (Alchemii?), , < 1203287177 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What CMSs are there for Python? < 1203287202 0 :timotiis!unknown@unknown.invalid QUIT :Remote closed the connection < 1203287475 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric < 1203287495 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1203287519 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :re timotiis hi oerjan < 1203287547 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1203287604 0 :timotiis!unknown@unknown.invalid PRIVMSG #esoteric :hallo < 1203287643 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: i changed the topic back when lispy arrived and didn't know what we were - thought it might be an idea to tell it in the topic :) < 1203287654 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: no good ones < 1203287658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in fact, cmses full stop suck < 1203287665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they are either bloated or restricted. < 1203287751 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, whachu working on? < 1203287812 0 :BMeph!unknown@unknown.invalid PRIVMSG #esoteric :So FALSE isn't considered esoteric anymore? < 1203287835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BMeph: uhm < 1203287839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :since when < 1203287887 0 :BMeph!unknown@unknown.invalid PRIVMSG #esoteric :I didn't see it in EgoBot's list, there. < 1203287970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't interpret all languages.. < 1203287982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :esolangs.org/wiki/Language_list < 1203288007 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :And last I checked, EgoBot wasn't PSOX enabled < 1203288114 0 :BMeph!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, so MoinMoin is a wiki engine, that's used for CMS. I think that says more about CMS tech than anything else. < 1203288238 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :moinmoin sucks < 1203288342 0 :RedDak!unknown@unknown.invalid QUIT :"I'm quitting... Bye all" < 1203289097 0 :ihope!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1203289109 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Rice toes. < 1203289323 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Tice roes. < 1203290380 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :göa < 1203290405 0 :bsmntbombdood!unknown@unknown.invalid QUIT :Remote closed the connection < 1203290445 0 :bsmntbombdood!n=gavin@75-166-180-115.hlrn.qwest.net JOIN :#esoteric < 1203291133 0 :ehird`_!n=ehird@user-5445797c.lns6-c11.dsl.pol.co.uk JOIN :#esoteric < 1203291150 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :And what's a göa? < 1203291264 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :nohird < 1203291400 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tried googling it but had no success < 1203291415 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :even limiting to swedish pages < 1203291431 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :problem is google doesn't distinguish it from "goa" properly < 1203291495 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah exact match is better < 1203291529 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :bah the top hits seem misspellings of "gra" < 1203291619 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :perhaps it is not an actual word < 1203291628 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you'd think.- < 1203291634 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it _does_ seem like it could be cognate to the norwegian "gj" < 1203291659 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :dig deeper. < 1203291750 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :which means feeding or dogs barking < 1203291964 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION randomly asks if it's a swear word < 1203291982 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :mind you that one is not easy to find either < 1203292011 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i am tending towards believing "ga" is at best a deliberate misspelling < 1203292014 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :especially in the context < 1203292086 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Is 'gora' of any relation to Agore? :p < 1203292090 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Agora, even. < 1203292118 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :doubtful. it means to do or make < 1203292146 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :norwegian "gjre" < 1203292356 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Agora is named after the Agora, isn't it? < 1203292375 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i should think so < 1203292403 0 :ehird!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1203292502 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(actually there is a subtle difference between norwegian and swedish there - norwegian rarely uses it to mean "make", only "do") < 1203292629 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Any relation to the Spanish word "hacer"? < 1203292641 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :That means to do or make. < 1203292658 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :from latin facere < 1203292675 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i am not sure but i _think_ latin f can correspond to germanic g < 1203292685 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :via indoeuropean gh < 1203292692 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Cool. < 1203292704 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah no < 1203292720 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I think I also remember f corresponding to h somewhere... oh, right here. < 1203292720 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wikipedia says facere is cognate to "do", rather < 1203292735 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :latin f -> spanish h, yes < 1203292744 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :The word "do" comes from the word "facere"? < 1203292750 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :dh -> f in latin, d in germanic < 1203292764 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :My.