< 1238457606 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: LOL < 1238457618 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Come on, there’s a better empty box in there. < 1238457656 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's the BALLOT BOX, you're certainly supposed to use it if you're also using BALLOT BOX WITH CHECK. < 1238457670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1238457675 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It’s sized differently here. < 1238457695 0 :olsner!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1238457700 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess it failed the check, then < 1238457710 0 :swistakm!n=swistak@chello084010208142.chello.pl JOIN :#esoteric < 1238457782 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe they've been lazy and reused an empty box glyph. There are certainly enough of those. < 1238457814 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm that sounds like an idea for an esolang < 1238457823 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :slightly whitespacish < 1238457847 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Unicode abuse? You can make esolang that's truly horrible to write with that... < 1238457866 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it was not the writing i was thinking of... < 1238457894 0 :Asztal_!unknown@unknown.invalid PRIVMSG #esoteric :combining diacritics as control structures? < 1238457906 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, just empty boxes :D < 1238457948 0 :Asztal_!unknown@unknown.invalid PRIVMSG #esoteric :â̈̈̋! < 1238457958 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :And if one is practicularly sadistic, use some astral characters that do have proper drawings. Pretty much no font gets those right. < 1238457991 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :¨ is map, since . . looks like two elements. < 1238458002 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :´ is fold, since it looks kind of like a bend. < 1238458008 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :of course another idea might be to have a single complicated sign that can be written several ways with combining characters < 1238458018 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and to have the language distinguish those < 1238458030 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: is astral a pun on "plane"? < 1238458042 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: sort of < 1238458050 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: "Astral characters", means characters from planes 1-16. < 1238458052 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :astral plane is all non-basic multilingual plane haracters < 1238458059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"astral plane" was almost certainly intentional < 1238458131 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :APL functional symbol quad is a ⎕, and APL functional symbol squish quad is just a ⌷, and the ballot box was of course ☐, and Nko letter sa is ߛ and you can put a combining enclosing square around a space like ⃞ and there is plain old white square □ and white medium square ◻ and… < 1238458141 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Sorry, got tired of looking for those. < 1238458164 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: nko letter sa doesn't show up here < 1238458167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so get 2 more and we have a BF dialect < 1238458193 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not surprised; it made the text field in gucharmap get right-to-left direction, too. < 1238458239 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1238458240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it shows up < 1238458244 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it just has something inside < 1238458268 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh. Well, my font isn't very good either. There was another square-like arabic character I wasn't so sure about. < 1238458371 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :One interpretter I did did pretty sadistic unicode abuse by putting the basic operators into TAG range. "Data 0" operator was U+E0030, "Data 1" operator U+E0031, "Input" operator U+E0069 and "Output" operator U+E006F... < 1238458390 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, musical symbol drum clef-2, 𝄦 is a square here, although it messes up whitespace. As is musical symbol cluster notehead white, 𝅚. Those have the ‷advantage‴ of being non-BMP characters. < 1238458408 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"TAG"? < 1238458437 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Musical symbol square notehead white, 𝅆, is also a type of square, although horribly tiny and quite far down. < 1238458455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Those are not squares here. < 1238458464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+ ⎕ - ⌷ < ☐ >  ⃞ , □ . ◻ < 1238458466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :We need two more < 1238458487 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The square notehead should at least be a square, though. Oh well. < 1238458523 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think my not-found char is a box with a relevant symbol inside < 1238458565 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There is in Miscellaneous Mathematical Symbols-B block a "squared square", but it's not in my font. It would look like ⧈ though. Here it just renders as a box with "29C8" in it. < 1238458576 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: ah, TAG is _not_ an acronym, you evil scum :D < 1238458577 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: U+E00xx contains copies of 95 basic ASCII characters as "TAG" versions. Meant for language tags. < 1238458603 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: wu < 1238458604 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :t < 1238458621 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :So U+E0030 is TAG DIGIT ZERO. < 1238458639 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I think I didn't yet say white small square ▫ and white rectangle ▭. < 1238458643 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :And U+E0041 is TAG LATIN CAPITAL LETTER A < 1238458666 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+ ⎕ - ⌷ < ☐ > ▫ , □ . ◻ Replaced the troublesome compiler. still 2 t o go < 1238458709 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Why not white rectangle? Or doesn't that show up either? < 1238458718 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: so is there a YOU ARE IT character to end a sequence of those? :D < 1238458774 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Well, there's also LANGUAGE TAG (U+E0001) and CANCEL TAG (U+E007F). < 1238458819 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but nothing at the end? < 1238458830 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :how buring < 1238458885 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I have a bad feeling I'm running out of completely featureless boxes. There are things that are almost boxes (like square lozenge ⌑, white trapezium ⏢, the old flatness ⏥, the rather hash-like viewdata square ⌗) and all kinds of squares with little bits of ink in them, but I haven't seen real squares in a while. < 1238458905 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Unless you count the drop-shadowed squares? ❏❐❑❒ < 1238458929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"e ⌗)" < 1238458933 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's an octothorpe < 1238458936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1238458949 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :No, it's a viewdata square. Hey, there's "square" in the name. < 1238458949 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: What codepoints do those musical box-looking characters have? < 1238458979 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: Around U+1D100 and above. < 1238459009 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :1D126 for drum clef-2, 1D15A for cluster notehead white, and 1D146 for square notehead white. < 1238459175 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hangul mieum is also quite squareish, ㅁ, but there's a bit of line sticking out. Same goes for katakana letter ro, ロ. Kangxi radical enclosure ⼞... did I already mention white large square and white very small square? They are ⬞ and ⬜. < 1238459206 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1238459219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+ ⎕ - ⌷ < ☐ > ▫ , □ . ◻ [ ⬞ ] ⬜ < 1238459222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey, those are BLACK < 1238459224 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :when zoomed in < 1238459226 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for me < 1238459228 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm maybe not < 1238459245 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You never said why the white rectangle ▭ was not to your tastes. < 1238459250 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But whatever. :p < 1238459256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :too rectangly < 1238459262 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :too distinguishable from the others < 1238459313 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, okay. There's white vertical rectangle, ▯, too. That's quite close to that apl squish quad. < 1238459340 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Feel free to mix-n-match. The very small square is here quite distinguishable too, since it's so, well, small. < 1238459348 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :□⬞◻□⬜ < 1238459352 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :↑ cat < 1238459391 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Heh, it's not black, it’s a square with white/black diagonal crosses and a border saying, on top and bottom: UNDEFINED, and on the sides: left 0000 and right FFFF < 1238459407 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Took a looooooot of zooming to see that. < 1238459464 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think I'll do some sleeping, but have a boxy night. < 1238459497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :☺ < 1238459558 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I looked through sample characters for U+1D1xx. Only U+1D126 and and U+1D146 are rectangles. < 1238460612 0 :neldoret1!n=user@81-223-127-237.stpeter.xdsl-line.inode.at JOIN :#esoteric < 1238460661 0 :neldoreth!unknown@unknown.invalid QUIT :"Reconnecting" < 1238466250 0 :GregorR!unknown@unknown.invalid QUIT :"Leaving" < 1238469572 0 :GregorR!n=gregor@65.183.185.209 JOIN :#esoteric < 1238470464 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1238470629 0 :Sgeo!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1238470830 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1238472290 0 :GreaseMonkey!n=gm@unaffiliated/greasemonkey JOIN :#esoteric < 1238475758 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1238480004 0 :Sgeo!unknown@unknown.invalid QUIT :"Leaving" < 1238482121 0 :Slereah!n=butt@ANantes-259-1-18-8.w92-135.abo.wanadoo.fr JOIN :#esoteric < 1238482495 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Claim: Every possible meaning can be expressed as the limit of an infinite sequence of phrases in English. < 1238482536 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Stupid claim: Every possible infinite sequence of phrases in English has a limit that is a meaning. < 1238483206 0 :Slereah_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1238486067 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :how do you do foo ? bar : baz; without any branches? < 1238486200 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :In some specific cases, conditional instructions might help. Though if you just have a cmov, you'd almost have to evaluate both bar and baz since you don't know which value will be used as the result. < 1238486214 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :In which case it's not really a ?:. < 1238486233 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :or even foo ? 1 : 0; < 1238486282 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, that you can do with a "mov resultreg, 0; test foo; cmov resultreg, 1" style of thing. < 1238486340 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Obviously with more sensible instructions. I'm sure AnMaster will soon comment with the most optimal way of zeroing a register; all I know is the canonical xor thing. < 1238486390 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :gcc compiles foo ? bar : baz; with a jump, but foo ? 1 : 0 without < 1238486399 0 :clog!unknown@unknown.invalid QUIT :ended < 1238486400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1238486443 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If bar and/or baz have side effects, I don't see how you could do it without a branch, since you really need to avoid evaluating the "wrong" thing, and that's almost by definition a branch there. < 1238486464 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe if you had condition codes for more than just move instructions, though. < 1238486481 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :well, yeah < 1238486598 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, xor is the best way on x86 certainly < 1238486615 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well iirc sub %reg,%reg may also work on some x86 models < 1238486620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the same way I mean < 1238486675 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :xor %reg,%reg is what I would recommend anyway, most modern x86 CPUs treat it specially when it comes to register dependency stuff in out of order execution < 1238486695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it knows that xor on itself doesn't depend on the current value of the register < 1238486755 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I guess for foo?1:0 you'd actually want something like "xor %eax, %eax; ...; SET?? %al" to avoid having to put the number 1 somewhere for cmov. < 1238486953 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You might want to use 'mov reg, 0' if you want to preserve flags < 1238487000 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :({ typeof(bar) blah[2]; blah[0] = bar; blah[1] = baz; blah[foo?1:0]; }) < 1238487038 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :or in lieu of obfuscated C, bar*foo+baz*!foo... < 1238487059 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :ooh, that should be bar*!foo+baz*!!foo < 1238487072 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: huh? < 1238487095 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :i'm just kidding FYI < 1238487169 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :oh you can do it like this < 1238487178 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :though i have used such expression once... < 1238487190 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Unca Linus says cmov is bad for you, though: http://ondioline.org/mail/cmov-a-bad-idea-on-out-of-order-cpus < 1238487206 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :x = x & 0xFFFF | (x >> 16) < 1238487208 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Of course P4 is not very modern nowadays. < 1238487217 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :x = x & 0xFF | (x >> 8) < 1238487227 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :x = x & 0xF | (x >> 4) < 1238487240 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1238487260 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, although most would write that !!foo and not foo?1:0. < 1238487284 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :wtf is !!foo < 1238487295 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's pretty much the same thing. < 1238487300 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :that's cheating < 1238487311 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Forces foo to be 0 or 1, depending on the truthfulness. < 1238487321 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!!foo is cast(bool)foo < 1238487339 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Makes me wonder how it's compiled, actually. < 1238487373 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Depends on whether the compiler optimizes it by default or not. With any -O I suspect it's equivalent to a cast. < 1238487405 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :with -O3 it's the same as foo?1:0 < 1238487406 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"xor %eax, %eax; test %edi, %edi; setne %al; retq" is what GCC here made out of int main(int argc, char *argv[]) { return !!argc; } < 1238487428 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Without optimizations? < 1238487431 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :that's odd, i got something different < 1238487434 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :With -O3. < 1238487449 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Does it do a double-not without? < 1238487461 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe a sete followed by a not < 1238487481 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :With -O0 it's.. "cmpl $0x0,-4(%rbp); setne %al; movzbl %al,%eax;", discounting some stack-handling. < 1238487522 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, it prefers xor followed by set to set followed by movzx. < 1238487638 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That was for x86-64, of course, which gets parameters in registers and all that fluff. "-O3 -m32" generates "xor %eax,%eax; cmpl $0x0,(%ecx); setne %al;" with some messy stack stuff. < 1238487654 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm sure I could get some other sequences with suitable -march= flags. < 1238487661 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :() is dereferencing in AT&T parlance? < 1238487690 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think so, yes. There's a lea ...,%ecx somewhere up there. < 1238487701 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alternatively, just use -masm=intel ;-) < 1238487735 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Actually I'm using gcc -c + objdump -d, which is the silly way. :p < 1238487751 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :So it's something like "-M intel". < 1238487764 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :-Mintel would have been my guess, yes. < 1238487797 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does not know any assembly < 1238488115 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Some architectures have condition codes for almost all instructions. ARM most prominently, there's a four-bit field for condition code for all instructions, although I seem to recall that there were quite a lot of "special" instructions using some illegal condition code (0b1111, I think) that did rarely useful things. < 1238488429 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238488446 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :but arms don't have branch prediction < 1238489295 0 :tombom!i=tombom@wikipedia/Tombomp JOIN :#esoteric < 1238493680 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"X-Chat -> http://xchat.org <- At least when I quit I don't look like a lamer" < 1238501445 0 :ais523!n=ais523@147.188.254.128 JOIN :#esoteric < 1238501480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just to annoy all the autoconf-haters out there, I'm working on porting C-INTERCAL to K&R C < 1238502427 0 :neldoret1!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1238502755 0 :MizardX-!i=MizardX@92.254.128.248 JOIN :#esoteric < 1238503030 0 :MizardX!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1238503049 0 :MizardX-!unknown@unknown.invalid NICK :MizardX < 1238503084 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hi < 1238503089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm just about to make a cfunge release < 1238503096 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :atm the server hosting bzr is down < 1238503100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :datacenter issues < 1238503118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :someone was digging in the street outside and managed to dig off the cable it seems. < 1238503126 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1238503127 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so the bzr bit will be a bit out of date atm < 1238503141 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw is it vectorize or vectorise in UK English? < 1238503159 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err... oh dear, you've hit the -ise vs. -ize debate < 1238503168 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, UK English... < 1238503170 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the correct answer is that nobody can remember, so using either will work < 1238503181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for the really correct answer, I suppose you could look it up < 1238503182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I thought z was US and s UK? < 1238503188 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not that simple nowadays < 1238503192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1238503194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the two languages got muddled < 1238503309 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :en-GB-oed for the win: -ize it is. < 1238503337 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I used s and commited and tagged now < 1238503338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so too late < 1238503348 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :now to upload to sf.net < 1238503383 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The rationale is that it comes from Greek 'izare' (modulo the Latin alphabet) and is also pronounced like a z < 1238503413 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. it's wrong in every possible way ;-) < 1238503417 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :-ise, that is < 1238503437 0 :Hiato!n=1@dsl-245-1-23.telkomadsl.co.za JOIN :#esoteric < 1238504428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1238504430 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Submit my news to the Slashdot.org Firehose" < 1238504432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what does that mean < 1238504442 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when submitting a news for the project on sf.net < 1238504445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, any idea? < 1238504455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the firehose is the list of things that happen on slashdot < 1238504461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so stories, submissions, comments, etc < 1238504469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so should I select it or not? < 1238504478 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if your news ends up in the firehose, then the editors might decide to put it on slashdot's front page < 1238504480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you may as well < 1238504488 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is a rather dry release announcement... < 1238504490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's no chance it'll happen, of course, but it would be incredibly funny if it did < 1238504502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Today (2009-03-31) cfunge 0.4.0 was released. This release add support for some more fingerprints (DATE and NCRS), speed up execution quite a bit, and fixes several bugs. Cfunge now needs cmake 2.6 to build (previously cmake 2.4 also worked). See ChangeLog for more details." < 1238504533 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, http://slashdot.org/firehose.pl?op=view&id=3967171 < 1238504534 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238504543 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION mods it up < 1238504545 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just because I can < 1238504547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1238504552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you are a mod on there? < 1238504560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1238504562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*shrug* < 1238504593 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also the submitting user looks odd < 1238504603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait sf.net and slashdot have same owner right? < 1238504609 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1238504609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait,* < 1238504614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so can I use same login? < 1238504622 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, anyone who's been on slashdot for long enough (about 6 months) is a mod some of the time < 1238504625 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's determined at random < 1238504635 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh? < 1238504635 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you can mod the firehose even if you aren't a mod for the main page at that particular moment < 1238504642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how odd < 1238504647 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :random mods < 1238504650 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that sounds like a bad idea < 1238504657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, it certainly creates a lot of debate < 1238504667 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's also the whole meta-moderation stuff. < 1238504682 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Every now and then you get to rate some ratings. < 1238504705 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, full changelog at https://sourceforge.net/project/shownotes.php?release_id=672353&group_id=221310 incase you didn't see it before < 1238504710 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Or can you metamoderate whenever? Anyway. < 1238504717 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can metamod whenever < 1238504726 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"How often can I M2? Several times per day (we adjust this slightly sometimes, to keep M1 and M2 in balance)." < 1238504729 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1238504729 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :meta-meta-mod would be funny < 1238504730 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just the link for doing it comes up at random < 1238504737 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :M1 and M2? < 1238504742 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :M1 = moderation < 1238504746 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :M2 = metamoderation < 1238504747 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where you moderate moderations < 1238504756 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if a person's moderations get modded down too often, they can't moderate < 1238504762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238504770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you should be able to mod metamods too < 1238504781 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1238504785 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :infinite moderation recursion < 1238504794 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"How does M2 affect the moderator's karma? This is a fairly complicated thing. Depending on some randomness, the moderator's karma and a couple of other factors, a particular instance of meta-moderation may or may not change a moderator's karma score." < 1238504797 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Very complicated. < 1238504800 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise, you can't moderate unless your comments have been M1-moderated up more often than down < 1238504818 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's what mostly determines karma, which is basically a sum of all moderations that have happened to you < 1238504846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238504871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so ick is going to release tomorrow? < 1238504888 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll probably release a beta < 1238504891 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238504895 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm too busy to get things finalised < 1238504901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, did you figure out the profiler thingy? < 1238504903 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but having extra community input would be helpful < 1238504905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yes < 1238504907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was an utterly ridiculous bug < 1238504912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :details? < 1238504927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what happened was that I forgot to include config.h in one of the files that used the profiler information < 1238504929 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but remembered in the other < 1238504940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, I was using #ifdef and similar to work out the sizes of various things < 1238504942 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, afraid that due to the datacenter issue my hosting of your darcs repo is also down btw < 1238504948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :same server < 1238504948 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1238504953 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so's my email, for unrelated reasons < 1238504957 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238504975 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why #ifdef and not sizeof()? < 1238504989 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because it depended on the accuracy of the timer functions < 1238504994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1238504996 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if I had something that measured in nanoseconds, I wanted to use long long < 1238505000 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238505003 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if it measured only in microseconds, i used long instead < 1238505018 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so what happened was that libyuk.a thought an array was made of long longs < 1238505018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I would always use long long, wouldn't really hurt in your case < 1238505020 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A giant, snow-covered banjo. < 1238505031 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the generated program thought it was made of longs < 1238505038 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/fizzie/fungot/ < 1238505043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also what style was that fizzie ? < 1238505047 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238505061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the generated program was the one that allocated storage, so what happened was that several arrays ended up overlapping in the executable < 1238505081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no overflows you said though? < 1238505085 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The spam style; it was directly a spam Subject: header. I thought it appropriately bizarre. I *could* run my spam folder through fungot's analyzer, but it might be a bit too viagra-rich. < 1238505087 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, that's the interesting thing < 1238505098 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it turns out that the mudflap guard value was never written to < 1238505100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, yeah < 1238505103 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh? < 1238505104 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it wrote past it, but not to the value itself < 1238505123 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the amazingly high value that you saw for the GIVE UP line was mudflap's guard value at the end of the array < 1238505125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, valgrind's exp-prtcheck would have found that < 1238505134 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: but it was valid memory! < 1238505145 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes but even so. It tracks every single pointer and what object it is connected to < 1238505158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so even two objects after each other and the pointer passing would be noticed < 1238505159 0 :fungot!n=fungot@momus.zem.fi JOIN :#esoteric < 1238505160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes it is slow < 1238505167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I was using array indexing, not pointers < 1238505179 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :can valgrind really tell a[x] from b[x], where a and b are two different static arrays? < 1238505187 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the pointer's pointing to the wrong array at the time it's created < 1238505221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, exp-ptrcheck can yes, it stores what static variable is accessed first time for each instruction that, then assumes future execution of the same instruction will accesses the same one < 1238505225 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if not it reports an error < 1238505229 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, ok < 1238505231 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this means false positives sometimes < 1238505240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that would work because the program always starts at the first lien < 1238505242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*line < 1238505244 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err what? < 1238505254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it works on machine code level, so "line" doesn't matter < 1238505254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it starts by accessing the [0] element of the array < 1238505261 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it would work with [1] too < 1238505264 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, I mean the INTERCAL program starts at the first line < 1238505267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :inside right object < 1238505275 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which means that array[0] is the first element accessed, which will be in the right object even if the size is wrong < 1238505308 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway if you passed the other way, and edited the first variable later that would cause an error too, just the "should be" field wouldn't list the right one < 1238505354 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, there is more info in http://valgrind.org/docs/manual/pc-manual.html < 1238505373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :see "10.3. How Ptrcheck Works: Heap Checks" and "10.4. How Ptrcheck Works: Stack and Global Checks" < 1238505381 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also "10.6. Limitations" < 1238505391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, using long long by default would be mad < 1238505400 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to port C-INTERCAL to a compiler that doesn't understand const or volatile < 1238505407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, be aware of that it is a bit buggy in last release even. I reported some bugs that are fixed in valgrind trunk < 1238505419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, configure has checks to define them away < 1238505424 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1238505425 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also what compiler is that? < 1238505428 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bcc < 1238505431 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bcc? < 1238505432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a K&R C compiler < 1238505434 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pre-C89, even < 1238505440 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, then you can throw away all the ANSI C < 1238505446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and why are you porting to BCC < 1238505449 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has an -ansi option that runs the code through unprotoize < 1238505450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and because I can < 1238505460 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what platforms can it compile for? < 1238505467 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :8086, 80386, and 6509 < 1238505474 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :6509? < 1238505488 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :googling for bcc: < 1238505489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Blind carbon copy - Wikipedia, the free encyclopedia < 1238505491 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not sure, but the 6502 used to be popular, and similar numbers generally = similar ICs when it comes to component numbering < 1238505492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :See results for: bbc < 1238505497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, link? < 1238505499 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "bruce's C compiler" < 1238505501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238505517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*6809 < 1238505518 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whoops < 1238505521 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, can't find official homepage < 1238505530 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe it doesn't have one? < 1238505531 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and what is 6809? < 1238505540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where did you get it then? < 1238505556 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :from the repos, obviously < 1238505562 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :same place I get everything else from < 1238505589 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what repos < 1238505593 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1238505600 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Debian/Ubuntu < 1238505602 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh ok < 1238505614 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What else would have something that old? :-P < 1238505619 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1238505636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gentoo amd64 made gcc 4.3.2 stable yesterday btw < 1238505653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wasn't stable on any other platforms (including x86) last I checked < 1238505668 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, bcc will take quite a bit of porting < 1238505668 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I've got 4.3.3 apparently < 1238505672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :IIRC it even has 16-bit int < 1238505681 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :32-bit long? < 1238505681 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so do I on my arch one < 1238505685 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, must be < 1238505690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :32-bit's the minimum for long < 1238505696 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1238505738 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, 32-bit int it seems < 1238505738 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway now I'm playing around with some of the nice new features in gcc 4.3 for cfunge. Like cold sections for rarely used functions < 1238505739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a relief < 1238505741 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and such < 1238505746 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why? < 1238505752 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Probably won't be very fast arithmetic with int/longs on a 6809, then. It seems to be not that far off from 6502/6510, except that there seems to be a bit more support for 16-bit numbers. < 1238505760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because I think C-INTERCAL fundamentally assumes that int is 32-bit < 1238505768 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it shouldn't, but I think it did before I came to it < 1238505771 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, in that aspect cfunge is more portable < 1238505772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1238505774 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can combine the two 8-bit general-purpose registers (A and B) into a 16-bit register D. Or so they say. < 1238505788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I never use int or long or such where it matters, only stdint.h ones < 1238505822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I do assume char is 8 bits, I don't assume char is either signed or unsigned though < 1238505828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you're assuming the existence of stdint.h, how modern! < 1238505838 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that would be trivial to construct yourself < 1238505843 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes < 1238505851 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you can't force it on other people's program < 1238505852 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :an include with some typedefs for your local $CC < 1238505868 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL goes to the extent of passing around compile-time -D #defines just to determine whether stdint.h exists or not < 1238505870 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I suspect configure could construct one for you < 1238505890 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's buggy, it defined both uint16_t and uint32_t to unsigned int < 1238505893 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which can't be correct < 1238505908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also cfunge uses -D on command line for results from configure checks too... Since that is default for cmake unless you set up a config.h or such < 1238505911 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... unless bcc doesn't have a short, I should test that < 1238505916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it seemed to work just fine < 1238505919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no need to change it < 1238505927 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a lot easier for out of tree builds too < 1238505939 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in fact I got no clue if *in* tree builds work for cfunge any more < 1238505942 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sizeof(short)=2, that's helpful < 1238505950 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and entirely unsurprising, I've never seen a compiler set it to anything else < 1238505955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, define it as in16_t < 1238505959 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :int16_5* < 1238505961 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gah < 1238505963 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :int16_t* < 1238505987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, some systems have 32-bit char < 1238505999 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so assuming 8-bit char is probably a bad idea < 1238506002 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you want to be portable < 1238506006 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway I have seen C89 apps making their own defines based on configure checks for foo_sint32 and such (where foo is some abbreviation for the project name usually) < 1238506020 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well there is no way I can properly do fingerprints then < 1238506026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why not? < 1238506043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well not easily anyway < 1238506058 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :struct my8bittype { char x : 8}; < 1238506064 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238506070 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there, you have an 8-bit type < 1238506071 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about padding for that? < 1238506083 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's in the struct, not in x itself < 1238506092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although admittedly trying to use x will be very slow if char isn't 8 bits long < 1238506093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I mean, I don't want padding < 1238506109 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway I also depend on IEEE floats (or as much as 32-bit float and 64-bit double) < 1238506111 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well documented < 1238506116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :needed for FPSP and FPDP < 1238506135 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what about on a 40-bit system? < 1238506163 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, actually I don't depend on 8 bit char, I depend on uint8_t < 1238506172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which I think C99 requires in fact < 1238506183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it is up to the system how it does that < 1238506188 0 :Hiato!unknown@unknown.invalid QUIT :"Leaving." < 1238506199 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, it seems bcc is normally used to write bootloaders < 1238506200 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :POSIX 2008 mentions that they notice that they now require char to be 8 bits btw < 1238506202 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it generates real-mode code < 1238506208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, heh... < 1238506210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's POSIX, not ISO < 1238506220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ISO defines int8_t too in C99 < 1238506223 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so :P < 1238506224 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1238506231 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really, though, I'm porting to K&R C < 1238506236 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and cfunge needs POSIX anyway. So I'm quite safe. < 1238506245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I spent last night removing C99isms from the C-INTERCAL coe < 1238506246 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what do you think of this btw: < 1238506247 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*core < 1238506247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : __builtin_ia32_movntps(((float*)(void*)&cfun_static_space) + i*4, < 1238506247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : *((const v4sf*)(const void*)&fspace_vector_init)); < 1238506249 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(although not from IFFI) < 1238506259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about the safe vsnprintf thingy? < 1238506261 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I hope you have falbacks < 1238506267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, duh of course < 1238506268 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I fixed a bug in it < 1238506274 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it works on SPARC after all < 1238506276 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and non-GCC < 1238506279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you were referencing iyylineno, even though it wasn't declared anywhere < 1238506290 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I were? huh < 1238506304 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it sounds like some yacc thingy < 1238506306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or maybe lex < 1238506326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yylineno is an undocumented feature of bison that C-INTERCAL used to rely on < 1238506330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I remember cleaning up in the flex/yacc thing < 1238506338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, aha < 1238506342 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I felt that relying on undocumented features was a bad idea, especially as it had caused bugs in the past < 1238506348 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238506350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so iyylineno does the same thing, but is calculated by hand < 1238506352 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :uint8_t is optional in C99. "The typedef name uintN_t designates an unsigned integer type with width N. ... These types are optional. However, if an implementation provides integer types with widths of 8, 16, 32 or 64 bits, it shall define the corresponding typedef names." < 1238506355 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I see < 1238506374 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: yep < 1238506382 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :uint_least8_t is manadatory though, IIRC < 1238506397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I depend on both signed and unsigned u?int(8|32|64)_t at least, not sure about the 16 bit case < 1238506431 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :see, there's no love for 16 bit systems nowadays < 1238506431 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, u?int_least{8,16,32,64}_t are all mandatory. The fixed-width ones are all very optional. < 1238506454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and really, since I require POSIX.1-2001 with the mmap option anyway int8_t will most probably exist. < 1238506470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, the asm generated by bcc is beautiful < 1238506490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :standard real-mode x86 stuff, it looks just like the asm I used to work with back on DOS < 1238506507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it even uses decimal points to mark numbers as decimal, I haven't seen an asm format do that since the PIC < 1238506558 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, that's what the -3 option does, it makes the code 32-bit < 1238506560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well I might depend on it. But at least on x86_64 (AMD K8 implementation) the 32-bit and 64-bit variants are usually equally fast in cycle count, 32-bit using less memory bandwidth, cache and "pipeline stuff" though, 8 bits is still quite fast, but 16 bits tends to be slower < 1238506561 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw < 1238506563 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no wonder my code wasn't running without it < 1238506568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :GCC 4.3 supports fixed point < 1238506573 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :only on MIPS yet though :/ < 1238506599 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, decimal points? < 1238506602 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in asm? < 1238506603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err what < 1238506614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I don't know how floats are encoded in asm < 1238506625 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, they're used for integers < 1238506629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to mark them as decimal < 1238506632 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :12. = decimal 12 < 1238506635 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :12 = hex 12 < 1238506637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238506638 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*.12 = decimal 12 < 1238506638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that decimal < 1238506639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238506657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and floats in asm work the same way as floats in C, or in anything else really < 1238506661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :decimals also means "the bit after the ." (or is that a Swedishism?) < 1238506665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the assembler converts them into hex < 1238506672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, it means that in English too, but only in the plural < 1238506676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"decimal" = base 10 < 1238506680 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"decimals" = fractional part of a number < 1238506693 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, en decimal (a decimal) is correct for one number after the dot in Swedish < 1238506714 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in 3.14 containing two decimals < 1238506724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what would you say in English there? < 1238506725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238506744 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"decimal places" < 1238506747 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The noun decimal has 2 senses: 1. decimal fraction, decimal -- (a proper fraction whose denominator is a power of 10) 2. decimal -- (a number in the decimal system); ... adj decimal ... 1. decimal, denary -- (numbered or proceeding by tens; based on ten; "the decimal system") < 1238506748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw what do you think of this: < 1238506749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :static funge_cell cfun_static_space[FUNGESPACE_STATIC_X * FUNGESPACE_STATIC_Y] < 1238506749 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :often abbreviated to d.p. < 1238506750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#ifdef __GNUC__ < 1238506750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :__asm__("cfun_static_space") < 1238506750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#endif < 1238506750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FUNGE_ATTR((aligned(16))) < 1238506751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :; < 1238506769 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what's the __asm__ for? < 1238506792 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Defining a label? < 1238506792 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, asm name. Otherwise I get undefined refs when doing movntps %%xmm0,0x10+cfun_static_space(%%rax) and such < 1238506803 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well depends on compile time options < 1238506804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238506811 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it works anyway in -O0 and normal -O3 < 1238506816 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just not with -combine -fwhole-program < 1238506817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1238506834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(yeah I'm crazy, we established that by now I think, right?) < 1238506870 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's always fun when you do stuff that means you have to care about your optimizer options < 1238506902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you should download http://downloads.sourceforge.net/cfunge/cfunge-0.4.0.tar.bz2 and make sure it works with IFFI now < 1238506904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just in case < 1238506913 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes. < 1238506928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: IFFI still isn't integrated into the build system < 1238506946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really, you just need to install the library to the right place < 1238506994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238507002 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I remember make install copying it+ < 1238507010 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that was an old version < 1238507014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238507017 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it should be just a quick fix < 1238507023 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, in that case I hope it still works < 1238507025 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I need a modern cfunge to test that part of the build < 1238507031 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because when I fixed IFFI I assumed it did < 1238507033 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I'll grab that < 1238507034 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway see that link then < 1238507041 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-027-168.hsi2.kabelbw.de JOIN :#esoteric < 1238507731 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw until the datacenter issue is fixed (which looks like it can take some time) https://code.launchpad.net/~anmaster/cfunge/speedup is the feature branch I'm working on < 1238507742 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION waits for jokes about the branch name < 1238507754 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't even need to make the joke, it's too obvious < 1238507761 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :do you have stability and security branches too? < 1238507805 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: launchpad? ugh < 1238507864 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, good code hosting though < 1238507866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for bzr < 1238507883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I always have 98% code coverage before releasing < 1238507902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the remaining 2% is mostly code handling "failed malloc" < 1238507906 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does code coverage mean in that case? < 1238507907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is non-trivial to test < 1238507924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: are you using glibc? < 1238507930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, line coverage as measured by gcov after running mycology and various other test suites < 1238507945 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :add a malloc hook that prompts the user whether to do the allocation or not < 1238507946 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, branch coverage is usually around 97% < 1238507955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, err what? < 1238507967 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also I'm using glibc on some systems. FreeBSD libc as well < 1238507969 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1238507972 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: by defining functions with certain names, you can affect the behaviour of glibc malloc < 1238507993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I might use optimised variants for GCC or whatever, but I always have pure C + POSIX fallbacks < 1238508037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also I don't really malloc a lot, a few hundred mallocs during the execution of mycology iirc. Let me profile with callgrind to check call count. a sec < 1238508226 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok around 500 malloc calls when running mycology, 27 from other parts of glibc itself. T < 1238508252 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :most is due to having to copy the stacks used for fingerprints ops when doing t < 1238508262 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :260 is due to fingerprint stacks being copied < 1238508274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... is that inefficient? < 1238508282 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :do you store fingerprint stack as a linked list, or as an array? < 1238508287 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a stack can sensibly be stored as either < 1238508292 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, array that I realloc when needed < 1238508293 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but array plus realloc is probably faster < 1238508307 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, you have one for each letter < 1238508313 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's why you need so many malloc calls < 1238508315 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes I need that < 1238508319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :due to the specs < 1238508326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, you know you have exactly 26 letters < 1238508331 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, loading and unloading out of order is allowed < 1238508334 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and have to work < 1238508339 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mightn't you store the stacks all in the same array, using every 26th element < 1238508345 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and keep 26 pointers into the array? < 1238508349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :interesting idea < 1238508352 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, indexes < 1238508361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that means less allocing's going on, and you still have the separate stacks < 1238508368 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :malloc overhead is rather small here though < 1238508371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :uses slightly more memory, but it's probably faster as one big allocation's faster than 26 small ones < 1238508380 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but worth considering < 1238508408 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, pushing env in y is what takes most time though < 1238508428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and yeah it is rather optimised, to make it faster I would need to make stack grow down instead < 1238508435 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which means I couldn't use realloc < 1238508441 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does the env change over the course of the program? < 1238508448 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it could if I implement EVAR < 1238508451 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1238508453 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but yes I considered caching it < 1238508455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering about memoizing it < 1238508467 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ env | wc -c < 1238508468 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5350 < 1238508468 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because after all, y is often called more than once < 1238508502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I don't push if I can avoid it. As in I map numbers to the cells that would be returned for those with fixed numbers < 1238508508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like the low ones < 1238508516 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :makes sense < 1238508568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and I push on a temp stack (allocated once per program run and then reused) when not pushing everything. I do need to re-push yes since some things can change, but I could probably optimise that more < 1238508576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and well if I don't implement EVAR... < 1238508638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :stack_push_string was called 38111 times during an execution? hum... Oh wait.. y duh < 1238508648 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is called a lot in HRTI < 1238508656 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to add a time delay to test with < 1238508672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(without HRTI mycology is a lot faster btw) < 1238508701 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You think cfunge is too fast? Try running stuff through http://iki.fi/deewiant/files/befunge/programs/slowdown.b98 < 1238508713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ? < 1238508724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what is that about? < 1238508726 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You seem to be running into some kind of speed limits < 1238508733 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That should place them a bit further away < 1238508737 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes bit what is that program good for? < 1238508742 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and what does it do < 1238508747 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's good for slowing down Befunge interpreters < 1238508753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is it written as a worst case for cfunge or something? < 1238508762 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, for any interpreter < 1238508781 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :CCBI chokes on it just fine < 1238508787 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Haven't actually tried cfunge < 1238508788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wow the link opened in kate. When I tried to safe it to a file it then said it "unknown error when trying to save to http://iki.fi/deewiant/files/befunge/programs/slowdown.b98" < 1238508790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that's silly < 1238508822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you want save as < 1238508834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes but saving to url doesn't even make sense < 1238508836 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :cfunge chokes as badly as CCBI on Mycology, unsurprisingly < 1238508837 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :clearly you aren't going to be able to save to someone else's website, Deewiant probably hasn't implemented HTTP PUT < 1238508844 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :of course it makes sense, just nobody implements it < 1238508846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, chokes on mycology? < 1238508850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean < 1238508852 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: When run through that < 1238508856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, usage? < 1238508857 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Try it and watch your CPU burn < 1238508863 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Pass it a filename. < 1238508868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what about memory usage btw? < 1238508892 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Beats me, probably not much worse than normally < 1238508921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it is fast up until "GOOD: p modifies space" < 1238508921 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: you're writing to the path of the IP in the loaded file, to slow it down every command? < 1238508923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when it slows down < 1238508932 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Nope < 1238508936 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what are you doing then? < 1238508937 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yep, that's wraparound < 1238508948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :are you interpreting befunge? < 1238508963 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, that's not a befunge-98 interpreter :-P < 1238508971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how do you slow down then < 1238508972 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, it is in some way < 1238508973 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just wondering < 1238508988 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Because a Befunge-98 interpreter written in Befunge-98 is actually quite trivial to write < 1238508989 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION runs it under calgrind for even slower speed to see what is going on < 1238509011 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you write to far out funge space I see < 1238509013 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So I guess that actually is a Befunge-98 interpreter, now that I think about it < 1238509019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: you're copying each element of the other program to the IP's path in yours, to step through it? < 1238509021 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since the main time is spent in hash calculation < 1238509034 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Nope < 1238509071 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :36.397 % is spent in ght_crc_hash (yes I profiled several hash algorithms, and suprisingly crc ended up with overall fastest result of those I tested) < 1238509072 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's nothing clever really, it's just a bit targeted against the way interpreters tend to implement Funge-Space < 1238509086 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how do you do it I asked. < 1238509090 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Care to describe? < 1238509096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: you're moving the target program in fungespace every now and then? < 1238509102 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Just once. < 1238509108 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, to negative fungespaec? < 1238509111 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*fungespace? < 1238509119 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well negative funge space isn't that slow for me < 1238509120 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1238509121 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I ask y for the cell size and generate a random number in the full range a cell can be, then copy the program there < 1238509126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wrapping would end up like that < 1238509130 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Do some cleanup and then jump there < 1238509136 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that isn't fair, this build is 64-bit! < 1238509146 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which slows down cfunge a bit because it gets out of its static array < 1238509152 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And it slows down everything a crapload because wraparound takes forever. < 1238509158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1238509167 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, do you replace it all with spaces in the original area? < 1238509171 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes. < 1238509174 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1238509176 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then I have an idea < 1238509177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1238509187 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Solve mycoedge and you can probably speed that up to 'normal' speeds. < 1238509192 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: how do you handle g and p? < 1238509199 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Sets the storage offset < 1238509201 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I planed to update bounds if needed in y though < 1238509207 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's exactly what I meant. < 1238509216 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, wrapping bounds wouldn't update except when y was called though < 1238509219 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in my idea < 1238509227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but wrapping bounds would be updated on the fly then < 1238509230 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: storage offset? is that in a fingerprint? < 1238509238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no < 1238509239 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: No, it's in the spec, it's what g and p are relative to. < 1238509244 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it is in code with { < 1238509246 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I didn't know about that < 1238509247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :core* < 1238509257 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought { just messed with the stack stack < 1238509265 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: When you push a new stack on the stack stack, the location of the instruction following the { becomes the storage offset. < 1238509286 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It pushes the old storage offset on the stack below, and } pops it back so as to reset it. < 1238509293 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and with some hacks using u to transfer to the stack below you can change it < 1238509299 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to set a different offset on first stack < 1238509301 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hardly a hack IMO. :-P < 1238509317 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But yes, u allows transferring stuff between the top two stacks so you can set the storage offset to whatever you want. < 1238509328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that's two extra additions for every g or p access! :( < 1238509328 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :0{02-u0}$$ I seem to have written once; I'm not sure if that's tested, though. < 1238509352 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, why not a plain n after, it is faster;P < 1238509357 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: 01g11g0{2u0} < 1238509373 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Where 01g and 11g are just the new offset < 1238509384 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Don't you need -2 in u? Maybe I got the directions mixed, then. < 1238509391 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :-2 goes the other way < 1238509429 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw my { and } are very fast. Doing fast memcpy() to copy between SOSS and TOSS < 1238509453 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with some code to handle the zero filling of course < 1238509471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Breaking the stack abstraction makes the instruction pointer cry :'-( < 1238509476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, this didn't affect mycology I remember, but some other app. Maybe it was fungot, maybe it was something else < 1238509476 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what's yours? < 1238509485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, err it is in the stack code < 1238509494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :static to stack.c < 1238509495 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1238509503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that implements both stack and stack-stack < 1238509511 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so I don't see what you mean < 1238509529 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes you did or you wouldn't have rebuked it < 1238509550 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I see what you mean if I would have exposed this outside stack code < 1238509562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I have this in stack.h: < 1238509562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bool stackstack_begin(struct s_instructionPointer * restrict ip, < 1238509563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : funge_cell count, < 1238509563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : const funge_vector * restrict storageOffset); < 1238509568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bool stackstack_end(struct s_instructionPointer * restrict ip, < 1238509568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : funge_cell count); < 1238509570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :void stackstack_transfer(funge_cell count, < 1238509570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : funge_stack * restrict TOSS, < 1238509570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : funge_stack * restrict SOSS); < 1238509576 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, right, you're doing it *that* way. Right. You need -2 there if you enter the new values inside {}. Didn't think of just slurping the real old storage offset away with u, and letting the } get rid of all the cruft as a side effect. Nice. < 1238509591 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, basically I don't break the abstraction there < 1238509621 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, those aren't exactly functions intrinsic to stacks :-P < 1238509663 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I have string push and pop for stacks too, and stack_push_vector, and stack_strlen (helps for STRN) < 1238509677 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::'-( < 1238509703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, internally many of them doesn't actually treat it as a stack, instead doing stuff like asserting that there is enough pre-allocated space on the stack and then just bulk copying < 1238509712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :asserting doesn't mean assert() here < 1238509720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but rather stack_prealloc_space < 1238509749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : stack_prealloc_space(stack, len + 1); < 1238509749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : { < 1238509749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : const size_t top = stack->top + len; < 1238509749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : for (ssize_t i = len; i >= 0; i--) < 1238509749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : stack->entries[top - (size_t)i] = str[i]; < 1238509750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : stack->top += len + 1; < 1238509752 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : } < 1238509757 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the const thing there helps GCC optimise < 1238509758 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238509783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I looked at the relevant asm code with and without that const < 1238509785 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm surprised it can't figure out that it's constant by itself < 1238509807 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it couldn't in 4.1.2 at least. Haven't checked since I upgraded the compiler < 1238509858 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, basically I think the alias analysis had been hit by a thrown potion of confusion or something... < 1238509871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even adding restrict to various places didn't help < 1238509872 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: what is mycoedge? < 1238509872 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my copy of Mycology's very old, I should get a new one really < 1238509883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not released I think, since CCBI fails it < 1238509889 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's something I worked on for about 15 minutes and haven't bothered to finish < 1238509915 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that still doesn't explain what it is < 1238509918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, do you have a zero-copy STRN N? < 1238509918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or will be, when it's finished < 1238509922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238509936 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The point is to check that y always reports the tightest bounds for Funge-Space < 1238509952 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, cfunge also fails it yes. < 1238509968 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Everything apart from hsfunge fails it, and that's unavailable anywhere < 1238509977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, pyfunge manages it iirc < 1238509984 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: does y's report shrink if you space out the edges of funge-space? < 1238509986 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, right, he said something like that < 1238509992 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also I may have an old copy of hsfunge around iirc < 1238509993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure < 1238509994 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Not in most interps < 1238510000 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :should it? < 1238510001 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which was the whole point < 1238510002 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It should < 1238510006 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ls ~/funges/interpreters/hsfunge < 1238510006 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Eval.hs Fingerprints.hs FungeSpace.hs FungeVal.hs GetSysInfo.hs IP.hs Main.hs < 1238510007 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ^ < 1238510011 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :couldn't build it < 1238510016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gave some error iirc < 1238510017 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Even jitfunge has zero-copy STRN N. < 1238510026 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, iirc ccbi doesn't < 1238510035 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Admittedly I don't much have a stack "abstraction" there. < 1238510036 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What is 'zero-copy STRN N' < 1238510048 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Something that doesn't just do pop + strlen. < 1238510054 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, as in do the length check on the stack, instead of popping, strlen and pushing back < 1238510068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but zero-copy sounds a lot cooler ;P < 1238510072 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I probably don't do that < 1238510090 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I maintain the stack abstraction so that my instruction pointers may smile all day long < 1238510116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you have push_vector though iirc < 1238510119 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't you? < 1238510127 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's a helper function separate from stack < 1238510130 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238510130 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not in the same module < 1238510169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also I remember a string pushing one < 1238510178 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Also a helper function < 1238510189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway since string pushing is done so often you really gain a lot in mycology if you implement that as fast as possible < 1238510198 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Nothing in stack.d is aware of befunge except for the pop-zero-on-empty < 1238510224 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, don't you have a clear function though? < 1238510238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that sets top index to 0 < 1238510263 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's just pop(size) < 1238510268 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway I do abstractions where it is useful. That is against other code outside the stack module. < 1238510288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that sounds like my stack_discard(stack, n) < 1238510294 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pop just pops one cell here < 1238510306 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :GLfunge98 borders, as reported by y, aren't really good either. They probably don't shrink, and they're rounded up to a multiple of 64 anyway, since the funge-space is a curious list of 64x64-sized blocks, with direct pointers to a 16x16 region of those blocks for a bit faster usage. < 1238510317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw does FPDP define that it will take two cells at all? < 1238510324 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes it does < 1238510328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hrrm < 1238510336 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe not actually < 1238510350 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That might have been one where I had to check what RC/Funge does to figure out how it could possibly work :-P < 1238510352 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, that's weird < 1238510356 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :isn't glfunge98 buggy in other ways? < 1238510358 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, some kind of octtree? < 1238510365 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or quadtree I guess < 1238510367 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it is 2D < 1238510400 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's not really that either. It would be very very slow for those not-in-the-16*64-range coordinates. < 1238510404 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And it's buggy in very many ways. < 1238510421 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It can't even load Mycology without crashing :-) < 1238510442 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, yes, well, I'll concentrate on jitfunge if I ever have time for befunge-implementing any more. :p < 1238510445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, not defined I think < 1238510450 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :B (n -- n) Sin of double precision fp number < 1238510458 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that implies it could be one or two < 1238510472 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I might change it to be one in 64-bit cfunge < 1238510486 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it would make it faster in mycology I think ;P < 1238510493 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it shouldn't break anything either < 1238510502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since I follow the fingerprint spec < 1238510539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, right? ;P < 1238510546 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And it won't < 1238510555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it wont' work? < 1238510559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wont* < 1238510561 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Won't break anything < 1238510706 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Heh, slowdown.b98 takes a hello world to around 0.1s in CCBI < 1238510723 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: seems to be found another bug in mycology... heh. < 1238510732 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: Oh, which one? < 1238510734 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That FPDP is almost like Java VM with double and long values; it also uses two slots in the constant table, and special instructions like dup2 -- "Duplicate the top one or two operand stack values" -- which is specified as "..., value2, value1 → ..., value2, value1, value2, value1" when values are "of category 1", and "..., value → ..., value, value" for category 2. < 1238510734 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, details? < 1238510758 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, huh? < 1238510761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238510777 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how do you know how much to pop in FPDP then? < 1238510781 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I remember you mentioning this before < 1238510788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when I talked about FPDP in efunge < 1238510795 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Bloody cfunge with its static array, being able to run a slowed-down helloworld in 0.01s < 1238510808 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Would I need to know how much to pop anywhere? < 1238510810 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which would be internally stored as a tagged tupple < 1238510812 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, AnMaster: see line 381 (y=380 in funge space), w and < in above & below line should be aligned but they are not < 1238510832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, my dynamic funge space is rather fast too, I mean not as fast as the static area, but still quite fast. < 1238510846 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: Right you are < 1238510848 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can always just I$ to discard a floating-point, no matter whether it's two stack cells or one. < 1238510850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, fungot routinely uses the dynamic area when running underload for example < 1238510850 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: tk looks awful everywhere;. good scheme systems provide it ( and the numbers on the fields of the three very distinct concepts. < 1238510878 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Sure, but I suspect that that's the main reason for the difference; alternately it's y < 1238510879 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^style < 1238510879 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft nethack pa speeches ss wp < 1238510899 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, slowdown would move way outside the static area anyway < 1238510903 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I saw that when I profiled < 1238510907 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :well, i was fixing TOYS fingerprint and touched the bug... :p < 1238510920 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, but it needs to fill the original area with spaces < 1238510920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and I'm trying to come up with a fast solution for the mycoedge case atm... < 1238510930 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"irc" style is the default one, so the recent Freenode service-break made fungot reset back to that. < 1238510931 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: but that didn't have much prostitution in korea too. :p)), there are 66 addresses but some of those key srfi proposals in the same way as block wrt shadowing of return-from when you have sane values < 1238510937 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 9000-cell-loop, pushes thousands of cells on stack to set up a kp < 1238510940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes that would be rather fast. Is it slow under ccbi or something? < 1238510947 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Like said, 0.1s for a hello world < 1238510947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, "kp"? < 1238510953 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: kp < 1238511006 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also 9000 cells. means around 35 kilobyte for 4-byte cells < 1238511007 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: TOYS was a bit of a pain to test :-P < 1238511011 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or doube that for 8 byte variant < 1238511015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :double* < 1238511019 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that isn't a lot. < 1238511021 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :really < 1238511031 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I wasn't talking about the stack space used < 1238511039 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, nor was I < 1238511046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I was talking about writing spaces to memory too < 1238511051 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I was rather thinking about how many iterations it takes to run through that < 1238511056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :funge space isn't on disk < 1238511061 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It's around 200k ticks < 1238511074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :200k fetches from a hashmap take a while < 1238511092 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, if you use the TOYS to memset() it could be very fast since it is implemented as a fast loop that uses "best possible cache locality order for cfunge static space" < 1238511111 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I was going to at first but then realized I don't need it < 1238511112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1238511120 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I try not to depend on a fingerprint if I can help it < 1238511120 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well it would be even faster < 1238511127 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :............. It's called slowdown.b98 < 1238511131 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's not exactly supposed to be fast < 1238511131 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :>"PXIF"4#^(>n2y8*2-2\R1-:+1+:D#v?>\D#v?>01p:11p 31g+12p 01g21g+02pv < 1238511134 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that looks like FIXP? < 1238511140 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, I think it's NULL < 1238511144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1238511151 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Since it's slowdown.b98, why are you even using such a blazing-fast method as a kp loop? :p < 1238511163 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Is there another way? < 1238511175 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's the only thing that can overwrite itself < 1238511178 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, manual >v style loop? < 1238511186 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Won't work, can't overwrite itself < 1238511190 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how do you set the delta then after it overwrote itself? < 1238511198 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't, the delta is correct < 1238511201 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1238511201 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: presumably to do self-overwriting in a few characters < 1238511204 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The kp is at (-2,0) and (-1,0) < 1238511215 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So it's heading east into (0,0) afterwards < 1238511236 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It could still be a manual loop for clearing most of stuff with spaces, and then a kp for final cleanup. But I guess that won't really make much sense. < 1238511236 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway how do you make sure delta is correct on entry of program? Lets say it 0,0 in the program is a space < 1238511240 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I was going to use TRDS to set the tick count correctly as well to make it a completely transparent process but couldn't find a way < 1238511249 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you would need a > manually just outside < 1238511250 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunate, that would have been much cooler < 1238511252 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which would break things < 1238511266 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: >kp before (0,0). < 1238511269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, aha < 1238511270 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238511270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: hah, that's genius < 1238511285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so how much do you push on stack? 2*9000 cells? < 1238511291 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is close to nothing for cfunge :P < 1238511301 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't know, let's check < 1238511310 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Fortunately I have a debugger for this kind of thing :-P < 1238511317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah that would slow me down ;P < 1238511327 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :9612 cells at tick 226223 < 1238511329 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you know you can disable the tracing code at compile time in cfunge? < 1238511333 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238511340 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :heh, it turns out that my problem (which caused the mycology bug in part) is writing "for x in xrange(size[1]-1, -1, -1):" as "for x in xrange(size[1], -1, -1):". what the heck. < 1238511367 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, as for TRDS and tick count, cfunge doesn't even track the tick count < 1238511369 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why would it < 1238511371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would slow it down < 1238511384 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Statistics are fun < 1238511388 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But yes, if you want speed, then whatever < 1238511394 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It makes a difference though < 1238511403 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :slowdown.b98 can't run mycotrds < 1238511405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I actually did track it at one point when debugging to find out when something broke < 1238511406 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was way back < 1238511411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like in the beginning < 1238511417 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then I ran ccbi's debugger to same tick count < 1238511434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(worked well before y was called, not as good after) < 1238511436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway it is simple < 1238511455 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :volatile uint64_t tick = 0; And a tick++; in mainloop < 1238511463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then just print tick in gdb < 1238511463 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :volatile? < 1238511471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why that < 1238511473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, to prevent optimising it out... < 1238511483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it could do that since the value was never read < 1238511485 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh right, you never use it < 1238511486 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1238511493 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :exactly < 1238511497 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You really should implement TRDS < 1238511504 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I estimate a 50% slowdown on all programs from that < 1238511504 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, thanks but no < 1238511512 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and that is quite possible < 1238511518 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well no, probably not < 1238511535 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no because I would have cfunge and cfunge.trds compiled with different defines then < 1238511539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait... I just got an idea < 1238511543 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's a few branches for every instruction, the predictors in modern CPUs should be able to handle them < 1238511555 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe not, in which case it might even be 50% < 1238511600 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :installing cfunge.98.64 cfunge.98.32 cfunge.98.trace.32 cfunge.98.trace.64 and so on in libexec or something, then make cfunge a small wrapper that just selected which one to use < 1238511606 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably would be slower though < 1238511610 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :due to exec overhead < 1238511678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, about compiling out tracing out or not, there is a noticeable difference on my pentium3 for it, but none on my amd64, I guess it is due to branch prediction getting better < 1238511691 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: New Mycology up < 1238511699 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :thank you! < 1238511710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what exactly does it change? I mean I saw a line number mentioned. But what test is it in? < 1238511713 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I didn't test it but they look aligned now :-P < 1238511745 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: i feel i should make Funge-98 test suite test suite... XD < 1238511746 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: If TOYS was broken some w's would end up where they shouldn't < 1238511752 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: :-D < 1238511755 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238511762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well my TOYS should work correctly < 1238511777 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Grown men, playing with their TOYS. < 1238511788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, I found a fair number of bugs in mycology while developing cfunge too < 1238511790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just FYI < 1238511809 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I found the most of all while developing CCBI ;-P < 1238511867 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm surprised at how unbuggy MycoTRDS turned out to be < 1238511883 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And fortunate ;-P < 1238511884 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :heh, < 1238511892 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: Planning on doing TRDS? < 1238511909 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :yes, but not before 0.6.0 < 1238511915 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Nice :-) < 1238511923 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Don't bash your head against the wall too much then < 1238511948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, I would recommend against it. It means changing the whole app probably < 1238511977 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :He's just saying that because he's a speed freak < 1238512019 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What, you mean he uses controlled substances? < 1238512033 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Like profilers and things like that." < 1238512040 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Indeed. < 1238512052 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1238512061 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not going to go the TRDS route in jitfunge, I presume. < 1238512068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, kernel level whole system profilers even. Like oprofile < 1238512069 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1238512081 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :has anyone tried to implement TRDS using continuations? < 1238512091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and how easy would it be? < 1238512104 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can hardly understand either < 1238512104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does D support them? Or any other language ever used to write a funge98 in? < 1238512116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, either what? < 1238512120 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :C supports them so why not D :-P < 1238512122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oprofile and continuations? < 1238512125 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't think any of them do officially < 1238512129 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: TRDS and continuations < 1238512131 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there are known hacks to simulate them in C < 1238512132 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238512137 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what about oprofile then? < 1238512140 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :do you understand it? < 1238512145 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't even know what it is < 1238512163 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, a 'kernel level whole system profiler' < 1238512179 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, kernel level profiler with low overhead, because it uses data from the performance counter thingies found in many modern CPUs < 1238512192 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So what does a 'whole system profiler' do < 1238512199 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Profile every program in the system simultaneously? < 1238512205 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well it always end up profiling every program and the kernel yes < 1238512217 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you just have to select from the collected data the part you want < 1238512253 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right < 1238512286 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, the tools are fairly good but can be hard to use correctly < 1238512314 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like, if you wrote 500 instead of 5000 for collection rate for some counters you may end up needing to use the reset button < 1238512321 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1238512324 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1238512328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hiwc < 1238512328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1238512331 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hick < 1238512346 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ick? never heard of that webcomic < 1238512353 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, that is sv for en:hiccup < 1238512371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've heard of ick, don't think it's a webcomic yet though (that would be scary) < 1238512378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, augh < 1238512402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238512440 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, when you decide to handle mycoedge correctly in ccbi, how will you do it? < 1238512457 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's one of those things I'm not going to do in CCBI 1 < 1238512466 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I haven't thought about the details much < 1238512471 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I would suggest using a FPGA and CAM to accelerate funge space :D < 1238512476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to find out the edges < 1238512481 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238512487 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Are you running things on the GPU yet? < 1238512494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no, my GPU is too old < 1238512503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also I don't think cfunge would benefit much from it < 1238512509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not that type of processing < 1238512514 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe using MPI so you can have a Beowulf cluster running Mycology? < 1238512524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1238512525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, again I think there will be a lot of overhead < 1238512533 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :would that be faster or slower than just running it on one computer < 1238512533 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hm now that + today's iwc makes me think of a cheesy cartoony INTERCAL tutorial featuring cthulhu and friends < 1238512543 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: cfunge is so fast that it'd be a lot slower < 1238512547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but if I get a dual core I may experiment with OpenMP for stuff like initial filling of funge space < 1238512554 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It'd be even slower than CCBI, probably < 1238512559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like divide the loop over several CPUs, each filling it's own part < 1238512560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ^ < 1238512561 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe even slower than Pyfunge O_o < 1238512597 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what about pushing some of the computation onto the GPU < 1238512619 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: That's what I just asked :-P < 1238512625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, as I said above, my GPU is too old to be able to do it. Also that is best for branchless stream processing < 1238512629 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but funge is very "branchy" < 1238512637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean interpreting it < 1238512650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could use the GPU to store funge-space < 1238512655 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and just use it for blitting, etc < 1238512669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why would I need blitting funge space btw? < 1238512679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :some fingerprint I assume, But which? < 1238512724 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :TOYS has a fungespace copy, doesn't it? < 1238512727 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1238512749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes but that needs to deal with area outside the static area too < 1238512777 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically the only very parallel part in cfunge is initial space filling of funge space, which with SIMD non-temporal stores is very fast anyway. < 1238512823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238512839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so anyone have good suggestions for calculating exact funge space edges for y < 1238512853 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I would definitely cache result to begin with < 1238512861 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why do you need to do initial space filling for a static array, can't you just use a private memory mapping? < 1238512864 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and invalidate cache on writing a space in an edge cell < 1238512896 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Jitfunge could try to recognize pieces of code that people commonly use when they do image processing or DSP or stuff like that with Funge-98, and then attempt to auto-vectorize those with SIMD instructions. After all, Funge-98 is so common in the DSP and multimedia world, it would make sense. < 1238512897 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that comes zero filled, I did some experiments as ehird suggested by using everything offset by 32, but that turned out slower overall < 1238512909 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait, right < 1238512911 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, haha < 1238512913 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :A file isn't square < 1238512915 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I forgot :-P < 1238512918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that too < 1238512987 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, GCC 4.3 auto-vectorizes by default at -O3 anyway. In older 4.x you had to use -ftree-vectorize, 3.x didn't support it at all < 1238513004 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge has long been optimised to allow as much vectorising as possible by both GCC and ICC < 1238513025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there are probably more places that could be vectorised, but quite a few are already done < 1238513031 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for example the TOYS sum of stack one < 1238513039 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is transformed into some SSE thingy < 1238513096 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :operating directly on stack (warning: TOYS and FRTH bypass the stack abstraction currently, there are comments about it, yes I know it isn't clean, I plan to move it into stack.c once I find a working API for the relevant operations that isn't too specific) < 1238513128 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238513135 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :about scanning edges... < 1238513164 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Funny that the sum and stack ops do all elements, instead of taking a number of elements on top. < 1238513183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about scanning every row from the upper and lower edges for a non-space, then doing same for the left and right edges < 1238513186 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :s/stack/product/, s/ops/ops in TOYS/ < 1238513193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when the bounds need to be updated for y < 1238513230 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw bashfunge wouldn't slow down because of your code (if it had implemented the needed 98 stuff at all), it had per-row and per-column ranges < 1238513237 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1238513249 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on the other hand it was 93 + a few things from 98 < 1238513254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :highly non-conforming < 1238513264 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it passed the 93 part, but not the 98 part < 1238513288 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : The rationale is that it comes from Greek 'izare' (modulo the Latin alphabet) and is also pronounced like a z < 1238513288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, hm maybe < 1238513307 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think that would be 'izein' or something like that, -are is just latin iiuc < 1238513329 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Quite possibly < 1238513338 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The key point is the z anyway ;-) < 1238513366 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1238513369 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :No the key point is to nitpick. < 1238513436 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://www.myetymology.com/greek/-izein.html < 1238513459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how much RAM do you have? if more than 65536 PB you could maybe make a 32-bit funge-space all static ;P < 1238513461 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :~ < 1238513480 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe! < 1238513483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(is that even physically possible? I kind of loose the sense of numbers when it comes to large enough numbers...) < 1238513501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1238513509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would be more than 64-bit could adress < 1238513516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you would need an 128-bit computer I think < 1238513523 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah you would < 1238513554 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A square with a side of 2^32 elements obviously has an area of 2^64 elements, so... < 1238513555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, "iiuc"? < 1238513564 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if i understand correctly, is my guess < 1238513569 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in "if I ? correctly"? < 1238513573 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238513575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :understand < 1238513575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238513587 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, yes < 1238513604 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, so physically impossible too I guess? < 1238513634 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, I don't know about that. Certainly rather unlikely with current technology. < 1238513641 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :65536 doesn't strike me as beyond the realms of possibility < 1238513650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it would be a bit tricky with modern hardware, definitely < 1238513652 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*65536 PB < 1238513653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, in PB... < 1238513666 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the entire Internet comes to about 3 or 4 PB, apparently < 1238513672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's how big the Wayback Machine's archive is < 1238513677 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Wikipedia has a "Petabytes in use" list in the Petabyte article. < 1238513677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is 2^32*2^32*4 < 1238513679 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it fits into one storage container < 1238513700 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can certainly imagine 20000 or so of the things all containing data farms < 1238513704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, waybackmachine is far from complete < 1238513708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: well, yes < 1238513723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I think that 65536 would be /possible/ with today's technology, just expensive < 1238513749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also I think this set of data is infinite should waybackmachine be complete... it would need to crawl itself and crawl the crawls of itself and so on < 1238513751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238513763 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nope, it's blocked by robots.txt, IIRC < 1238513772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hah right < 1238513772 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and things that block wayback via robots.txt aren't wayback-archived < 1238513810 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :As for y, there's a tradeoff between border-shrinkup speed and speed in general. Unless you're willing to do more per-funge-space-write bookkeeping you probably can't do much better than a straight-forward scanning for non-whitespace. But you could do some sort of tricks like keep separate hashmap/static-array of "number of non-whitespace elements in a 256x256 block" counts, updated on every write, which would speed up border-scanning in the pathological case < 1238513811 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :s where they shrink very much. < 1238513822 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, has to go work → home now, so away. < 1238513848 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could keep a count of nonspaces in each row and each column < 1238513861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that would make fungespace read and write O(1) < 1238513866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whilst letting you know when to shrink < 1238513877 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, hm < 1238513926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, interesting idea... < 1238513947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it should translate to a simple inc or dec most of the time, with a slight overhead at loading. < 1238513951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1238513965 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you'll also need some memory to store the count in < 1238513975 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although an unsigned fungecelltype would be big enough < 1238513977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1238514018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I optimise for speed rather than memory usage (though I try to keep memory usage down when possible, because that is usually faster) < 1238514056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, actually it wouldn't work outside static space, I would need two 2^32 arrays < 1238514063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't have that much ram < 1238514087 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just use the same method as you use for fungespace < 1238514092 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and growing the array dynamically each time the bounds grow sounds like it could be bad < 1238514092 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238514099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :static arrays for the middle, a hash elsewhere < 1238514102 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you mean hash outside the static area hm < 1238514103 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238514105 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that could work < 1238514160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I need a different hash library though since the current one is special cased heavily for a specific data type (to speed it up) < 1238514171 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, that probably isn't a problem < 1238514174 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I can use same, but a different copy of it special-cased in another way < 1238514178 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1238514206 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I mean it can't store anything but funge cells, since they are inlined in the records themselves and such. < 1238514218 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(yes it was faster) < 1238514227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(I profiled compared to having a pointer to the cell) < 1238514247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also the records are allocated from a memory pool that gives out fixed size blocks < 1238514260 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway just compile it twice with different parameters heh < 1238514269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or < 1238514270 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually < 1238514389 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238514396 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there is the hsearch stuff in libc too < 1238514428 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Haha 'I only use Gentoo with -fbroken-math, -fno-stack, and -finfinite-loops.' < 1238514446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, who? < 1238514451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also that is a joke obviously < 1238514462 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what would -finfinite-loops do, anyway? < 1238514469 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the other two I can sort of guess < 1238514471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It inlines finite loops < 1238514479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238514481 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I know a lot of sane gentoo users. It is just a urban myth that all would do like that. I know one single gentoo user that used to use risky CFLAGS... < 1238514494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :he stopped after a while < 1238514505 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think omit-frame-pointer is risky :-P < 1238514508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, -march=k8-sse3 -pipe -O2 -g is what I use < 1238514514 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I don't ever use omit-frame-pointer < 1238514525 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's the default on gentoo though < 1238514528 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no < 1238514530 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or was, at least < 1238514560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I used gentoo since 2005, and it hasn't ever been default < 1238514577 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually late 2004 even < 1238514582 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, maybe it was just a recommendation on the wiki for 'safe CFLAGS' or something < 1238514605 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yeah, but that wiki is edited by users, and not even an official gentoo project < 1238514616 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I'm aware < 1238514620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is good often yes, good howtos for many things < 1238514628 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not anymore now that they lost their data < 1238514640 0 :neldoreth!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1238514647 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1238514663 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, archive exists and people are checking that the howtos aren't outdated (a lot were) and adding them back < 1238514669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway on gcc 4.3 I would just recommend -O2 -march=native -pipe < 1238514676 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-pipe just makes gcc use less temp files < 1238514679 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: why do you think omit-frame-pointer is risky? it's part of -O3, IIRC < 1238514681 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :between preprocessor and such < 1238514685 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :instead using pipes < 1238514687 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the compiler doesn't do it in the situations it doesn't work < 1238514693 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it just makes debugging harder < 1238514700 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You never know when you want to debug < 1238514710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which usually means around 5%-7% saved on compile time for large apps < 1238514733 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is it part of -O3? That sounds wrong < 1238514769 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe the omitting leaf frame pointer is default at -O3... < 1238514789 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(a separate, more conservative flag) < 1238514796 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Evidently it is part of -O3 on x86-64 < 1238514798 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But not on x86 < 1238514799 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: -pipe will bork gcc /really/ badly on DOS < 1238514817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ok maybe. But I recommend using it on all sane systems < 1238514823 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, I think DJGPP works around it, by running the processes one at a time and using temp files < 1238514833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, iirc it isn't needed really on x86_64 < 1238514834 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :either that, or it's simply turned off in the DOS version of gcc, that wouldn't surprise me < 1238514846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw it is _ not - iirc < 1238514866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Linux tux.lan 2.6.27-gentoo-r8-1 #1 Sat Jan 31 04:55:36 CET 2009 x86_64 AMD Sempron(tm) Processor 3300+ AuthenticAMD GNU/Linux < 1238514867 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1238514874 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "It" is either AMD64 or Intel 64 these days < 1238514874 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I never seen it with a - instead of _ < 1238514887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes AMD64 or IEMT64 or something < 1238514889 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And yet the Wikipedia article is called x86-64 < 1238514892 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :forgot what the intel called it < 1238514896 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/the/ < 1238514899 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Intel 64 these days, as I said. < 1238514902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238514908 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: EM64T earlier. < 1238514912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238514915 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And IA-32e before that. < 1238514920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1238514923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that's silly < 1238514926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :IA-32e < 1238514926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238514959 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AMD's original designation for this processor architecture, "x86-64", is still sometimes used for this purpose, as is the variant "x86_64". < 1238514968 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :x86-64 is /more/ correct. < 1238514988 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(If you define the ordering relation on correctness correctly.) < 1238515043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, Gentoo calls it amd64, gcc and other parts of toolchain calls it x86_64 < 1238515058 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AMD64 I can understand, x86_64 I can't. < 1238515076 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Nor the banal x64. < 1238515085 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lrwxrwxrwx 1 root root 59 21 jul 2008 /etc/make.profile -> ../usr/portage/profiles/default/linux/amd64/2008.0/desktop < 1238515106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that is microsoft making a mess < 1238515121 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's other companies as well, might have started with MS though. < 1238515126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :microsoft invented "x64" < 1238515131 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh? < 1238515139 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: At least Sun uses it also. < 1238515142 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess it looks cooler < 1238515147 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and more markety < 1238515183 0 :neldoreth!unknown@unknown.invalid QUIT :"leaving" < 1238515226 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1238515284 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238515299 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how is a struct that is passed by value passed on 32-bit x86= < 1238515299 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1238515308 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on stack right? < 1238515317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :And in registers for x86_64 right? < 1238515318 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :depends on the compiler < 1238515322 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Beats me, I don't know the C calling conventions beyond integers < 1238515331 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And even those only for x86-64 :-P < 1238515335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :IIRC with the right compiler flags, gcc will pass it in a register if it fits, and on the stack otherwise < 1238515349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, lets say GCC with __attribute__((regparm(3))) < 1238515351 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1238515361 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :12:56 ais523: AnMaster: launchpad? ugh < 1238515361 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :12:57 AnMaster: ais523, good code hosting though < 1238515363 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :12:57 AnMaster: for bzr < 1238515365 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh come on < 1238515366 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc-bf will pass it in registers if the total size of the arguments is 32 bytes or less < 1238515376 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can't redeem launchpad with *bzr*, that's opposite world :-) < 1238515376 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, since when do google code hosting have bzr? < 1238515391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: look up false dichotomy some time < 1238515396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what ais523 said < 1238515401 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :11:39 AnMaster: ais523, btw is it vectorize or vectorise in UK English? < 1238515401 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :11:39 ais523: err... oh dear < 1238515404 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my thoughts exactly < 1238515405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well bzr would be a hard requirement < 1238515407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for me < 1238515419 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: why not just get a webserver that runs bzr, and push there? < 1238515424 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's the same way you host any other dvcs < 1238515434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, as I said there were data center issues. And that is what I used before < 1238515439 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(ais523: objection; i use github :-P) < 1238515441 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just temp using this way < 1238515462 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you know I don't agree with github's terms of use < 1238515469 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i think they fixed them < 1238515469 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1238515472 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not sure < 1238515477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :am I the only person in the world who doesn't use a website due to not agreeing to its terms of service? < 1238515483 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it doesn't change the fact that I do use it < 1238515486 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :given that only about 5 people are likely to have read them? < 1238515492 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so "that's the same way you host any other dvcs" is wrong < 1238515493 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apparently there's another bug in them, not just the adblocker thing < 1238515497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Oh? < 1238515499 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like what? < 1238515503 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Are you sure you're not thinking of another site? < 1238515506 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember offhand, let me read them again < 1238515512 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was on proggit a while back, though < 1238515518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that was about sourceforge < 1238515519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not github < 1238515523 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, maybe < 1238515525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and that was wrong too, btw < 1238515527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what was the bug there? < 1238515530 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was only referring to non-code content < 1238515540 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: "we, sourceforge, have an exclusive license to do what the fuck we want with your stuff" < 1238515545 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it was only referring to non-code content you submit < 1238515567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even so, people might want to store non-code stuff there < 1238515575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and "exclusive"? that rules out pretty much all documentation licences < 1238515592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sf is obsolete anyway < 1238515595 0 :neldoreth!unknown@unknown.invalid QUIT :"leaving" < 1238515602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... github have the facebook bug < 1238515608 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1238515609 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1238515612 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where they can change the ToS without notice and you have to comply with the new ones < 1238515622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that's not the "facebook bug" < 1238515625 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's in every website tos ever < 1238515630 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes < 1238515637 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it became famous wrt facebook < 1238515637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you don't want to comply with the new terms, stop using the site < 1238515640 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :simple enough < 1238515642 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not a bug < 1238515644 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :IMO they should have to give you an advanced warning so you can pull your stuff if you disagree < 1238515653 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they can grab the copyright to your uploaded content, though, etc < 1238515656 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: err... sourceforge do < 1238515661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, you mean github? < 1238515665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, no < 1238515666 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I mean in general < 1238515672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I know sf.net give advance warning yes < 1238515672 0 :BeholdMyGlory!n=BeholdMy@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1238515674 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's their right to put whatever terms they like < 1238515678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but facebook didn't < 1238515681 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They would probably warn < 1238515685 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :" where they can change the ToS without notice and you have to comply with the new ones" < 1238515687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but requiring a warning is dumb < 1238515688 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :see the without notice bit < 1238515693 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is what I'm talking about < 1238515698 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. you're wrong. < 1238515704 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(but that's never stopped you) < 1238515708 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1238515713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it seems ais523 agreed with me here < 1238515727 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So? < 1238515730 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't stop it being wrong < 1238515737 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :github also doesn't allow you to use significantly more than average bandwidth for their customers < 1238515740 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*users < 1238515747 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :thinking about it: how many inactive accounts are there on github? < 1238515756 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quite possibly /all/ the active ones are using significantly more than average < 1238515768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well you didn't say " yes. you're wrong." to him. You were much ruder to me < 1238515774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as usual < 1238515781 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because you're wrong far more often, and you always state it far more idiotically < 1238515793 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and, to boot, you irritate me greatly so if you feel offended that's great < 1238515833 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even wikidot, which is pretty awful, doesn't have that particular ToS bug: "Registered users will be presented with the changes, and the option of accepting the new Terms, or canceling their account, at their next authenticated visit to the Services. If you are a registered user and you choose to continue to use the Services, you agree to be bound by the new Terms." < 1238515940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise, Google's terms of service (for Google Docs at least) state that the new terms are only binding on you if you continue to use the service about being notified of the change < 1238515948 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although strangely, if you want to cease to agree to their terms you have to do it in writing < 1238516015 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird and I are known to disagree a lot, but for some reason I don't annoy him all that much when I disagree with him < 1238516025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you disagree with me in a less irritating fashion. < 1238516046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah I wonder what is wrong with ehird... < 1238516066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: maybe something to do with the fact that you're an irritating idiot but I can't /ignore you lest I lose 50% of context in here. < 1238516094 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, wait, didn't you mix up "you" and "I" there? < 1238516110 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think you would be less irritating if you didn't make pathetic attempts at insulting humour < 1238516112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually no, you aren't an idiot, just annoying < 1238516120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "I're an irritating idiot"? your grammar is slipping < 1238516145 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well of course the grammar would need fixup after replacing < 1238516158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like 're to 'm and so on < 1238516190 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway I wouldn't call ehird an idiot. But annoying and over-reacting yes, as well ass rude and several other things. < 1238516194 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :But not idiot. < 1238516200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ass rude < 1238516201 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1238516205 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238516214 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a typo that was indeed rather funny < 1238516219 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :meant "as" of course < 1238516266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why do people here think asses are intrinsically funny anyway? < 1238516291 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well donkeys do sound rather weird. Maybe because of that? < 1238516318 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"donkey" is funny, but "monkey" is funnier still < 1238516326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :based on the sounds of the words, nothing to do with meaning < 1238516335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but ass isn't a synonym for "monkey" < 1238516369 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes < 1238516373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it also doesn't sound like "donkey" < 1238516377 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw Swedish use one word for "monkey" and "ape", causing some issues when translating Discworld books < 1238516379 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :rather funny < 1238516385 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, brilliant < 1238516390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how do they get around the problem? < 1238516397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :monkey and ape same word? How creationist. < 1238516405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, both are "apa" < 1238516446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, using an older form of it, "apekatt", which sounds very out of place. So a very poor solution. < 1238516461 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and confusing, until I read the English books < 1238516476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :until I realised what the translator was trying to express < 1238516480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err spelling? < 1238516568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I have seen one case with a translators footnote basically saying "here I had to give up", think it was for Soul Music and the name of one of the main characters < 1238516573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION helps friend install Ubuntu on a new laptop, remotely, via MSN < 1238516575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was in* < 1238516576 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This will be *fun* < 1238516583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :via MSN < 1238516589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. Via MSN. < 1238516590 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"Insert CD, follow instructions, and you're done." < 1238516596 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, yes, that's what I'm hoping for. < 1238516605 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But you never know with the newfangled hardwares these days. < 1238516609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, does the CD have pigin or such? (or whatever the name currently is of that software) < 1238516614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes. < 1238516630 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It has all the software that it has post-installation < 1238516644 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just it's slower before it's installed < 1238516649 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it has to keep reading from the CD < 1238516649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well duh < 1238516730 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, many livecds tend to use ramdisks? < 1238516742 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: loading all the software into RAM? < 1238516743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well mostly the minimal ones I guess < 1238516747 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It runs on low-RAM machines, you know. < 1238516767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, at least the gentoo minimal install cd (around 70-90 MB iso iirc) has such an option < 1238516773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as a boot option that is < 1238516798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :along with the other ones like "noacpi" and such < 1238516817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though it was a few years ago I last looked < 1238516820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Actually the story _before_ this installation was more amusing. < 1238516826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1238516834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :His male parental overlord ... thinks he knows computers. < 1238516845 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WiFi routers are bad because people can steal your internet, and they give off cancer-causing radiation. < 1238516858 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ubuntu and non-Norton virus scanners and Firefox are less secure and you should not use them. < 1238516863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc. < 1238516875 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can infer the rest :-P < 1238516964 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, people can steal your internet if the router isn't set up properly < 1238516970 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why is he being allowed to install ubuntu anyway? < 1238516978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :norton doesn't even run on it < 1238516985 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw I begin with writing straight-forward possibly slow code when adding new features to cfunge, then profile and optimise. It makes it a lot easier to do it correct. And hopefully mentioning this reduces jokes about cfunge's speed... < 1238517005 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: After a few days: "Well fine you can install it but i'm not happy about it" < 1238517011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Grumble grumble mumble etc" < 1238517024 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, shared or own computer? < 1238517034 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: he got this laptop a few days ago. < 1238517037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238517209 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1238517230 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ikea = awesome. This fact brought to you by ehird. < 1238517339 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, why do you think they are awesome? < 1238517346 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't know. I just like the atmosphere :P < 1238517369 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to visualise a flat-packed IKEA, assembly required < 1238517379 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :after all, prefabricated buildings aren't exactly unknown < 1238517389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1238517393 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you mean an IKEA store itself packaged like an IKEA thing? < 1238517395 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238517408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I love the bit behind all the actual on-display stuff < 1238517408 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, might be rather... large? < 1238517412 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Where it's just racks and racks and cardboard boxes < 1238517416 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yep, you'd probably need a couple of lorries < 1238517417 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's kind of surreal < 1238517425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: have you seen how huge IKEAs are? < 1238517425 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, like any other IKEA store? < 1238517429 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they're ginormous! < 1238517430 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1238517437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you'd need like 100 lorries < 1238517448 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: they're mostly full of air, though < 1238517454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :True. < 1238517455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I admit that the surface area of the walls would come to quite a bit < 1238517458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Those ceilings are terribly high < 1238517471 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "it's called cfunge because it's as slow as watching mushrooms grow"? < 1238517477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, IKEA also sells stuff which isn't flat packaged, like plates and glasses and such < 1238517485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :at least here in Sweden < 1238517487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: oh, I know that < 1238517500 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there's also a little shop at the entrance where they sell stuff from Sweden < 1238517515 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they have some nice biscuits I forget the name of < 1238517519 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but yeah IKEA usually means impossibly compactly packed with an allen wrench included < 1238517537 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : there's also a little shop at the entrance where they sell stuff from Sweden <-- never seen that... < 1238517546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess it is non-Swedish IKEA only < 1238517559 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well duh. < 1238517562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238517572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what are those small stores like? < 1238517579 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238517592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Sort of like... erm... < 1238517596 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I dunno. < 1238517601 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They're very small < 1238517603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238517614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that would be rather a contrast compared to IKEA itself < 1238517659 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. It's like someone snuck it in through the entrance and fitted it on to the walls and everything is so far away from each other since IKEA is so big that nobody in charge has noticed yet. < 1238517667 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1238517678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm are IKEA over there more than one floor? Or Just one? Usually just one here in Sweden though I have seen some with more < 1238517694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just one massive floor. < 1238517698 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238517706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Although considering how high the ceilings are you could fit about 5 more in. < 1238517707 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the one in Trondheim is two. < 1238517728 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, with a restaurant near the middle of the path you walk before reaching the box area? < 1238517735 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :assuming they have same layout < 1238517738 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as the ones around here < 1238517743 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Er. I don't think so. < 1238517765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where you have to walk something like a Hilbert space filling fractals with items on all sides < 1238517784 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :definitely like that here < 1238517791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238517798 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The box area is what I mentioned before. < 1238517802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No recollection of a restaurnt. < 1238517830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes but there is more than the box area, an area before where you can look at items assembled and such < 1238517830 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I imagine not all IKEAs are identical < 1238517841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it wouldn't surprise me < 1238517841 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, true, but they have the same basic idea < 1238517849 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I imagine all Apple Stores are identical, for instance < 1238517851 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i've heard nearly all IKEA's _are_ identical < 1238517852 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :they vary a bit, but not that much < 1238517916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :one floor usually sometimes two, slightly different physical dimensions to fit into local geography, add a small "Swedish exotic store" if not located in Sweden (don't know about Norway, I would assume they don't have such stores there either oerjan?) < 1238517920 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the ads they had here even said "remember to eat at the cafeteria" < 1238517920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and such < 1238517934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, that I haven't seen < 1238517962 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the one here have a combined restaurant/cafeteria indeed though < 1238517966 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :has* < 1238518016 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whee, he has managed to burn the CD correctly. < 1238518027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Before that Windows decided to burn the ISO file as the single content of it. < 1238518033 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thanks, Windows. < 1238518048 0 :FireFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1238518113 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: also, i think you can at least buy swedish food like kjöttbullar there, i didn't notice any specifically swedish store < 1238518144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, that isn't Swedish. It is Norwegian. Swedes would never add that j < 1238518151 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238518152 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :of course this is Norway, where some people regularly take trips to sweden to buy things that are cheaper there < 1238518160 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not? google failed me then < 1238518168 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, köttbullar < 1238518173 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: are fjords nice? < 1238518185 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah they are a Norwegian speciality! < 1238518188 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :somehow i googled kjöttbullar and got a hit < 1238518199 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also new zealand i hear < 1238518207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i think you should give slartibartfast more credit < 1238518212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, err? < 1238518221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :they have fjords? < 1238518224 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1238518228 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238518245 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I never was against giving him credit. < 1238518249 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where did you get that idea? < 1238518252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :all you need for that are mountains and a previous glacial age, i presume < 1238518254 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you said Norweigan specialty < 1238518279 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the norwegian specialty would be kjøttkaker < 1238518289 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well slartibartfast placed them in Norway obviously (I didn't know they existed in new zealand too at that point) < 1238518301 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(kjøttboller exists too, but kjøttkaker is what was voted our national dish iirc) < 1238518305 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but couldn't they be the speciality of both Norway and slartibartfast < 1238518336 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, poor Norwegian vegetarians < 1238518343 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1238518355 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders what the Swedish national dish is < 1238518360 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :norway is definitely not known for its veggie food < 1238518361 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :do we even have one? < 1238518372 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I can also æø < 1238518395 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FireFly, äö/æø would mean? < 1238518401 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1238518402 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :As in < 1238518404 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wow. His video card was supported out of the box. Full resolution. < 1238518410 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Luxury. < 1238518412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what brand and model? < 1238518423 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: well köttbullar seems to get high on the list < 1238518425 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I can also write the characters < 1238518426 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I meant < 1238518428 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://wiki.answers.com/Q/What_are_Sweden's_national_foods < 1238518432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway since it isn't debian but ubuntu I wouldn't be surprised ehird ;P < 1238518455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://www.samsung.com/uk/consumer/detail/spec.do?group=itbusiness&type=notebookcomputers&subtype=rseries&model_cd=NP-R610-FS03UK&fullspec=F, which says: < 1238518456 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NVIDIA GeForce Go 9200M GS (Dedicated Graphics) < 1238518457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Intel® X4500 (Integrated Graphics) < 1238518462 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although I don't know which it is < 1238518477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238518485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, have him do lspci? < 1238518488 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually forget that < 1238518493 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if he is not computer literate < 1238518495 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I think I'd rather not scare him off. :-) < 1238518545 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm wait i see claims norway's national dish is/was fårikål < 1238518555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anyway nvidia drivers usually work almost out of box once they are compiled and installed. And Intel like Linux and contributed bug fixes to the open source drivers < 1238518561 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :("sheep in cabbage") < 1238518562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I'm not really surprised for either case < 1238518618 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, lucky it wasn't ATI/AMD graphics... Though even that is starting to get better slowly after AMD bought ATI < 1238518624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mm. < 1238518654 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :more humorously, in modern days it's Pizza Grandiosa (a norwegian shrink-wrap pizza) < 1238518678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, still nvidia-drivers tend to just work, issue is when they stop supporting some old card in new drivers and the last working driver ends up failing with newer kernels. < 1238518679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1238518693 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how long his own 7600 will be supported < 1238518694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah but even with nvidia I have to let ubuntu asy "oh hai you need these drivers" < 1238518718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm ok, If 3D works I guess it is intel then < 1238518748 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :afk < 1238519166 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :afk too < 1238519669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Since Ubuntu is freeware it'll make money through advertising so you have to download an adware and spyware scanner < 1238519674 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION facepalm < 1238519770 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :oh brother < 1238519794 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :yes, open source spyware is very common. -_- < 1238519802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Robdgreat: how else will ubuntu corporation make money duh < 1238519814 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :certainly not through support < 1238519815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: by being given it all for free by a rich millionaire < 1238519824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ha ha nerds don't have money! < 1238519835 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the funny thing is that that /is/ the real method... < 1238519852 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey, it works < 1238520540 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: "rich millionaire"? < 1238520562 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, millionaires aren't necessarily rich nowadays < 1238520564 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately < 1238520568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1238520574 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :many of them are just barely scraping by trying to live in London < 1238520582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"so you have to download an adware and spyware scanner" <-- are those freeware ones since you can download them < 1238520587 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: :-DDDDDDD < 1238520595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this adware scanner is supported by ads! < 1238520607 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, many freeware programs pretending to be spyware scanners are themselves spyware < 1238520617 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes I know, but I was trying to be funny there < 1238520623 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :stop ruining the joke ais523 < 1238520728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that wasn't ruining the joke < 1238520733 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the joke had already happened < 1238520747 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also: " AnMaster: :-DDDDDDD" < 1238520754 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1238520757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: is something wrong with you? You actually liked AnMaster's humour < 1238520762 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::x < 1238520783 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION kicked ehird from #esoteric (obviously an imposter) < 1238520820 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anyway it should be interesting to watch the reactions if that dad of your friend was told this contradiction (first check he doesn't use shareware ones... just in case) < 1238520831 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I think that would be playing with fire < 1238520841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: But seriously, this guy likes *Norton*. < 1238520846 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's McAffe, you know? Symantec? < 1238520851 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Worst virus scanner ever? < 1238520870 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure it's the worst altogether, it has some pretty strong competition < 1238520870 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It was the best 20 years ago < 1238520872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err isn't McAffe or whatever separate from the Symantec one? < 1238520876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well yeah < 1238520879 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but hooking into everything in the OS is pretty annoying < 1238520881 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And McAfee is different, yes < 1238520881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Same company < 1238520885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and putting toolbars on everything is pointless < 1238520891 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway, what would a good antivirus be on Windows? I have no clue < 1238520907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, did you know that Symantec have a downloadable program specifically to uninstall Norton < 1238520913 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the packaged uninstaller doesn't work properly? < 1238520920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh that was news to me < 1238520922 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: do you mean one that already exists, or in theory? < 1238520940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Nod32, AVG. < 1238520941 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, one existing that you could recommend to computer illiterates < 1238520943 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I rather like clamav, even if I only run it because the University wireless rules say you have to have a virus scanner < 1238520944 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238520957 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I ran into Panda once, it seemed just as bad as norton < 1238520959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I don't think there's a Windows one like it < 1238520962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Panda? < 1238520970 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, Panda Antivirus yes < 1238520971 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ok. < 1238520977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As far as firewalls go, Comodo is quite good. < 1238520981 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ClamAV is supposedly rather crap < 1238520981 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: AVG is really self-centered, it pops up lots of useless dialog boxes about how great it is all the time < 1238520990 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: its interface is good, though < 1238520993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes, well, the actual virus checking is good < 1238520993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, personally I prefer pf, a pitty it doesn't exist for windows < 1238521000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: cygwin? < 1238521000 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or linux < 1238521004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238521005 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't really care about the interface when it comes to virus checkers :-P < 1238521011 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I doubt you could run pf on anything but *BSD < 1238521012 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: anyway, does it matter, what would it be looking for anyway? < 1238521017 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nod32 is good, anyway < 1238521018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :too hooked into the BSD style kernels < 1238521021 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's hand-coded entirely in asm < 1238521023 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :all of it < 1238521026 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is crazy < 1238521032 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and also it's quite expensive shareware < 1238521032 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ClamAV looks out for Windows viruses, and logic bombs like infinitely large zip files < 1238521038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but its memory footprint is close to 0 < 1238521039 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :F-Prot wasn't too shabby, back then. < 1238521043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and its virus checking is excellent < 1238521050 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238521068 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :F-Prot is what turned into F-Secure, I guess. < 1238521091 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what worries me is what would happen if Linux gets popular enough that it will become interesting for virus makers, yes there have been a few for it iirc but not really a lot < 1238521098 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :[18:36:48] I don't really care about the interface when it comes to virus checkers :-P <-- Well, me neither, within certain bounds < 1238521104 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It has an OK security model built in. < 1238521111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Anti-viruses" are a laughable concept. < 1238521117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes true, but even so there have been bad things < 1238521120 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Why remove viruses when you can fix them> < 1238521126 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :For example, I dislike Norman Antivirus' interface < 1238521128 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, vmsplice() to mention to last one < 1238521142 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hum? < 1238521155 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: F-Prot still exists. < 1238521163 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: when you can fix the security issues that let them work < 1238521164 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's just not F-Secure's F-Prot. < 1238521167 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yes, Google said so. How curious. < 1238521191 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: The F-Prot engine was always licensed from Iceland. < 1238521191 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"F-Secure is historically related to FRISK Software International, a company based in Iceland, which publishes F-Prot antivirus. The original F-Prot conglomerate of Icelandic, Finnish and American computer antivirus researchers fell apart during the early 1990s and the resulting companies divided the global market." < 1238521193 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Sounds messy. < 1238521216 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Conglomerate is a fine word, though. < 1238521216 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone know a fast way to calculate if something is on the edge of a box? I'm looking for bithack style stuff in this case. I mean I know how to do it simple < 1238521222 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :integer coords < 1238521308 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well you can still make a virus that manages to mess up the files of the user, which most users would probably consider rather bad. < 1238521317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or equally bad even < 1238521322 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Heh, the likelyhasbetween(x,m,n) macro in http://www-graphics.stanford.edu/~seander/bithacks.html#HasBetweenInWord is by mooz. < 1238521331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likelyhasbetween? < 1238521346 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's fixable by a capability-based security model. < 1238521354 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: "Determine if a word has a byte between m and n", but with a probability of false positives, so it's just useful for a pretest. < 1238521365 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Anyway, it'd be trivial to make one of those. Advertise new linux software, make the installer a bunch of nops and rm -rf ~ < 1238521367 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, need more than byte range. 16 bit integer would work though < 1238521371 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But viruses generally aim for more. < 1238521396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does anyone use likelyhasbetween, btw? < 1238521402 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can't think of an obvious use-case for it < 1238521405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well infect the user's shell ~/.bashrc and .xinitrc and so on < 1238521409 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and do other tricks < 1238521412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :might be possible < 1238521418 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: strlen>? < 1238521419 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: infecting bashrc would be ridiculous < 1238521423 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It was designed for a real need, yes; I vaguely remember the conversation leading to it. < 1238521427 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :read one word at a time, likelyhasbetween 0 < 1238521429 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would be easy to notice, possibly by accident < 1238521431 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if it does, then check it further < 1238521440 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I mean, why are you doing the check in the first place < 1238521444 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, .xinitrc or some gnome/kde specific autoload stuff hidden somewhere < 1238521446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or such < 1238521448 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ? < 1238521467 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, "Determine if a word has a zero byte " < 1238521506 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually I'm not looking for if it is in the box fizzie, but *on* the edge. < 1238521508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238521521 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Actually, come to think of it, it might've just been a further development of the "determine if a word has zero byte" solution. < 1238521600 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the bithacks page reminds me of INTERCAL < 1238521627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what those would look like translated to the simplest equivalent INTERCAL expressions? Shorter or longer, I wonder? < 1238521646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I ought to get me an editor with which to edit haskell. < 1238521666 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :don't you have an emacs already? < 1238521672 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1238521766 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically I'm looking for a faster way than: < 1238521768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : if ((x != fspace.bottomRightCorner.x) < 1238521768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : && (x != fspace.topLeftCorner.x) < 1238521768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : && (y != fspace.bottomRightCorner.y) < 1238521768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : && (y != fspace.topLeftCorner.y)) < 1238521784 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(assuming that is correct, I haven't tested that well yet) < 1238521822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :replacing && with & may be faster, but the compiler can probably figure out that optimisation for itself < 1238521834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hah. Yeah I assume it should < 1238521866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :are the fspace members volatile? < 1238521873 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if not, I really /hope/ it figures it out for itself < 1238521879 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, they shouldn't be < 1238521903 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :static struct fungeSpace fspace; < 1238522005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if the definition of struct fungeSpace contains no volatiles, it should be able to work it out < 1238522013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed it doesn't < 1238522019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... I might put & there rather than &&, anyway < 1238522027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then to confuse people further, remove all the parens < 1238522035 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I would confuse myself < 1238522052 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Um. That test certainly isn't a complete "is this on the box edge" test, but anything passing that definitely is *not* on the edge. < 1238522058 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can never remember the precedence rules in C... for && and != < 1238522060 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and == < 1238522086 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, oh? < 1238522089 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: it's a test for "is inside the box not on the edge", assuming that there's nothing outside the box, which there isn't < 1238522102 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: && is lower than == < 1238522106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there isn't anything outside indeed < 1238522106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, even & is lower than == < 1238522120 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about + then? < 1238522124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :1 + 3 == 4? < 1238522154 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :== is lower than all arithmetic < 1238522157 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238522159 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Most of the precedence makes sense, the bitwise & and | are the strange ones. < 1238522167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, but higher than the bitwises and logicals < 1238522168 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Is ^ in a different class from & and |? < 1238522175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: nope, it's between then IIRC < 1238522177 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*them < 1238522191 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but relative ordering of ^ to & and | I'm not entirely sure about < 1238522198 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just wondering if 1 ^ 1 == 0 is true or not < 1238522210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's because && is a comparatively recent invention in the history of C < 1238522214 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hm, actually that's true in either case isn't it < 1238522218 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But anyway < 1238522219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for ages, & and | were all that existed < 1238522239 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, um? And? < 1238522244 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That's the illogical 1 ^ (1 == 0), yes. I just didn't bother mentioning it. < 1238522251 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that explains why their precedence is below =='s < 1238522265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because people wanted to write x1 == x2 && y1 == y2, or whatever < 1238522266 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Right. < 1238522270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :back then it was x1 == x2 & y1 == y2 < 1238522278 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh? Couldn't they have put it otherwise since && would have been invalid before, thus not existing in any code < 1238522278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because there wasn't separate bitwise and relational and < 1238522296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, & was already below == < 1238522307 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where are they going to put &&? Putting it above == would be ridiculous < 1238522316 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as people hardly ever use == to compare booleans, and doing so is bad practice < 1238522319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I don't know < 1238522353 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, maybe in a compiler test suite? ;P < 1238522409 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's just that if you have "foo & 0xff == 0x23" it's obviously masking the lowest byte of foo and testing whether that's 0x23... except that ha!, it isn't; it is in fact foo & (0xff == 0x23), always false. Maybe something complains in that case, though. < 1238522438 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"warning: suggest parentheses around comparison in operand of &" with -Wall, yes. < 1238522478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(gdb) print cfun_static_use_count_row < 1238522478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$1 = {0 , 18446744073709551522, 18446744073709551474, 18446744073709551482, 18446744073709551491, 18446744073709551485, 18446744073709551490, < 1238522478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : 18446744073709551503, 18446744073709551502, 18446744073709551503, 18446744073709551507, 18446744073709551488, 18446744073709551498, 18446744073709551551, < 1238522482 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't believe that... < 1238522493 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wth was going on there < 1238522495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :looks like it's been decremented below 0 < 1238522497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and wrapped < 1238522503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh + and - confused < 1238522505 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1238522539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$3 = {0 , 94, 142, 134, 125, 131, 126, 113, 114, 113, 109, 128, 118, 65, 65, 71, 80, 70, 105, 79, 121, 132, 108, 120, 33, 84, 100, 127, 53, 33, < 1238522539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : 72, 31, 25, 20, 52, 65, 120, 76, 80, 96, 86, 75, 116, 108, 59, 113, 114, 91, 131, 88, 57, 115, 74, 104, 95, 79, 88, 69, 100, 96, 89, 108, 130, 130, 91, 21, < 1238522539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : 109, 115, 74, 72, 131, 119, 112, 112, 123, 92, 74, 106, 72, 60, 97, 115 < 1238522545 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :looks more sensible :) < 1238522657 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Quite a large program, if there were 18446744073709551522 non-space elements on row 0. < 1238522714 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Something like... 10 % larger than Mycology, eh? < 1238522722 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it was mycology < 1238522755 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the one I got from TRDS in CCBI. How it will look in 10 years < 1238522762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when RCS defined lots of new fingerprints < 1238522772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :about 10% of which Deewiant bothered to test < 1238522784 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(the rest being crap or too badly defined) < 1238522799 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just haven't had the time/will for somem < 1238522802 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :s/.$// < 1238522817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :somem? sounds like RCS one indeed < 1238522817 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Some I did plain choose to ignore, yes < 1238522833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :related to memory management for *.so < 1238522849 0 :Slereah_!n=butt@ANantes-259-1-63-63.w92-135.abo.wanadoo.fr JOIN :#esoteric < 1238522883 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There should be a UNIC fingerprint that would change the semantics so that you could use ↑↓←→ instead of ^v<>. :p < 1238522911 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it seems to match btw < 1238522931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh. You couldn't load that from the file < 1238522936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sure you could < 1238522937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why not < 1238522938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would load into several cells < 1238522944 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :are you sure? < 1238522948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, check how it is defined in Funge-98 < 1238522950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you could pretend they're chars 256 < 1238522952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1238522953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*255 < 1238522960 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's spec compliant < 1238522977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I assumed using the same encoding as fizzie just sent < 1238523030 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It wasn't so perfectly clear-cut in the spec; it explicitly allows that the funge character set can be big: "Funge-98 source files are made up of Funge characters. The Funge-98 character set overlays the ASCII subset used by Befunge-93 and may have characters greater than 127 present in it (and greater than 255 on systems where characters are stored in multiple bytes; but no greater than 2,147,483,647.)" < 1238523041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Funge-98 source files are made up of Funge characters. The Funge-98 character set overlays the ASCII subset used by Befunge-93 and may have characters greater than 127 present in it (and greater than 255 on systems where characters are stored in multiple bytes; but no greater than 2,147,483,647.)", ask Deewiant for the reasons why he consider it like I described < 1238523043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :he can describe it < 1238523049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can't be arsed to < 1238523077 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, damn you were 3 seconds faster there < 1238523080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1238523092 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I've already forgotten the "justification" too. < 1238523093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I have since said that I'd consider UTF translation spec-compliant < 1238523097 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1238523103 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why did you change < 1238523108 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :new justification please Deewiant! < 1238523113 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I originally did that, then I didn't, then I thought about it more and realized that it's fine. < 1238523124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you told me it wasn't fine before < 1238523134 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I did, but I've also told you that it is fine. < 1238523143 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You're quite a waffler. < 1238523144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, why is it fine? < 1238523151 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :waffler? < 1238523153 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You /do/ know that I've changed my mind, you've just forgotten. < 1238523159 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway it isn't like cfunge will handle utf-8 in source files, that requires too much processing! < 1238523160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238523173 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, details then < 1238523173 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "N: One who waffles, from the verb waffle, meaning to never settle on a stance on one (or more) issue(s); A waffler usually goes from one side to the other and back again, usually multiple times, depending on who (s)he is talking to at the time. See also panderer." ← urban dictionary. < 1238523174 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, the reason is essentially that UTF is just an encoding for the underlying values < 1238523194 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You could just as well support loading gzip-compressed source without violating the spec. < 1238523196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, mhm < 1238523232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, but EBCDIC would violate I think < 1238523236 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not (directly) related to the edible stuff. < 1238523245 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because values in the range 0-127 would have different values < 1238523246 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Unless you translate it to ASCII, yes. < 1238523256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and "The Funge character set is 'display-independent.' That is to say, character #417 may look like a squiggle on system Foo and a happy face on system Bar, but the meaning is always the same to Funge, 'character #417', regardless of what it looks like." < 1238523261 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I guess that can't really be done; I'm not sure. < 1238523324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you could translate most of it to unicode I think < 1238523330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure if all could be translated < 1238523342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you know these things < 1238523345 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :please tell us < 1238523347 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think the problem would be more that you can't support the full Funge instruction set < 1238523359 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what's the argument about? < 1238523378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is ASCII <-> EBCDIC lossy? < 1238523386 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in one or both directions? < 1238523391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1238523391 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is. < 1238523396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :¬ isn't in ASCII, for one < 1238523397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in both directions then? Right < 1238523401 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not all ASCII punctuation's in EBCDIC < 1238523407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about EBCDIC <-> Unicode? < 1238523407 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and EBCDIC has newline, carriage return, /and/ linefeed < 1238523410 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1238523411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238523414 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about EBCDIC -> Unicode? < 1238523415 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1238523416 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is a rather confusing combination < 1238523417 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the other is lossy yes < 1238523427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: The more interesting question is can EBCDIC encode Befunge? < 1238523433 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :+whether < 1238523455 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no. It can't, since you need trigraphs or digraphs to write C on EBCDIC. < 1238523464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :meaning { and } doesn't exist I think < 1238523467 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The character table at http://en.wikipedia.org/wiki/Ebcdic seemed to include all in funge-98 spec. But that might be a varianty. < 1238523491 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh they are there < 1238523494 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"CCSID 500, one of the code page variants of EBCDIC" < 1238523496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: trigraphs aren't for ebcdic < 1238523499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what encoding need digraphs < 1238523509 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: encodings outside the ISO-guaranteed range < 1238523509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what encoding are they for then? < 1238523513 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :EBCDIC-500 evidently contains Latin-1. < 1238523513 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Unassigned codes are typically filled with international or region-specific characters in the various EBCDIC code page variants." < 1238523523 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1238523524 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :So it might not be so portable, anyway. < 1238523573 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also only those non-colorful-background characters are "common to all EBCDIC code pages". < 1238523593 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Er, I mean the opposite, of course. < 1238523682 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But if there's both | and ¦ (the "broken bar"), you could, as an extension, have ¦ act just like |, except with a small probability it'd pass right through it. < 1238523696 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1238523734 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh < 1238523735 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: http://www.cis.hut.fi/htkallas/box.html < 1238523755 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(I wanteded to collect whatever I mentioned yesterday.) < 1238523757 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, complete font fail < 1238523773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even in Dejavu < 1238523786 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :DejaVu's Unicode support isn't /that/ good. < 1238523807 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, true. But I don't have Bitstream Cybit or whatever the name was < 1238523831 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I seem to be lacking just those two first hangul characters (curiously the U+3141 compatibility-range hangul mieum works), the square with contoured online, and katakana small ro; others work. < 1238523842 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The situation was a lot worse at work. < 1238523849 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+2B1C WHITE LARGE SQUARE: ⬜ < 1238523851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone see it? < 1238523854 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't < 1238523855 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I do. < 1238523859 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually I see some of the ones before < 1238523864 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's a large, white square; you're not missing much. < 1238523866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, take a screenshot then < 1238523870 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, it's from a supplemental code block. < 1238523873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+2B1E WHITE VERY SMALL SQUARE: ⬞ < 1238523873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+1D126 MUSICAL SYMBOL DRUM CLEF-2: 𝄦 < 1238523873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+1D146 MUSICAL SYMBOL SQUARE NOTEHEAD WHITE: 𝅆 < 1238523873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+1D15A MUSICAL SYMBOL CLUSTER NOTEHEAD WHITE: 𝅚 < 1238523876 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't see any of them either < 1238523882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nor # U+23E2 WHITE TRAPEZIUM: ⏢ < 1238523894 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Some are question marks, some are white-bordered rectangles < 1238523900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+29E0 SQUARE WITH CONTOURED OUTLINE: ⧠ # U+2F1E KANGXI RADICAL ENCLOSURE: ⼞ # U+31FF KATAKANA LETTER SMALL RO: ㇿ are also missing < 1238523902 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Where the question mark is the Unicode replacement character < 1238523909 0 :Mony!n=Harmony@AToulouse-258-1-62-31.w90-55.abo.wanadoo.fr JOIN :#esoteric < 1238523931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, here the missing unicode shows up as [232] < 1238523933 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and such < 1238523947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or [01D146] < 1238523955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that blur might be an E < 1238523957 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure < 1238523965 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh yes < 1238523969 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: They show up as boxes with the code point number in them in Firefox, but not in my terminal < 1238523970 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is same as the codepoint < 1238523971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1238523983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, they do in my terminal hm < 1238523990 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://zem.fi/~fis/box.png < 1238523993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and in firefox yes < 1238524014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+1106 HANGUL CHOSEONG MIEUM: ᄆ < 1238524015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# U+11B7 HANGUL JONGSEONG MIEUM: ᆷ < 1238524019 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you are missing them? < 1238524021 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can see them < 1238524027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: ebest page ever < 1238524030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :small rectangles < 1238524035 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, as I said. < 1238524044 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I've seen the Unicode reference pictures. < 1238524059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, your rendering is missing # U+29E0 SQUARE WITH CONTOURED OUTLINE: ⧠ too < 1238524062 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hrrm. < 1238524063 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Quite many of those can be characterized as "small rectangles". < 1238524063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so am I < 1238524066 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I have no idea < 1238524072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i think my left hand has rsi < 1238524072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ow < 1238524075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :U+31FF KATAKANA LETTER SMALL RO: ㇿ too < 1238524079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or carpel tunnel < 1238524079 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I know. It's one of those supplemental code pages. < 1238524083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or w/e < 1238524083 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ouch, you need to write less or something < 1238524091 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no -- i need to type *better* < 1238524095 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's just a smaller version of the large ro, or the halfwidth ro. < 1238524097 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, what is "supplemental code pages"? < 1238524098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :home row and whatnot < 1238524191 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: The unicode ranges have names; the U+29E0 square with contoured outline comes from "Miscellaneous Mathematical Symbols-B". < 1238524233 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm missing almost all of them. I do have about half of the Miscellaneous Mathematical Symbols-A block. And all of the actual Mathematical Operators block. < 1238524319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238524337 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Similarly my "Arrows" set is complete, and "Supplemental Arrows-A" too, and even "Supplemental Arrows-B", but a third of "Miscellaneous Symbols and Arrows" I don't have. The very small white square and large white square are from that block, but I do have those two. < 1238524383 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"U+2B35 leftwards two-headed arrow with double vertical stroke" is missing, for example. I can't count the number of times I've tried to use that one, it's so common. < 1238524399 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://http.netscape.com.edgesuite.net/pub/communicator/extras/fonts/windows/Cyberbit.ZIP <-- Bitstream Cyberbit, couldn't find it elsewhere, linked from wikipedia < 1238524421 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Leftwards arrow above reverse almost equal to", too. < 1238524478 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmmh, I saw a table of various-size NOP instructions in an AMD or Intel manual a few days ago but now I can't find it any more. < 1238524553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well there are some better than others, for one byte xchg %ax,%ax is the canonical one iirc < 1238524565 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I know, but a manual had a table going up to something like 25 < 1238524575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, point is the CPUs often special code them as NOPs so they can schedule better < 1238524577 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :How come that one-byte nop is "better" than the nop nop? < 1238524582 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I know this! < 1238524589 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, ? < 1238524591 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm looking for the table, not an explanation of what NOPs are < 1238524600 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: nop is an alias for that < 1238524604 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, okay. < 1238524612 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They compile to the same code < 1238524619 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :The NOP instruction is an alias for XCHG rAX,rAX. < 1238524619 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Right, right. < 1238524619 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Mnemonic Opcode Description < 1238524619 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : NOP 90 Performs no operation. < 1238524621 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there is taht < 1238524628 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that* < 1238524636 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I don't need it to be said twice. :p < 1238524650 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Programs written for the legacy x86 architecture commonly use opcode 90h (the XCHG EAX, EAX < 1238524650 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :instruction) as a one-byte NOP. In 64-bit mode, the processor treats opcode 90h specially in order to < 1238524650 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :preserve this legacy NOP use. Without special handling in 64-bit mode, the instruction would not be a < 1238524650 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true no-operation. Therefore, in 64-bit mode the processor treats XCHG EAX, EAX as a true NOP, < 1238524650 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :regardless of operand size. < 1238524651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh? < 1238524652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1238524658 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh yes < 1238524667 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would zero to upper 32 bits in 64 bit mode < 1238524668 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1238524678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that's a crazy exception < 1238524682 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :xchg zero-extends? < 1238524707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, any operation on 32-bit registers in 64-bit modes zero extends the full 64 bit register it is part of < 1238524709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :This special handling does not apply to the two-byte ModRM form of the XCHG instruction. Unless a < 1238524709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :64-bit operand size is specified using a REX prefix byte, using the two byte form of XCHG to < 1238524710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :exchange a register with itself will not result in a no-operation because the default operation size is 32 < 1238524710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bits in 64-bit mode. < 1238524710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1238524712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(again) < 1238524733 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What?! < 1238524737 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Some of my code might be broken then :-P < 1238524740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what do you mean "what?!" < 1238524744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is documented < 1238524754 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Are you saying that 'mov eax, eip' zeroes the upper bytes of rax < 1238524754 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well apart from the xchg exception < 1238524758 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Err < 1238524760 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not eip < 1238524761 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But anyway < 1238524769 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I don't talk Intel syntax < 1238524770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1238524776 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Gah < 1238524790 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: mov %ebx, %eax zeroes upper 4 bytes of %rax? < 1238524797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes < 1238524803 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Meh, that sucks < 1238524804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is what I'm saying < 1238524855 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, AMD docs, part 1 figure 3-4 < 1238524873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, 16 bit or 8 bit usage doesn't zero extend < 1238524875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but 32-bit does < 1238524882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the former is for compat < 1238524886 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the second is a feature < 1238524894 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Silly feature < 1238524920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, xor %eax,%eax encodes as shorter ;P < 1238524931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway, this is interesting. What are you doing? < 1238524953 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I thought you knew? I'm writing a DOBELA interpreter < 1238524964 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, in asm? < 1238524968 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep < 1238524974 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also is DOBELA the "almost-tc" one? < 1238524979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't remember < 1238524981 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep < 1238524990 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The one with dots. < 1238525000 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :going around from sources and such? < 1238525006 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh no, not that one? < 1238525014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bully automaton right? < 1238525025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, why in asm. < 1238525031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://esolangs.org/wiki/DOBELA < 1238525039 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Zero-Extension of 32-Bit Results. As Figure 3-3 on page 27 and Figure 3-4 on page 28 show, when < 1238525040 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :performing 32-bit operations with a GPR destination in 64-bit mode, the processor zero-extends the < 1238525040 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :32-bit result into the full 64-bit destination. 8-bit and 16-bit operations on GPRs preserve all unwritten < 1238525040 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :upper bits of the destination GPR. This is consistent with legacy 16-bit and 32-bit semantics for < 1238525040 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :partial-width results. < 1238525042 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :To learn it and because I think it's cool to have a program that depends on only the kernel < 1238525044 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and < 1238525045 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Software should explicitly sign-extend the results of 8-bit, 16-bit, and 32-bit operations to the full 64- < 1238525046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bit width before using the results in 64-bit address calculations. < 1238525067 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You don't have to paste paragraphs of stuff from docs after having told me where it is < 1238525074 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you hard code x86_64 linux syscall numbers directly?! < 1238525079 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I read that three minutes ago < 1238525080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh ok < 1238525096 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Essentially, yes < 1238525102 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :At the source level, they are named constants < 1238525107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238525117 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I have a script which parses them from sys/syscalls.h or whatever it's called < 1238525117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, doesn't linux use SYSCALL or something < 1238525120 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or is it SYSENTER? < 1238525123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I forgot which < 1238525126 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's all syscall < 1238525137 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what was SYSENTER for? < 1238525154 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think it was AMD's version of syscall but I don't think anything uses it any more < 1238525165 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if Enigma is TC using only objects preplaced on the level, no Lua scripting except to create it < 1238525174 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so they selected the intel one for use in AMD64? < 1238525177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that sounds silly < 1238525203 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well there's probably a reason why Intel thought sysenter was crap and rolled their own :-P < 1238525204 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does levels have a size limit? < 1238525214 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, but it's constant for any given level < 1238525222 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my guess, btw, is it's not TC due to no infinite storage < 1238525224 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but only because of that < 1238525232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, go prove it then! < 1238525232 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah crap, I misremembered < 1238525237 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you had an unlimited source of coins, you could do a Minsky machine using time < 1238525243 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh? < 1238525245 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It wasn't a table of nops, it was a listing of ways of multiplying by constants < 1238525256 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Section 8.2 in AMD's optimization guide for family 10h < 1238525260 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how could you possibly confuse them? < 1238525269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, familiy 10h? Who cares < 1238525269 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My brain is lossy, unfortunately < 1238525272 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm on a k8 < 1238525298 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, can you tell me why http://esolangs.org/wiki/DOBELA loaded without any stylesheets or images? < 1238525300 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I refer to the newest docs in general. < 1238525306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in wikipedia-having issues style < 1238525310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: known MediaWiki caching bug < 1238525313 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :try again and it'll work < 1238525316 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238525317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :weird < 1238525328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, might break on older CPUs < 1238525333 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't give a crap < 1238525337 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the wiki is so slow i want to hit it with the saucepan, might that have something to do with it? :/ < 1238525342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, do you have a new enough one yourself? < 1238525345 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238525347 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If I can find an excuse to use SSE4.1 I will < 1238525353 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My CPU supports everything up to that, not SSE4.2 though < 1238525368 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And not AMD's 3DNow! stuff since it's Intel < 1238525379 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I would recommend using 3DNow! :P < 1238525384 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :all relevant CPUs support it < 1238525388 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Was there anything useful in there that wasn't in SSE? < 1238525402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, some stuff related to matrix dot product iirc < 1238525409 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :3DNow! is an irritating name < 1238525410 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I may misremember < 1238525426 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes, like my sound card: "SoundBlaster Live! 5.1" < 1238525439 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :! in a name is irritating < 1238525446 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And anyway, I'm smart enough to realize when I'm using an instruction from an extension... I can read the newest docs anyway so that I can get an idea of what modern CPUs are good at < 1238525467 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But, anyway, I need a 2-byte NOP. < 1238525487 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anything better than mov eax, eax? < 1238525497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I tend to prefer C with bits of ASM in the most critical parts, and pure C fallbacks while waiting for someone with PowerPC to write an altivec version or such < 1238525509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(and still pure C fallbacks after that) < 1238525549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, iirc gas' .align or .p2align inserts the best nops < 1238525555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for the situation < 1238525564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : .p2align 4,,7 < 1238525568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what did that mean now again < 1238525570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I forgot < 1238525585 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that is, if it is in a text section < 1238525589 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :otherwise it inserts 0 < 1238525598 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://sourceware.org/binutils/docs/as/P2align.html < 1238525601 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm not using GAS < 1238525623 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well try it and see what it generates, then use that in your own asm? < 1238525625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should work < 1238525763 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, nopw %cs:0x0(%rax,%rax,1) is a rather interesting nop < 1238525767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238525779 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(what the hell does that do?) < 1238525807 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Nothing, since it's a nop. :p < 1238525819 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00. That's one long-ass instruction. < 1238525823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, but what does "nopw" do? < 1238525831 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Long ass-instruction. < 1238525833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, is that was it ends up as? < 1238525843 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, stop copying xkcd < 1238525844 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238525849 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, objdumped a gas-generated nop that seemed to be just that particular one. < 1238525877 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Proposed new macro: a_nop_of_some_sort. < 1238525881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Selects randomly at compile-time. < 1238525881 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you should do: My hobby: Making the xkcd hobbies my own. < 1238525885 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For When You Just Don't Care (TM) < 1238525892 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe you should be able to ask for a NOP of a particular length < 1238525902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0 length nop: < 1238525905 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: This generates "xchg %ax,%ax" as a two-byte nop. < 1238525907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0x000000000040f122 : nopw %cs:0x0(%rax,%rax,1) < 1238525908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0x000000000040f130 : movntps %xmm0,0x632630(%rax) < 1238525911 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that seems long enough < 1238525913 0 :oerjan!unknown@unknown.invalid QUIT :"Hits wiki with the saucepan and runs for the bus ===\___/" < 1238525922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nice quit message < 1238525930 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's just the normal nop, but with that 16-bit width prefix. < 1238525936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hits bus with the wiki and runs for the saucepan < 1238525959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hits saucepan with a bus and runs for the wiki < 1238525961 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, better not < 1238525961 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: And for four? < 1238525972 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that would probably dent the saucepan < 1238525986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and we all know oerjan doesn't like his saucepan damaged < 1238525991 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Uh... < 1238525994 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : 4: 0f 1f 40 00 nop DWORD PTR [rax+0x0] < 1238526005 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(That's with "objdump -M intel -d test.o".) < 1238526017 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Woot. < 1238526017 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hits the saucepan with his fire poker and runs for the saucepan o=========E < 1238526019 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GTK on os x working nice < 1238526021 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1238526028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a very short run indeed < 1238526029 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: WHAT ABOUT THE WIKI AND THE BUS < 1238526033 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1238526034 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's funny < 1238526035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :o_O < 1238526038 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I thought you hated GTK < 1238526042 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I'm lazy, running for them would have taken a lot more work < 1238526042 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I do < 1238526043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :clearly < 1238526058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dammit < 1238526061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this is buggy < 1238526061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1238526074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Hmmh, that's 3 bytes from fasm < 1238526077 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, is it better than GTK under X on OS X though? < 1238526078 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :y/n? < 1238526088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Way more buggy, but I prefer i. < 1238526089 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :t < 1238526091 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or wait, is this doing some alignment of its own < 1238526101 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, generate some in GAS and look for yourself < 1238526104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :easiest solution < 1238526108 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I'll try http://www.gtk-osx.org/ < 1238526110 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't know how to use GAS < 1238526143 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :/ Provide alternate content for browsers that do not support scripting // or for those that have scripting disabled. This content requires the Adobe Flash Player. [[Get Flash]] < 1238526157 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : 2: 66 66 66 66 66 2e 0f nop WORD PTR cs:[rax+rax*1+0x0] < 1238526158 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : 9: 1f 84 00 00 00 00 00 < 1238526160 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(text seen on www.cadence.com with JavaScript turned off, the site is a mess like that in other ways too) < 1238526172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1238526177 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Really wonder what that does, since the opcode there is actually "nop" according to objdump-disassembly. < 1238526189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when asked to align to 128 bytes it inserts a lot of 1 byte nops instead < 1238526191 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that's strange < 1238526192 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I need a 5-byte nop after all < 1238526237 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yearrgh, SystemC (which is actually a C++ library) uses overloaded << for sensitivity lists < 1238526244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that was a bad idea even for iostreams < 1238526273 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but ze operator is pretty! ;_; < 1238526281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00. That's one long-ass instruction. <-- that is nopw %cs:0x0(%rax,%rax,1) yes < 1238526284 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or nop WORD PTR cs:[rax+rax+0x0] < 1238526285 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: 3: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0] < 1238526303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what's %rax anyway? < 1238526335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0f 2b 80 70 26 63 00 < 1238526337 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :isn't that nice < 1238526353 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think fasm is optimizing away the +0 < 1238526357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thats movntps %xmm0,0x632670(%rax) < 1238526374 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :http://ref.x86asm.net/coder.html#x0F1F just lists "0f 1f" as a real nop. < 1238526377 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I don't even have fasm < 1238526384 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have nasm, yasm and gas < 1238526390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :package manager doesn't have fasm < 1238526402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you know what %eax is? < 1238526406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1238526409 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :32-bit ax < 1238526414 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, %rax is 64-bit ax < 1238526417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought %qax was the 64-bit version < 1238526420 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no < 1238526424 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I never seen %q < 1238526430 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is %r all the way < 1238526437 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, I learnt x86 on DOS, with a 16-bit system < 1238526465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and %r8..%r15 < 1238526468 0 :kar8nga!n=kar8nga@e-136.vc-graz.ac.at JOIN :#esoteric < 1238526481 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :x86_64 is still register starved < 1238526482 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They should have added r16 as well < 1238526487 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, why? < 1238526496 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :rsp is like rip, you can't really use it for much < 1238526504 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I would prefer something more like ppc < 1238526509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with lots of registers < 1238526518 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc-bf has 64 8-bit registers < 1238526530 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :x86-64 has 8 or 16 128-bit registers though < 1238526537 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :LLVM has 1024 registers < 1238526545 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :possibly of your own size selection < 1238526549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is internally < 1238526595 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"PowerPC processors have 32 (32- or 64-bit) GPRs (General Purpose Registers) and various others such as the PC (Program Counter, also called the IAR/Instruction Address Register or NIP/Next Instruction Pointer), LR (link register), CR (condition register), etc. Some PowerPC CPUs also have 32 64-bit FPRs (floating point registers). " < 1238526596 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Parrot has any number of registers you like. :p < 1238526605 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :source: http://www.ibm.com/developerworks/library/l-ppc/ < 1238526607 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :parrot's an HLVM, though < 1238526617 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, no reason a given compilation can't use both parrot /and/ llvm < 1238526626 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, err x86_64 has 16 of them < 1238526628 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :x86 may have 8 < 1238526639 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: SSE or SSE2 give the additional 8 < 1238526642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but x86_64 in 64-bit mode always have 16 SSE registers < 1238526642 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Can't remember which < 1238526648 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't have to < 1238526655 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, err on x86_64 it has to < 1238526665 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You can have an x86-64 processor which doesn't support SSE < 1238526672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, check docs? < 1238526695 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"The x86-64 extensions from AMD (originally called AMD64) and later duplicated by Intel add a further eight registers XMM8 through XMM15." Of course a quotation from Real Docs would be better. < 1238526699 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you're right then it's all the better < 1238526711 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why are you complaining about registers if you have 16 128-bit ones? :-P < 1238526712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I remember reading something like that yes < 1238526719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, because they aren't GPR < 1238526723 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :they are SIMD < 1238526728 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can't do GPR stuff on them < 1238526734 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You can put stuff there instead of in memory < 1238526742 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And it'll be faaaaaaster < 1238526754 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes but you can't easily do all the types of operations in them < 1238526761 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Although I'm not actually sure wrt L1 cache whether it's faster to push/pop or movd/movd < 1238526762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is very good for stream processing yes < 1238526764 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I would prefer SPARC's register windows, at least they're not just boring simple registers that just stand there twiddling their thumbs (do registers have thumbs?) and do nothing. < 1238526787 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If push puts something in L1 it might be faster than moving to an XMM register < 1238526791 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And likewise for pop < 1238526792 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, check AMD's optimising guide as well as the intel one < 1238526797 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For what < 1238526799 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :usually prefer the AMD ones < 1238526806 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I know that push has a lower latency < 1238526808 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I think I remember reading about push/pop vs. mov there < 1238526821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, mov was better for scheduler or something < 1238526823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1238526823 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :vs. mov sure, but what about vs. XMM mov < 1238526827 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :movd and movq and whatnot < 1238526828 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238526832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238526856 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm talking about moving between GPR and secondary storage, where the latter is either the stack or an XMM register < 1238526869 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, the licence on the SystemC standard is really strange < 1238526876 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can download it for free, but only once < 1238526882 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can only keep one copy < 1238526890 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1238526895 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, CVTTPS2PI you PFRSQIT1 of a CVTTPS2DQ! < 1238526896 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238526899 0 :Mony!unknown@unknown.invalid QUIT :"Quit" < 1238526916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :all real MMX and SSE instructions yes < 1238526924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe SSE2 or SSE3, unsure < 1238526925 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Looks like floating-point stuff < 1238526925 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You can print your own copy of the Java VM specification, but only once. Better not lose the papers! < 1238526933 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: yep, same rule on printing < 1238526936 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can only print your copy once < 1238526940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I just selected some cryptic names from AMD docs < 1238526943 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION checks what they do < 1238526949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what a really strange rule, I don't see what its purpose is < 1238526982 0 :kar8nga!n=kar8nga@j-230.vc-graz.ac.at JOIN :#esoteric < 1238526997 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"You may print this book once. For the complete copyright notice, see [Copyright]." Then the copyright notice says absolutely nothing about printing. < 1238527027 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, CVTTPS2PI (Convert Packed Single-Precision Floating-Point to Packed Doubleword Integers, Truncated) you PFRSQIT1 (Packed Floating-Point Reciprocal Square Root Iteration 1) of a CVTTPS2DQ (Convert Packed Single-Precision Floating-Point to Packed Doubleword Integers, Truncated)! < 1238527028 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, in the case of the IEEE SystemC standard, they had a rather scary-looking EULA < 1238527030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1238527030 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :before download < 1238527043 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Toldya it was floating point < 1238527049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yeah < 1238527053 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but crazy instructions < 1238527084 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, PFRSQIT1 is 3DNow btw < 1238527104 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AltiVec has 32 of those 128-bit registers. < 1238527116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, cool < 1238527128 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a lot better than x86_64 as usual < 1238527134 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But you can't move from scalar registers to altivec regs, just load/store in a RISCy way. < 1238527135 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I really don't see why Apple went Intel < 1238527136 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1238527145 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, ok that is a downside < 1238527158 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Because people don't write asm, compilers do, and x86-64 happens to be more performant than PPC :-P < 1238527184 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :At least, that's my suspicion. There could be some non-technical reasons as well. < 1238527190 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also it is a "business decision", which... right. < 1238527191 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, PPC had atomic load-link-store thingies iirc < 1238527211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or has rather < 1238527242 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :current pyfunge (rev 1cde4290a9e6) got no BAD from mycology... first ever! ;) < 1238527258 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1238527265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :any dubious UNDEFs? < 1238527367 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238527406 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :ais523: maybe none, i manually checked the output and cannot find any supicious things < 1238527422 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :suspicious* < 1238527655 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, what about mycouser.b98? < 1238527665 0 :neldoreth!unknown@unknown.invalid QUIT :"leaving" < 1238527686 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, check also echo -e "a9b" | ./pyfunge mycouser.b98 and such < 1238527687 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh and < 1238527693 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1238527695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :echo -e "a9" | ./pyfunge mycouser.b98 < 1238527699 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to check what happens on EOF < 1238527700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1238527709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, make sure that all works < 1238527718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it can take some time to get it right < 1238527739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, and - is ignored on input or should be iirc < 1238527747 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in it is treated non-numeric < 1238527752 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that is right isn't it? < 1238527762 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :while testing other code i knew pyfunge sometimes ignore EOF... i'll fix it. < 1238527770 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, sounds about right < 1238527773 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :btw really? hmm. < 1238527794 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Decimal input reads and discards characters until it encounters decimal digit characters, at which point it reads a decimal number from those digits, up until (but not including) the point at which input characters stop being digits, or the point where the next digit would cause a cell overflow, whichever comes first." < 1238527797 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And - is not a digit. < 1238527804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, all input should share one buffer too < 1238527828 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :from readme in cfunge: < 1238527829 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : * Standard input is read one line at a time and buffered internally. Those < 1238527830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : instructions reading chars fetch one char from this buffer, leaving the rest < 1238527830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : (if any) including any ending newline. Instructions reading an integer will < 1238527830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : leave anything after the integer in the buffer with one exception: if the < 1238527830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : next char is a newline it will be discarded. < 1238527850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that sounds right to you? < 1238527857 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it may be out of date btw < 1238527859 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, sounds about right < 1238527874 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, input from STRN also fetch from same buffer < 1238527887 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What's that newline-discarding exception about? < 1238527888 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :same for BASE too < 1238527894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, don't remember. < 1238527908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think I basically checked what ccbi --help or whatever said and did the same < 1238527921 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Heh, you're a de-facto standard. < 1238527923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because it was a pain to get it right with the standard < 1238527934 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I know. :-) < 1238527955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, that was true for many RCS fingerprints too, I mean I even looked at RCS source sometimes, but CCBI sources were much cleaner < 1238527962 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so usually I preferred that < 1238527967 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: If you'd define 22+ to leave 5 on the stack, half of the world's interpreters would follow. < 1238527975 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1238527981 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, now we are only missing the !Befunge author < 1238527995 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :From what < 1238527997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, no I would report it as a bug in mycology and/or ccbi < 1238528000 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There are other interpreters as well < 1238528022 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh true. I mean him to email you about how he just found mycology < 1238528025 0 :tombom!unknown@unknown.invalid QUIT :"Peace and Protection 4.22.2" < 1238528040 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like Mike Riley and now lifthrasiir did < 1238528049 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1238528050 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And Jerome < 1238528056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, Jerome was? < 1238528057 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :?? < 1238528062 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why doesn't Language::Befunge get any love here? :-P < 1238528064 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238528066 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :People always forget about it < 1238528069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I don't < 1238528072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!Befunge is being revived? < 1238528072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, because it has a hard to remember name < 1238528073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Awesome! < 1238528076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wanted that! < 1238528077 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no < 1238528078 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :well i have only one input buffer from pyfunge.platform, so it should not be a problem... right? < 1238528081 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dammit < 1238528083 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 'jqbf' then < 1238528085 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I just said that was all that was missing < 1238528089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, even harder < 1238528090 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: why did you like !Befunge in particular? < 1238528093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: If you want it so much, email him < 1238528095 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: RISC OS? < 1238528098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :19:33 AnMaster: Deewiant, oh true. I mean him to email you about how he just found mycology < 1238528101 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also jerome hasn't been in here has he? < 1238528111 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Read the context < 1238528121 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No, I don't think so. Not sure though. < 1238528122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I did < 1238528123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you have a 1-line scrollback? ~~ < 1238528126 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It still doesn't make any sense < 1238528131 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Was it meant to be a joke? < 1238528137 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ... it makes perfect sense. < 1238528142 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What doesn't make sense? < 1238528161 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: !Befunge author saw mycology! Really? No! Duh! < 1238528166 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Haha: "-- I think AnMaster trusts CCBI a bit more than he should --" < 1238528170 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: That's not what he said. < 1238528178 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you misquoted < 1238528184 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: De-facto standard, like you said. :-P < 1238528185 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... no i didn't? < 1238528188 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant, now we are only missing the !Befunge author < 1238528190 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : There are other interpreters as well < 1238528193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant, oh true. I mean him to email you about how he just found mycology < 1238528200 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how doesn't that make sense < 1238528209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because you then go on to deny that the !befunge author found mycology < 1238528215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no < 1238528218 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Where does he affirm that in the above < 1238528219 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :stop being stupid < 1238528228 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Deewiant, oh true. I mean him to email you about how he just found mycology < 1238528233 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: He said (1) that !Befunge's author is missing. < 1238528240 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Then (2) I queried him as to what exactly he meant. < 1238528260 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Then (3) he explains what he meant: he meant that he's the only one who hasn't emailed me. < 1238528269 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Yay for overloading 'he') < 1238528274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1238528280 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster's broken english strikes again < 1238528280 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bbl I have other things to do than argue about this. First however I wish to readjust my assertion above about ehird not being an idiot: I'm not sure about that any more < 1238528312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"I mean him to email you about how he just found mycology" -->AnMaster sucks at English filter--> "I meant to email you about how [he emailed me telling me] he had just found mycology" < 1238528321 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Incorrect filter. < 1238528328 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: garbage in garbage out < 1238528345 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: 'I meant him not having emailed you...' < 1238528352 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or something, would be more accurate. < 1238528364 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: "he¹ meant that he²'s the only one who..." < 1238528365 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or right, now I misread what you said. < 1238528370 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: :-) < 1238528378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : /ignore chan:#esoteric type:highlight time:5 < 1238528378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1238528380 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, my keyboard only goes up to ³ < 1238528383 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries again without space < 1238528397 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Mine goes up to ¹¹! < 1238528407 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that's cheating < 1238528408 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You turn off highlights? That might explain why you highlight others so much :-P < 1238528411 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Haha :-D < 1238528417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I can do ¹²³ < 1238528419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :¹²³¼¢⅝÷«»°¿¬ < 1238528425 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: http://en.wikipedia.org/wiki/Up_to_eleven < 1238528430 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :¹²³£¥ĦÐÞ“” < 1238528435 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :—÷ < 1238528439 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ¹²³€½¾{[]}¡⅛£¼⅜⅝⅞™±° < 1238528444 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(that's with and without shift) < 1238528447 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :different keyboard layouts < 1238528456 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm aware of the meme < 1238528457 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :¹²³£¥ĦÐÞ“”—÷ with, ¡ºª¢€ħðþ‘’–× without < 1238528468 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Just making sure < 1238528472 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :1234567890+ !"#¤%&/()=? ¡@£$€¥{[]}\¹²³¼¢⅝÷«»°¿ < 1238528489 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :¿~? < 1238528492 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : This "In popular culture" section may contain too many minor or trivial references. Please remove insignificant entries, and reorganize this content. (March 2009) < 1238528494 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :hmm... is there any appropriate trefunge program for testing? < 1238528500 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :normal, shift, altgr, altgr+shift < 1238528502 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: There's that editor < 1238528504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :IIRC there's a trefunge editor < 1238528506 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :written in trefunge < 1238528507 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though I forgot space there < 1238528514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure how it works < 1238528516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, there is no test suite afaik < 1238528522 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Maybe you should spend some time writing "Trungyfonology" or something. < 1238528532 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, I really shouldn't. :-P < 1238528533 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just make a version of Mycology that handles any number of dimensions < 1238528543 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :that was http://www.imaginaryrobots.net/projects/funge/code/funged.3f, and it needs many yet-unimplemented fingerprints... hmm. < 1238528544 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Somewhat impossible. < 1238528546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, ccbi doesn't support trefunge, nor does cfunge, so I fail to see how it would work < 1238528549 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: why? < 1238528568 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well actually not impossible, just extremely inconvenient. < 1238528569 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, since Deewiant only test stuff ccbi supports < 1238528575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just use only Unefunge commands that don't need vectors until you've run a y to find out dimension count < 1238528599 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, what specific fingerprints? < 1238528607 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yeah, and then I'd have to have a zero-pad loop prior to every vector-using instruction. < 1238528619 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which would be somewhat of a pain. < 1238528628 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, also it depends on how rcfunge misimplements fingerprints < 1238528633 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so basically: don't do it < 1238528635 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Oh, it does? < 1238528638 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I didn't know that < 1238528644 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes, and it loads FNGR < 1238528648 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: FNGR and NCRS. awww. < 1238528654 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as far as I can figure out it uses FNGR to workaround < 1238528654 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, FNGR can be done < 1238528663 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, what is wrong with NCRS? < 1238528670 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Since FNGR's new specs just state the way () should behave when it's loaded < 1238528672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, I implement NCRS in cfunge. < 1238528684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, FNGR I wouldn't implement < 1238528687 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :not yet a high priority... ;) < 1238528688 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FING sure < 1238528691 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't think he said anything was wrong, just that it's one he hasn't implemented. < 1238528700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, yeah NCRS was rather low priority for me too < 1238528704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :added it in cfunge 0.4.0 < 1238528707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which was released today < 1238528715 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Do you have TERM and NCRS now? < 1238528717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm right < 1238528721 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes... < 1238528736 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I might have to take a look at that then, to get TERM running on POSIX < 1238528739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, loading order should work fine for TERM anywhere I hope < 1238528750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I had TERM since several releases < 1238528753 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :eventually i'll implement them (not FNGR though) but my high priority is an usable interpreter now. < 1238528764 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw you can only do NCRS 1I once and 0I once < 1238528768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :following specs there < 1238528770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in fact < 1238528798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it says you shouldn't do it more than that < 1238528799 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which specs < 1238528799 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, NCRS specs < 1238528805 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Silliness < 1238528818 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :while analyzing mycology i felt that many corner cases are still untested, so i'm adding regression tests for now. < 1238528820 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, not silly. I had segfaults inside ncurses otherwise < 1238528827 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Also silly :-P < 1238528844 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, cfunge safeguards against that with tracking state and reflecting if it is done the wrong way < 1238528894 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What about TERM/NCRS interaction... can TERM be used after NCRS has done 0I, for instance? < 1238528920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes NCRS does a call into TERM and vice verse to inform each other of the state of each < 1238528931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so hopefully all interactions should work correctly < 1238528938 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Meh, interdependent fingerprints < 1238528949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well they are, there is no way to avoid it < 1238528958 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They're independent in Windows < 1238528993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well my TERM doesn't depend on ANSI escape codes < 1238529007 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it will work with any terminal supported in terminfo/termcap < 1238529009 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Neither does mine < 1238529013 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My TERM doesn't work, period :-P < 1238529017 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Except in Windows) < 1238529029 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't even have a TERM. :p < 1238529030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what about non-cmd.exe on windows? < 1238529030 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Windows is so much easier in this respect < 1238529049 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't know, depends on if they're implemented correctly. < 1238529049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, say, rxvt from msys or windows powershell? < 1238529070 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Powershell should definitely work, I'd be very surprised if it didn't. < 1238529074 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238529076 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, these are Windows system calls < 1238529081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and rxvt from msys? < 1238529087 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't know, depends on if they're implemented correctly. < 1238529087 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't know, depends on if they're implemented correctly. < 1238529089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238529098 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hey stop turning ehird < 1238529127 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, echo $TERM? I think NCRS and TERM fails if that isn't set < 1238529128 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You're using the FooConsoleBar functions? < 1238529133 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep. < 1238529143 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, Ex! Dammit you forgot Ex < 1238529151 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They're not Ex, though. :-P < 1238529165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, unusual. I'd say suspicious even. < 1238529175 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, very usual. :-P < 1238529180 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, more AnMaster Windows-sucks humour. < 1238529187 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hah hah 12 parameters Ex ohhh I'm in stitches. < 1238529190 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Do you call AllocConsole there "just-in-case"? If you did (and ignored it failing, since it fails if the process already has a console) then it'd work no matter where, it'd just open a new console window if it was started without. < 1238529205 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, I don't, I expect a console to exist. < 1238529221 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I do check the functions' return values though so I guess nothing would happen if there wasn't one. < 1238529225 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it is actually pretty funny, admittedly < 1238529235 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Fooled me you could have. < 1238529236 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, you could mark the process as one wanting a console iirc? Or maybe that just means MSVC inserting an AllocConsole() "just-in-case"? < 1238529275 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't the executable itself embed whether it's to run in a console or not? < 1238529282 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no < 1238529290 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it runs in a console if it tries to open one, IIRC < 1238529308 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or actually, it's probably something to do with the params to winmain < 1238529311 0 :kar8nga!unknown@unknown.invalid QUIT :Connection timed out < 1238529312 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It seems to me that it's a link-time option whether it should have a console or not < 1238529312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway it is likely that if TERM/NCRS interaction mess up that you will get Really Bad Results(TM), as in null dereference or such < 1238529314 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there are quite a few there that people forget about < 1238529321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there should be guards for it where needed < 1238529323 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: presumably that depends on what startup code it links against < 1238529331 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Possibly < 1238529337 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There is a PE header field that is specific for "console executables", though. < 1238529351 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The Subsystem field; it can be WINDOWS_GUI or WINDOWS_CUI; for a GUI app, or for a console app. < 1238529363 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when is accessing an invalid memory address safe? < 1238529368 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't be surprised if the system took care of creating a console if the .exe has WINDOWS_CUI there. < 1238529368 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(not a trick question) < 1238529374 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What do you mean by invalid? < 1238529397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, as in not mapped so you can access it, say NULL or otherwise one that would end up in a segfault normally < 1238529425 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's never safe? < 1238529431 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there is one specific case < 1238529442 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that you should know considering what you have been doing lately Deewiant < 1238529452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I would have expected you to be aware of this < 1238529475 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't know that much when it comes to asm-level stuff < 1238529490 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :PREFETCH... duh < 1238529490 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Tch Deewiant how dare you not know. < 1238529493 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Tut tut. < 1238529498 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Prefetch? < 1238529500 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Duhhh. Are you stupid or something? < 1238529505 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Shaddup. :-P < 1238529514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: DUHHH. < 1238529524 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Explain or refer? < 1238529555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, GCC docs for __builtin_prefetch() says it clearly, but I have also seen it in amd manuals < 1238529562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't remember exactly where < 1238529582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"If a cache hit occurs, or if a memory fault is detected, no bus cycle is initiated and the instruction is treated as a NOP." < 1238529585 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :AMD < 1238529590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the third pdf < 1238529600 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with the General instruction reference < 1238529609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for PREFETCH/PREFETCHW < 1238529614 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right, so what you're saying is that prefetching memory you can't access is a nop < 1238529620 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't call that accessing the memory < 1238529621 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yep < 1238529629 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well I'd say it was < 1238529648 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :All you're doing is saying "hey, prepare this for me so I could mess with it faster" < 1238529655 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You're not actually reading or writing < 1238529705 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Data prefetch does not generate faults if addr is invalid, but the address expression itself must be valid. For example, a prefetch of p->next will not fault if p->next is not a valid address, but evaluation will fault if p is not a valid address." < 1238529710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :from GCC docs < 1238529714 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html < 1238529741 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, It is in fact a memory access, though indirectly < 1238529764 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hey I just thought of a new NOP: prefetch (%rip) basically < 1238529780 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if I should try to get back into Perl. < 1238529781 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Attempting to access memory that would normally result in a segfault is "safe" also if you're prepared for the segfault. < 1238529791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh < 1238529796 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but that isn't same < 1238529820 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's more squibbling over definitions, sure. In this case it's the word "safe"; before, it was the word "access". < 1238529856 0 :olsner!n=salparot@h-60-96.A163.priv.bahnhof.se JOIN :#esoteric < 1238529861 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well maybe I was a bit unclear. But what would you have suggested instead that wouldn't have included the word "prefetch" or something as revealing as that < 1238529863 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I was going to say that but I decided I'd not < 1238529890 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1238529902 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I would probably just not have asked the question, to tell the truth. < 1238529908 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1238529913 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's a cop-out. < 1238529935 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A cop-out is when you go and arrest criminals. < 1238529962 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Actually, it isn't! < 1238530013 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Cop out is an idiom meaning to avoid taking responsibility for an action or to avoid fulfilling a duty. -- See also -- Weasel word" < 1238530020 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Ooh, it's one of the dreaded weasel words. < 1238530190 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Happy Australian Mailman Reminders Day, everyone! < 1238530200 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Y'wot? < 1238530214 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: explain for Deewiant? < 1238530220 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1238530222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's a sekrit. < 1238530228 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not a very good secret < 1238530241 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's a googlewhack < 1238530258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: search sans australian < 1238530263 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then realise that the Agora lists were first in Australia < 1238530268 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and timezones < 1238530273 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :taking out australian will tell you the full story < 1238530275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, googlewhack? < 1238530286 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just I announce it a day early, because I'm subscribed to an Australian mailing list < 1238530289 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's in a different timezone < 1238530315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10:07:13 happy australian mailman reminders day < 1238530316 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10:07:25 * AnMaster opens mail client < 1238530318 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10:07:33 none yet < 1238530319 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10:07:43 i said australian < 1238530321 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10:07:47 ah < 1238530322 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(from the logs for Jan 31) < 1238530331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's quite a #esoteric tradition, I think < 1238530342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I expect to get freebsd ones tomorrow evening < 1238530352 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :apart from that I don't get any < 1238530354 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh right, GNU Mailman. < 1238530364 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking of snailmailmen. < 1238530375 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so was I first time < 1238530382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anywya < 1238530385 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway* < 1238530393 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have seen mailman with the option turned off < 1238530397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just FYI < 1238530409 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Mailman is GNU? < 1238530412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sf.net hosted mailman lists turn it off by default iirc < 1238530415 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, think so < 1238530427 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that seems unlikely, there isn't a copy of the AGPL attached to every reminder email it sends out < 1238530433 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it is < 1238530434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what is googlewhack though? < 1238530443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: just look at the horrid UI and design decisions < 1238530471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://www.justfuckinggoogleit.com/?q=googlewhack < 1238530471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant++ < 1238530474 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's been a long time since I last used that alias < 1238530483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: does it need JavaScript turned on? < 1238530491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: why not click and find out < 1238530495 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, it is not stupid like letmegooglethatforyou < 1238530499 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because I don't like clicking on random websites < 1238530500 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually I'll just wikipedia it < 1238530501 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :so what time is it there, not yet March 31? < 1238530504 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it works better < 1238530505 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1238530507 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: letmegooglethatforyou is more snarky though. < 1238530511 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wikipedia doesn't work well as a verb < 1238530511 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1238530515 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It confused me the first time I saw it. < 1238530517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION pastes http://www.justfuckinggoogleit.com/ into Google < 1238530526 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ? < 1238530540 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You're tampering with forces you don't fully comprehend < 1238530544 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Choose a domain name - www.justfuckinggoogleit-com.co.cc is available//Full DNS control and domain management - www.co.cc , Free domain names + free DNS, ... < 1238530551 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1238530554 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm trying to make ehird's head explode < 1238530576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ehird: It confused me the first time I saw it. <-- yeah you mean: "Enable javascript to use LMGTFY." < 1238530586 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1238530595 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://lmgtfy.com/ has a Swedish translation here < 1238530596 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1238530611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://lmgtfy.com/?q=let+me+google+that+for+you < 1238530622 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://209.85.229.132/search?q=cache:5XAtqRmmkW0J:justfuckinggoogleit.com/info.html+http://www.justfuckinggoogleit.com/&hl=en&client=firefox-a&gl=uk&strip=1 < 1238530623 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :&l=1 < 1238530625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually, I have javascript enabled < 1238530626 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just < 1238530630 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :konq fails < 1238530644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ok, now make that recursive < 1238530659 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we need to link a term to http://lmgtfy.com/?q=&l=1 < 1238530662 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to googlebomb it < 1238530662 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Needs javascript < 1238530663 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : http://209.85.229.132/search?q=cache:5XAtqRmmkW0J:justfuckinggoogleit.com/info.html+http://www.justfuckinggoogleit.com/&hl=en&client=firefox-a&gl=uk&strip=1 < 1238530663 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : &l=1 < 1238530664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1238530667 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that looks odd < 1238530702 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It might be possible to specify a javascript: URL there in which case it could be done < 1238530727 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how < 1238530728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://www.alexa.com/data/details/traffic_details/justfuckinggoogleit.com/justfuckinggoogleit.com?h=300&h=400&range=6m&site0=justfuckinggoogleit.com&site1=lmgtfy.com&site2=&site3=&site4=&size=Medium&w=470&w=700&y=r&z=1&z=1 < 1238530746 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait, darn < 1238530773 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Never mind, can't be done that way < 1238530833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, tell me, how does alexa work? < 1238530842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean, how do they know < 1238530856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: spyware < 1238530864 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although legitimate spyware < 1238530865 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and you link to it?! < 1238530867 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, you download it from them < 1238530867 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wth < 1238530878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, this is so screwed... < 1238530888 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :of course, it's in the interest of companies to download the alexa toolbar < 1238530897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the computers there are set to the company's homepage < 1238530900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Google.com has a traffic rank of: 1" < 1238530900 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it boosts the alexa rank < 1238530900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238530917 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: spyware is illegitimate by definition < 1238530919 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :alexa isn't spyware < 1238530924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Live.com has a traffic rank of: 4 < 1238530930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :google wins of course < 1238530935 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: my definition's obviously different to yours < 1238530950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Making a better Internet < 1238530951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Alexa could not exist without the participation of the Alexa Toolbar community. Each member of the community, in addition to getting a useful tool, is giving back. Simply by using the Firefox and IE toolbars each member contributes valuable information about the web, how it is used, what is important and what is not. This information is returned to the community as Related Links, Traffic Rankings and more. < 1238530955 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they're upfront about what it does < 1238530957 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's not spyware < 1238530960 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's not SPYing on you < 1238531094 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, would you use it though? < 1238531105 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and < 1238531109 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. Not personally. < 1238531117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would you like it "spying" on your bank logins? < 1238531127 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how can you know it won't look at https < 1238531131 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That would be a valid compliant, AnMaster, if it actually did that. < 1238531134 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does it do that? < 1238531144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, proof it doesn't? < 1238531154 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: let's never install any software < 1238531161 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it could attach to our browsers and spy on our bank logins < 1238531172 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Your hardware could do it too! < 1238531174 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :booooh! scary ghost! woooh! are you scared yet? Be scared. < 1238531181 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :EVERYONE IS OUT TO GET YOU. < 1238531240 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes and? It isn't exactly news < 1238531250 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is why I never do bank stuff over internet personally < 1238531256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... lol < 1238531264 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I go to the bank office < 1238531287 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That /is/ smarter, I'm just too lazy myself < 1238531304 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I probably would do that if I lived across the street from a bank or something < 1238531320 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But it's a 5 min walk away, too far :-P < 1238531327 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well four and a half block in my case < 1238531337 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :A 'block' carries no meaning at all < 1238531345 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Speak in terms of distance or time < 1238531350 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, true, they are very different size < 1238531353 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Unless there's a Swedish standard block I'm unaware of < 1238531368 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm, maybe 5 minutes walk I'd guess < 1238531373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't know distance < 1238531378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and google earth res is too poor here < 1238531388 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can barley see the town at all in google earth < 1238531392 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Me: Walk down short street, walk up the bank, walk to the end of the main street, bank. < 1238531397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :5-7m. < 1238531412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5-7 meters from a bank? < 1238531419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Minutes. < 1238531421 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238531435 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Those would be some short streets had that been metres :-P < 1238531446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well yeah < 1238531469 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, my street is just like 6 houses. < 1238531471 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Our local bank office people use MSN for intra-office communication. At least that's what the clerkperson said; I'm secretly hoping it is at the very least an internal Jabber server, and the girl just said "MSN" because any sort of instant messaging == MSN. < 1238531475 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20 second walk. < 1238531487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: MSN-for-workplaces is a Microsoft thing they sell. < 1238531489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It is probably MSN. < 1238531508 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Does it use Microsoft's servers for all message-passing, though? < 1238531516 0 :Nawak!n=user@213.49.144.30 JOIN :#esoteric < 1238531536 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi Nawak < 1238531543 0 :Nawak!unknown@unknown.invalid PART #esoteric :? < 1238531545 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, more like 7 here < 1238531545 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: yar I think so < 1238531548 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bye Nawak < 1238531551 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WE MISSED YOU < 1238531571 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so when will you update mycology status page next? I assume it is safe to ask since CCBI-2 is put on hold right? < 1238531592 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :When I feel it's worth it < 1238531592 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you won't do the mycoedge stuff < 1238531594 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe when Pyfunge has MycoTRDS done < 1238531602 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: And will you put jitfunge results there if I manage to get a respectable score before that? :) < 1238531603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that could take ages < 1238531605 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :will mycoedge be part of the main mycology? < 1238531611 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: A separate file < 1238531617 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Short, though. < 1238531621 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: how does jitfunge mycologize atm? < 1238531629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: any particular reason for that? < 1238531637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, the mycoedge copy I have had a bug according to the hs author iirc < 1238531638 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1238531638 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Easier to work with < 1238531641 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so any fixed version= < 1238531642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1238531645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I should find some text i need to process to use Perl on. < 1238531646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ooh. < 1238531648 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: So that one 'p' results in a change in the bounds. < 1238531654 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe to fix up my log-getting script. < 1238531655 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: With Mycology, I'd have to kill a whole row/column. < 1238531674 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No, none. Trivial to write tho. < 1238531678 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: why not just p to negative fungespace < 1238531680 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You could even do it yourself ;-) < 1238531684 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yess, WWW-Mechanize... good good < 1238531685 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then p to wipe out that negative value? < 1238531698 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or same for high positive < 1238531716 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, I guess that'd work too. < 1238531740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, then someone would implement buggy initial file bounds < 1238531749 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Although then AnMaster could optimize by only changing the bounds when it's outside his static array :-P < 1238531767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I never optimise away correctness < 1238531786 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I'm not doing "worse is better" design < 1238531787 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: but how fast would cfunge run if you did? < 1238531794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, faster probably < 1238531802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They should make a "use sane;" that does: < 1238531802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[[ < 1238531804 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use strict; < 1238531806 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use warnings; < 1238531806 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why not just hard code the output of mycology < 1238531808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use diagnostics; < 1238531809 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use autodie; < 1238531811 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use utf8; < 1238531814 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :]] < 1238531814 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :autodie isn't san < 1238531815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*sane < 1238531820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: whyever not? < 1238531826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, somewhat like ick's "compile to shellscript" < 1238531827 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It makes it use proper exceptions < 1238531829 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As It Should Be < 1238531830 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Mycology isn't meant to be a 100%-testing suite anyway, much of it is drawing attention to some corner cases and then hoping that people will think about where else in their code such cases might apply. < 1238531835 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Perl doesn't have proper exceptions < 1238531836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just die < 1238531844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ding! Wrong < 1238531849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I mean, autodie throws /strings/ < 1238531853 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that isn't a proper exception < 1238531857 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FYI: Included with cfunge is some additional test suites < 1238531859 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hrm. < 1238531861 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Python used to throw strings! < 1238531863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't Moose have something for exceptions < 1238531863 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that I found I needed for extra code coverage < 1238531871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Moose has something for everything < 1238531876 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :C++ can throw strings, if you're so inclined! < 1238531877 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you might want to check them (and any comments in them) for ccbi too < 1238531883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ignore the .f109 ones < 1238531886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, autodie is _useful_ < 1238531888 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or .b109 rather < 1238531889 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I did get up to "k reflects" (because I haven't implemented that at all), but then I broke something earlier. < 1238531899 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I only do about 2 or 3 things it would trigger on anyway < 1238531902 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :per program < 1238531907 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess I can drop `use utf8;` since I don't have any of them moon speak thingies < 1238531918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and use utf8 only means that your script's in UTF8, IIRC < 1238531921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And I guess I can write dying stuff myself < 1238531921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, åäö < 1238531922 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes < 1238531924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's like a BOM, just longer and in text < 1238531930 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: BOM = windows shit < 1238531935 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway it should be the default < 1238531939 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's only not because of legacyyyyyyyyyy < 1238531946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use strict; < 1238531946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use warnings; < 1238531948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err they meant BOOM < 1238531948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use diagnostics; < 1238531949 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OK, that's better. < 1238531955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Microsoft that is < 1238531955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but < 1238531960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Marketing didn't allow it < 1238531971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because it would make too many realise the truth < 1238531976 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :about Microsoft and windows < 1238531980 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: please stop trying to be funny it's awful < 1238531993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I only did it to irritate you :P < 1238532004 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(you done that a lot to me before, time to attack back) < 1238532006 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you have srs issues < 1238532025 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I just do strict+warnings on top of every script, since I can't read the "use diagnostics;" error messages; they are so verbose, my eyes glazeth over. < 1238532035 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you have said you did such to me before, so that implies you too have serious issues. < 1238532052 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes but I don't do it all the damn time, only when you irritate me < 1238532059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, same < 1238532069 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I only do it when you irritate me < 1238532073 0 :pikhq!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1238532075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You're as irritable as Wooble. < 1238532082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION breathes ← irritating < 1238532098 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so are you. I mean don't you realise you are being trolled right now? Like you usually do against me. < 1238532104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and then point out you trolled. < 1238532109 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :happened a few times. < 1238532121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it really is heartwarming see you try and backtrack and try a new strategy. < 1238532124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though I think this is meta-trolling < 1238532164 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ok that was an interesting reply. Sounds like same basic concept as some I tried before on you though. < 1238532270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't even know of use diagnostics; < 1238532280 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what does it do? < 1238532281 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although interestingly, Moose auto-includes strict and warnings < 1238532321 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"This module extends the terse diagnostics normally emitted by both the perl compiler and the perl interpreter, augmenting them with the more explicative and endearing descriptions found in perldiag." < 1238532323 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about elks then? < 1238532326 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That is what it does. < 1238532354 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :perl compiler < 1238532355 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what < 1238532357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since when? < 1238532366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: lern2understandimplementationdeatailsofperl < 1238532376 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I thought perl was interpreted and/or bytecode? < 1238532379 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bytecode. < 1238532384 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it compiles to bytecode. < 1238532388 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: do you have a solution to the 'cpan is a verbose, questiony whore' problem < 1238532391 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1238532404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, but it doesn't produce bytecode files does it? < 1238532408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1238532411 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That I do not have. < 1238532414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://search.cpan.org/~chromatic/Modern-Perl-1.03/lib/Modern/Perl.pm <-- this looks nice < 1238532420 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, the perl5 "compiler" is more just a parser < 1238532426 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the parse tree is interpreted < 1238532445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just the interp and parser call each other a lot, because of things like BEGIN and eval < 1238532445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238532461 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, a mess really is it? < 1238532473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1238532482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they're ripping the mess out and starting again for perl6 < 1238532488 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is partly why it's taking so long to implement < 1238532506 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Ran through your tests, nothing new there for CCBI (one semi-new which I fixed this morning and haven't released); I disagree that ='s return value being the return value of system() directly is BAD < 1238532506 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, DNF or Perl6, which do you think will be done first? < 1238532506 0 :neldoreth!unknown@unknown.invalid QUIT :No route to host < 1238532508 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Perl 6 is far more messy. < 1238532518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: dnf will be written in perl6 < 1238532525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, which was that semi-new < 1238532525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :& have the new mbv as soundtrack < 1238532531 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 0k x < 1238532531 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :everyone knows that < 1238532539 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the most annoying thing about perl6 is that there's clearly progress being made < 1238532546 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just it doesn't seem like they'll ever finish < 1238532552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and yes the sysexec one is cfunge specific as mentioned in the file iirc < 1238532567 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh and rc/funge segfaults on some of those tests iirc < 1238532577 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Ah, you're right, I didn't check. < 1238532579 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so might be worth adding some of that to mycology, just for fun < 1238532580 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And heh. < 1238532601 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, pretty sure it fails to handle division by zero in some fingerprint < 1238532620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, there? You may want to take a look on the cfunge test cases < 1238532626 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I love how RC/Funge uses gets < 1238532630 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw, 0k x? I don't remember that one < 1238532631 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's so quaint < 1238532646 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I saw gets() in mosaic too, but that is the only other place < 1238532651 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: iterate-zero.b98 < 1238532662 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: thank you for information. (i'm not yet slept... hehe.) < 1238532670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, mbv? < 1238532681 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :some other delayed project I guess < 1238532690 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh that right < 1238532712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well the 109 tests are more extensive for iterate really < 1238532724 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: mbv=my bloody valentine, shoegazer rock band from the 80s/90s who haven't released an album since 1992 but apparently it's still happening (not, as a cursory glance at their name would seem to imply, an emo band or the like) < 1238532735 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, together both sets run all the relevant code paths for iterate in cfunge < 1238532743 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: k@ seems to crash RC/Funge < 1238532750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, really? interesting < 1238532760 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :*** glibc detected *** ./funge: double free or corruption (!prev): 0x0000000000633010 *** < 1238532767 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: for killing a thread, or for killing the program, or both? < 1238532771 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hah < 1238532779 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it should only kill current thread < 1238532784 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: A thread, it dies after the first @ and can't iterate any more. < 1238532786 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it used to segfault cfunge way way back < 1238532793 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :found it with fuzz testing < 1238532821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to figure out how tests/iterate-zero.b98 works < 1238532826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1238532827 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It is, in fact, double-free. < 1238532841 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I can't see 0k x < 1238532845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :only 0k v < 1238532846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and such < 1238532859 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, in tests/iterate-zero.b98 that is < 1238532877 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Sorry: ∀x. 0k x < 1238532887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I don't know APL < 1238532891 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what would that one mean < 1238532895 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :LOL < 1238532896 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :APL < 1238532904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :∀ looks APL-y to me < 1238532909 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :All that per-IP state, like stack and mini-funges or whatever; it free()s that at @, and k blindly calls Exec() on the @ many many times. < 1238532912 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Sorry, that just cracked me up :-D < 1238532918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so it is something else? ok < 1238532926 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 'for all x' < 1238532928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238532931 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You should've said \forall x. Ok x, that's more guessable. < 1238532942 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Is it 0k? Heh. < 1238532952 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1238532955 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :This font lacks a sensible 0. < 1238532959 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :jumpwrap.b98 seems to infinite-loop RC/Funge < 1238532964 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :x and v are rather different < 1238532971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in how they are implemented in cfunge < 1238532979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it didn't make a lot of sense to me < 1238532987 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :As does test-formfeed.b98 < 1238532997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, jumpwrap.b98 I < 1238533003 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm not* 100% is correct < 1238533038 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and test-formfeed.b98 is because rc/funge thinks it is trefunge even when it is befunge mode < 1238533051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it increments z in befunge I think < 1238533057 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, iirc < 1238533066 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Heh < 1238533076 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238533086 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What's up with a5+, why not just do f < 1238533093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, which test? < 1238533099 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :jumpwrap.b98 < 1238533108 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And also, there's no # in that file :-P < 1238533115 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I wrote that in 2008-03-12 < 1238533117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't remember < 1238533144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, why would there be #? It tests j < 1238533147 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah, but you've updated it in 2008-09-20 < 1238533155 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It has a comment talking about # and spaces < 1238533156 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes I did < 1238533159 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION diffs < 1238533181 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-0f2*-j 'C,@ < 1238533182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :- < 1238533182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-This < 1238533182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-tests < 1238533182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+0a5+-j #v'C,a,@ < 1238533183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ >'W,a,@ < 1238533192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that was in 2008-03-19 < 1238533207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-0a5+-j #v'C,a,@ < 1238533207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :- >'W,a,@ < 1238533207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+0a5+-jvvvvvvvvv < 1238533207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ 123456789 < 1238533207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ @,a.<<<<<<<<< < 1238533211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was in 2008-09-20 < 1238533212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238533224 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I think the comment is wrong < 1238533237 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the new version makes more sense < 1238533246 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm quite sure it's wrong :-P < 1238533251 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ../build/cfunge jumpwrap.b98 < 1238533251 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1238533252 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you get that? < 1238533265 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or some other value? < 1238533277 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, seriously I'm not sure what is right there < 1238533293 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :IMO 9 < 1238533298 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, huh? < 1238533303 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and which does ccbi give? < 1238533307 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1238533318 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah I probably adjusted for that then :D < 1238533322 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and why 9? < 1238533335 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just like # v doesn't jump over the v, so should 1j v not jump over the v < 1238533359 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that isn't how it is done though < 1238533359 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's the same thing; there's about 2^32 - 20 spaces in between < 1238533367 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Cannot unzip, no unzip program available " < 1238533369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf cpan < 1238533387 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :A cell can't contain a high enough value to give to j that would make it jump over any of those v's < 1238533428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm.. < 1238533461 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"WARNING: 'All rights reserved' in copyright may invalidate Open Source license. " < 1238533464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cpan checks for _everything_ < 1238533465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, any other tests you wonder about? Be aware some messy k stuff is only tested in the 109 variant < 1238533471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm willing to leave this is as an UNDEF because it isn't 100% clear but mycology_opinionated would say BAD for # or j over edge not hitting the edgemost < 1238533471 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you may want to check what those files do < 1238533491 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to see if it is relevant to test for ccbi < 1238533494 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Didn't really look at them in detail, just checked which ones gave BAD :-P < 1238533512 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, any 109 ones gave good in 98? < 1238533524 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw when I was lazy C means correct and W wrong < 1238533525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :usually < 1238533536 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, in case the stuff is hard to interpret < 1238533539 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :One of the 109s was an infinite or long loop < 1238533554 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So I just skipped them after that ;-P < 1238533570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : > 'W,a,@ < 1238533570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :>221k * 4w 'C,a,@ < 1238533570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : > 'W,a,@ < 1238533572 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The kk one < 1238533576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tell me what that one should do < 1238533583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah how do you handle k over k? < 1238533584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's nice and pretty < 1238533587 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you look on it? < 1238533591 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :loop* < 1238533595 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah, I see < 1238533598 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's a bug in your test < 1238533603 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The v following doesn't go anywhere < 1238533609 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :On the first line of iterate-iterate2 < 1238533613 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: TAEB got caught out on that check, because they'd phrased the name of the GPL slightly incorrectly from CPAN's point of view < 1238533627 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: And I simply don't handle kk < 1238533632 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that is quite possible yes. because that would be a failure path < 1238533635 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, BUG BUG < 1238533639 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep :-) < 1238533641 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge handles nested k for n levels < 1238533643 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :correctly < 1238533643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://search.cpan.org/search?query=unzip&mode=all < 1238533650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There is more than one way to hate profileration of modules. < 1238533651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CCBI is less conforming than cfunge. yay < 1238533652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1238533654 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*proliferation < 1238533658 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, when do you plan to fix it? < 1238533660 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, to -109. < 1238533662 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't plan to. < 1238533666 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't support -109. < 1238533671 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, k over k makes sense in 98 too < 1238533679 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, and I think my interpretation makes more sense. :-P < 1238533686 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :We've been over this before in hours-long discussions. < 1238533697 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And long e-mails. < 1238533720 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: what does 2#;k; do? < 1238533739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :432kkv < 1238533739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : zz < 1238533739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : z>0"DAB">:#,_a,@ < 1238533739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : >0"DOOG">:#,_a,@ < 1238533739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : " < 1238533740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :_a,@ >"DAB YREV">:#, < 1238533742 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :especially in a multithreaded program? < 1238533742 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :revised test < 1238533746 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what do you think? < 1238533747 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Meanie :-P < 1238533763 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, it loops infinitely, since there's no @ < 1238533765 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :;-) < 1238533767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what? I plan to comit this. And I love seeing a >:#,_ idiom over edge < 1238533776 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: yes, but how many ticks does it take per iteration? < 1238533780 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Meanie in that it's VERY BAD and not BAD < 1238533804 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright, let's see. < 1238533813 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The k finds the 2, running it twice. < 1238533815 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well I think k over k should at least do something sensible in 98 too < 1238533820 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: no, it doesn't < 1238533822 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or wait, what < 1238533822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the k finds the k < 1238533823 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It finds itself < 1238533837 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I think that's sensible given the specs. < 1238533842 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So the k finds itself. < 1238533845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well maybe < 1238533853 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh great < 1238533856 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cpan failed < 1238533858 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i hate cpan(1) < 1238533861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: welcome to the world of Perl < 1238533862 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :32kk5 >:#._a, < 1238533865 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about that? < 1238533868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i like cpan, just not cpan(1) < 1238533871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's horrifically badly designed < 1238533882 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that should push six 5s on the stack, shouldn't it? < 1238533887 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well, agreed about cpan(1) < 1238533893 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but how else are you going to use cpan? < 1238533894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, says: v"Correct output is:"a"5 5 5 5 5 5 5 5"< < 1238533907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no it isn't, you missed the trailing space < 1238533909 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think it may differ in 98 and 109 < 1238533912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well duh < 1238533915 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Anyway, it takes one tick since it's k ;-) < 1238533927 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But I think it'll thereafter always skip the 2 < 1238533928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ../build/cfunge iterate-iterate.b109 < 1238533928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5 5 5 5 5 5 5 5 5 5 5 5 < 1238533928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Correct output is: < 1238533928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5 5 5 5 5 5 5 5 < 1238533928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: one tick to run an infinite tower of k? < 1238533930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ../build/cfunge -s 109 iterate-iterate.b109 < 1238533930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5 5 5 5 5 5 5 5 < 1238533931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Correct output is: < 1238533934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5 5 5 5 5 5 5 5 < 1238533937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as far as I can tell, all interps would just lock up on that code < 1238533937 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It's not infinite the way CCBI does it. < 1238533937 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so < 1238533939 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1238533940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not allowing othe threads to run < 1238533944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: what, really? < 1238533951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, because nested k is broken < 1238533952 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Let me check, I'm quite sure. :-P < 1238533964 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, which code did you mean isn't infinite? < 1238533975 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 2#;k; is. < 1238533977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238533978 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For cfunge, probably. < 1238533978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: we're talking about 2#;k; < 1238533983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lets see < 1238533990 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aiie < 1238533991 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in cfunge, I suspect it would send it into a tight infinite loop, or possibly run it out of memory or stack < 1238533993 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yeah, it's k per tick. < 1238534007 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: IP gets stuck on the k with an empty stack. < 1238534008 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, wait no, it will end when it realises 0k < 1238534017 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it won't try to fetch next instruction in case of 0k < 1238534024 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it will be limited of size of stack < 1238534025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :won't it? < 1238534031 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what does 0kkv do? < 1238534048 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, 98 or 108? < 1238534052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, either < 1238534054 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i think so. < 1238534063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, think wha? < 1238534064 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what* < 1238534076 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric : ais523, wait no, it will end when it realises 0k < 1238534092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think you have to keep parsing the row of ks, don't you < 1238534099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to figure out precisely what it is that you aren't doing? < 1238534106 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :(i'm a bit slow when try to answer...) < 1238534107 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or is it always legal to optimise that away < 1238534118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0kkvv3.a,@ < 1238534118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : > 1.a,@ < 1238534118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : >2.a,@ < 1238534121 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, actually it's simpler than I thought, isn't it, I'm not sure what I was thinking before. < 1238534123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :outputs 1 in both 98 and 109 < 1238534126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in my tests < 1238534127 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ^ < 1238534139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Discovery: Perl is pretty is you hide everything. < 1238534153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sub download_and_extract { < 1238534153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : my $url = shift; < 1238534155 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : my $zip; < 1238534156 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : $mech->get($url, ':content_file' => 'foo.zip'); < 1238534157 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that doesn't surprise me at all < 1238534159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : $zip = Archive::Zip->new('foo.zip'); < 1238534160 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : $zip->extractTree(); < 1238534162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : unlink 'foo.zip'; < 1238534164 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :} < 1238534166 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it makes perfect sense < 1238534167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Of course, I only call this once... < 1238534170 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Why would you have to parse the row of ks? You get 0kk and abort. < 1238534179 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: hardcoded temp filenames? < 1238534184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes. < 1238534188 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Gotsaproblemwitdat < 1238534189 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :? < 1238534195 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Or, show me an easier way in Perl. < 1238534198 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes, it's a security risk < 1238534199 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is there a mktemp module? < 1238534202 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :almost certainly < 1238534206 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :File::Temp. < 1238534209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, srsly now. < 1238534213 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this is Perl we're talking about < 1238534213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This downloads #esoteric logs. < 1238534217 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is there a X module is true for all X < 1238534230 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :File::Temp can open you the file without any sort of racy issues. < 1238534232 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well, for throwaway scripts you only use yourself, hardcoding temp file names may be acceptable < 1238534282 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :build/cfunge -t 9 tests/ais02.b98 & kill $! <-- fills my scrollback < 1238534282 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1238534286 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I live the speed < 1238534288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ducks < 1238534292 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: why are there .b109 files in the tests? sort of "UNDEF in Funge-98 but should be..."? < 1238534296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Global symbol "$mech" requires explicit package name at /Users/ehird/Code/scraps/2009-03/grab-esoteric-logs.pl line 16. < 1238534298 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my $mech = WWW::Mechanize->new(agent => '#esoteric scraper'); < 1238534300 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :w h a t < 1238534310 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, that is due to the new revised standard I'm working on < 1238534317 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which fixes a lot of UNDEF yes < 1238534324 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: AnMaster is working on a standard that nobody but him will use. < 1238534324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like details of k < 1238534328 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And all it does is specify edge cases everyone already agrees on. < 1238534333 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, RCS actually has a half-broken mode for it < 1238534338 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Nobody agrees on k. :p < 1238534341 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I disagree with some of -109. < 1238534341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and no < 1238534341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it changes k < 1238534343 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: disagree on the "everyone already agrees on" < 1238534345 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I was about to say, < 1238534351 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and also specifies things that AnMaster just decrees Are True < 1238534357 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thus making it even less appealing < 1238534357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no < 1238534362 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, the # over file/line edge thing needs fixing IMO < 1238534372 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I defined it iirc in 109 < 1238534375 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1238534378 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I think it's fairly irrelevant in practice, actually. :-P < 1238534378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :great, a standard for one single case of ambiguity < 1238534379 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :woop woop < 1238534384 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... have you definied a semantic for # over the edge of fungespace < 1238534390 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: besides precise semantics, is there any addition? < 1238534395 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, if you put a # right at the most positive coordinates < 1238534402 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does it necessarily jump column 0? < 1238534404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, http://rafb.net/p/8P9UDb22.html < 1238534407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that may interest you < 1238534424 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1238534427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: A # at 2^(cell size in bits)-1 should jump over -2^(cell size in bits) IMO. < 1238534432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the trace from nested k is not clear < 1238534433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you avoid the infinite regress because you can optimise 0k < 1238534447 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ah, ok < 1238534450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think probably it should too < 1238534451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that is news to me < 1238534453 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but am not sure why < 1238534454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but a good idea I agree < 1238534470 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what about flying delta and that? < 1238534474 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: but if cell size is unbounded, like bignum? < 1238534475 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what would happen then < 1238534476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1238534479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hrm, I wonder if perl has funky syntax for checking if a file exists. < 1238534480 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What about it? < 1238534481 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh yes < 1238534490 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also efunge uses bignum < 1238534494 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: Then # over the edge never skips over anything. < 1238534494 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :21:19 lifthrasiir: AnMaster: besides precise semantics, is there any addition? no < 1238534495 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so that is highly relevant < 1238534498 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: You mean more funky than "-e $file"? < 1238534509 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Funky exactly like that. < 1238534519 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What about flying deltas? < 1238534532 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I don't know. That is what I'm asking you < 1238534541 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, well there is an idea about using URIs for fingerprints instead, to reduce namespace collision < 1238534546 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What don't you know? < 1238534554 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: Funge-109 uses URIs for fingerprint names < 1238534563 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, is there something nonobvious somewhere < 1238534569 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They work the way you'd expect :-P < 1238534569 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :personally I think that may be a bad idea, because loading fingerprints uses up enough space as it is < 1238534572 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my $last = sort(<*>)[-1]; # hope that works :P < 1238534573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: oh, yes < 1238534577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it makes code infinitely more bloated and ugly < 1238534582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, delta 4,10, # at 2^(cell size in bits)-1 is hit < 1238534583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what happens < 1238534585 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :at the gain of never having collisions that don't happen < 1238534622 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: What's funky is that if you have executed any "-X $file", you can then do "-Y _" and "-Z _" and it'll use the stat(2) buffer filled for the first -X test. < 1238534628 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Well, moving 1 east from the edge gets you to -2^(cell size in bits). < 1238534629 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also versioned fingerprints < 1238534637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would be buildable on it < 1238534642 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yaaaay more solved problems that never existed that makes code more ugly < 1238534645 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in case someone decides to retcon it < 1238534647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :perl 108 for the win. < 1238534648 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er. < 1238534648 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: There are no spaces to skip over so it's just as though it weren't on the edge. < 1238534649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :befunge. < 1238534652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it happened several times < 1238534661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with RCS fingerprints < 1238534676 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and Deewiant insisting on breaking the spec < 1238534740 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: On the other hand, the Lahey-space is infinite. The wrapping part of the (98) spec says: "When the IP attempts to travel into the whitespace between the code and the end of known, addressable space --" which to me sort-of implies there is even more space after the addressable space. < 1238534756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: how dare he < 1238534765 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he's a... a... an INSISTOR < 1238534799 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: only if interpreter uses unbounded integer for coordinate. < 1238534800 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Nobody expects the Spanish insistion. < 1238534832 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Hmm, perhaps. < 1238534834 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir: No, really. The coordinate size just affects the "known, addressable space" part. It can still be treated as if there was an infinite amount of spaces outside *that*. < 1238534860 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: if you mean that i agree. < 1238534902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, one such exists < 1238534906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :efunge < 1238534923 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: and obviously pyfunge. < 1238534932 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, it uses unbounded too? < 1238534934 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I would think you'd hit the "a # at 2^N-1 and something at -2^N" problem even less often than a plain old "# at the edge in some reasonable coordinates". < 1238534936 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: It annoys me that there's no maths at all in the description of the 'mathematical model' < 1238534943 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :it uses python integer so unbounded. < 1238534946 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, then what do you push for size of cells? < 1238534954 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Yes, definitely, I don't think it's important in practice either :-P < 1238534974 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :once 4 without careful thinking, currently -1, and not yet sure that what is correct. < 1238534980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, python (on the C side at least) have two integers < 1238534983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :int and long < 1238534987 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where long is bignum < 1238534991 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: But yeah, I guess that can be read either way. < 1238534998 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc they removed the int in python 3 though < 1238535034 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's some sort of automatic promotion to long, though. < 1238535077 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :yeah, and that automatic promotion cannot be suppressed without using... & 0xffffffff, and so on. < 1238535100 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :>>> 9223372036854775807 < 1238535100 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :9223372036854775807 < 1238535100 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :>>> 9223372036854775807+1 < 1238535100 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :9223372036854775808L < 1238535113 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :so that's practically same type < 1238535121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is there really no good way t o do copying =~ without a tmp var? < 1238535200 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You'd want the result of a s/// without mangling the original? < 1238535240 0 :BeholdMyGlory!n=BeholdMy@d83-183-183-70.cust.tele2.se JOIN :#esoteric < 1238535417 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yar./ < 1238535439 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey fizzie, you got them 2002 esoteric logs? < 1238535447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Could integrate that into my script. < 1238535458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :02:12:04 ah, re befunge, just wrote an interpreter with forth. so our unofficial befunge-interpreters-in-obsolete-but-non-esoteric-languages project now has forth, fortran-77, algol-60, plus few less interesting ones. maybe should do cobol next. < 1238535461 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :— 2003-01-21 < 1238535499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, =~ ? hm < 1238535501 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I haven't see any sensible idiom for that. Although you can use $_ as your temp var and then you don't have to write the name again; "$_ = $foo; s/.../.../;" and you end up with the mangled string in $_. I don't much like to write $_ out loud, though. < 1238535511 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, self not? < 1238535512 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1238535515 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait bitwise not < 1238535517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Match. < 1238535518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :brb → < 1238535521 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what language? < 1238535525 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Perl. < 1238535527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: self bitwise not would be ~= < 1238535527 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :← Perl. → < 1238535530 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and besides doesn't make sense < 1238535531 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1238535537 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :=~ is Perl's pattern-match operator < 1238535556 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yeah ~~i and i~~ would make more sense < 1238535563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1238535575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nope, that would be equivalent to i ~= 1; < 1238535613 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :~=i; could make sense, as a shorthand for i = ~i. < 1238535634 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Unary prefix ~= sounds a bit perverse. < 1238535690 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but ~ in place then? < 1238535709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1238535713 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: how often does it come up anyway? I mean really? < 1238535713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what fizzie said < 1238535728 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I want suffix version too! < 1238535762 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, especially in the logical "x = !x" form it does happen. So maybe !=x; < 1238535774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :postfix too < 1238535776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would be useful < 1238535826 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Flip x but evaluate to the original value? That's just !!=x. :p < 1238535841 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, efunge get no BAD btw in the branch https://code.launchpad.net/~anmaster/efunge/supervisor-tree < 1238535842 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe not exactly, since it would do the boolean-cast too. < 1238535846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :might be nice adding to mycology page < 1238535856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it is development yes < 1238535858 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but still no bad < 1238535873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :rather basic < 1238535875 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :~~=x; should work just as well as a postfix x=~; operation. (I flipped the order of =/~ there.) < 1238535886 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Certainly it would raise the line noise factor of C. < 1238535893 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Maybe not exactly, since it would do the boolean-cast too. <-- indeed < 1238535904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aaah < 1238535905 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238535908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :we shouldn't add it < 1238535914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it would end up like perl then < 1238535930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :good think ISO would never do it anway < 1238535934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway* < 1238535973 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually shouldn't it be time for a new C version around now? < 1238535979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean, C89, C99, C09? < 1238535984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would follow a pattern < 1238535999 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone know what the plans are for new C versions? < 1238536008 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :foo ^=~0; < 1238536019 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :olsner, what does that do? < 1238536029 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lets see < 1238536031 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Perl recognizes the following "x="-style operators: **= += -= .= *= /= &= x= &= |= ^= <<= >>= &&= ||= //= < 1238536033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :xor on the complement < 1238536044 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it's pretty much ~=foo; < 1238536047 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, not plain x= though? < 1238536053 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It is there on the list. < 1238536070 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But the first &= should be %=, that was a typo. < 1238536083 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: //= is very new < 1238536115 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :$foo = "yay"; $foo x= 4; # $foo is now "yayyayyayyay" < 1238536187 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that will be C1x, cannot be done in 2009 < 1238536196 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I've used // either, although I can see the need. I've probably just written "defined $a ? $a : $b" instead of "$a // $b" though. < 1238536239 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :i heard that gets is finally removed from C1x, but who knows. < 1238536256 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Wikipedia has heard that too, but [citation needed]. < 1238536257 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :people haven't even finished implementing C99 yet, though! < 1238536263 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(The tag is not there, but ought to be.) < 1238536270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: add it! < 1238536273 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :{{fact}} < 1238536346 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What do people usually write in the edit summary, if they just add a {{fact}}? < 1238536368 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :+fact? < 1238536380 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Heh, that copy-pastable list of funky characters under the textbox is funny. < 1238536526 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :there eventually be every character in unicode 5.1 in that list. < 1238536585 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lifthrasiir, heh ok < 1238536620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, just because people haven't finished implementing the last C++ standard doesn't mean they won't churn out another one < 1238536653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so why wouldn't the same be true for C? < 1238536669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I don't know why it takes them so long to implement C99 < 1238536679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if they really wanted it could certainly be done by now < 1238536680 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :have you ever tried to implement C99 < 1238536689 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that nobody wants to is the point, more or less < 1238536691 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no, nor C90 < 1238536693 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it means it's failing as a standard < 1238536695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :C89* < 1238536702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh, two names for the same thing < 1238536707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, people have implemented the nice bits from it < 1238536711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :only difference between C89 and C90 is the section numbers < 1238536717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it was actually an off by one key error < 1238536724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not a joke about the different names < 1238536724 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1238536839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if the expression && makes sense < 1238536842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1238536856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :foo ** bar == &&quux; < 1238536857 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1238536871 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Of course not < 1238536879 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah where would the middle pointer be < 1238536880 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1238536885 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would it make sense with a space? < 1238536889 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably not either < 1238536899 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: unary &&? < 1238536901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :foo ** bar == &(&quux); < 1238536902 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: foo ** bar == foo * (*bar) < 1238536907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is how it should parse < 1238536908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :IMO < 1238536916 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, you can't take the address of an address < 1238536921 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's like writing &6; < 1238536924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, without a middle variable yes < 1238536929 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :GCC computed-goto extension has stolen unary && already. :p < 1238536934 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in gcc, unary && is the address-of-label operator < 1238536936 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh < 1238536947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why doesn't normal & work for that? < 1238536955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :labels have a different namespace to variables < 1238536957 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :anyone stolen unary || then? :p < 1238536960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238536963 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you need to say which you're taking the address of < 1238536971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1238536973 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238536980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why & btw? < 1238536982 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or * < 1238536987 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for reference/dereference < 1238536995 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't really make much sense < 1238537076 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :foo*bar is multiplication, foo**bar then? what is that? multiplying a dereferenced pointer I would assume, but that is certainly confusing. There is only one valid way to interpret it but still < 1238537082 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is another issue < 1238537092 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but still, why & for reference and * for dereference < 1238537096 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone knows? < 1238537125 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :that traces back to BCPL.. maybe. < 1238537148 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :in BCPL, BPL or whatever before C, once '*c' is used instead of '\c' < 1238537183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why would \ make sense there? < 1238537186 0 :lifthrasiir!unknown@unknown.invalid PRIVMSG #esoteric :i mean '*n' and '\n', hmm < 1238537190 0 :pikhq!n=pikhq@r03jjw8v9.device.mst.edu JOIN :#esoteric < 1238537194 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238537308 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :comp.compilers: "To answer why C has such bad syntax for pointers, you should look at BCPL. It had two indirection operators, !ptr and ptr!offset. The former turned into C's *ptr and the latter split into ptr[offset] and ptr->offset." < 1238537314 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's not really an explanation, though. < 1238537532 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That was in the context of people proposing a postfix * instead of prefix * for dereferencing; so "a[i]*" and not "*a[i]", where you have to bounce back-and-forth to decode it. < 1238537611 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1238538274 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh < 1238538289 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I like *(*foo->bar)->quux < 1238538293 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and such < 1238538319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FireFly, that is a lot of bouncing indeed < 1238538324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1238538325 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, ^ < 1238538326 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Indeed it is < 1238538328 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1238538347 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FireFly, what do you expect with that nick? < 1238538366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :^style < 1238538366 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft nethack pa speeches ss wp < 1238538369 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :^style nethack < 1238538370 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Selected style: nethack (NetHack 3.4.3 data.base, rumors.tru, rumors.fal) < 1238538371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi fungot < 1238538371 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: they say that venus sprang from the oligocene of asia... the legend of his hidden pot of gold in a waterproof bag that had a local celebration called " o learned one of the old, old man, " where does this beggar came from the " lord of the modern day domestic dog, canis dingo, of course, but sometimes... < 1238538394 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fungot: more nonsense, please < 1238538394 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ais523: valkyrie, valkyrie: the elves, and finally a god of the strangers that sojourn in israel, or yeti, is human apart from his horse at the shoulder. ( conan the avenger by robert e. howard) < 1238538397 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't know the legend of Venus' hidden pot of gold in a waterproof bag. < 1238538403 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the legend of his hidden pot of gold in a waterproof bag that had a local celebration called " o < 1238538405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lovely < 1238538423 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Israel? < 1238538427 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in nethack? < 1238538430 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fungot: keep going < 1238538430 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ais523: cave*man, human cave*man: now issek of the half-extinguished light, they make many clever ones. the waves to the land, and a horn. it protects all who carry it from the bottom the only place to go before i sleep. < 1238538436 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's in the flavour text, probably < 1238538454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, flavour text? < 1238538455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's a lot of flavour text in nethack, and people hardly ever read it < 1238538463 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: using / < 1238538469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1238538474 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and answering y to the "More information?" prompt < 1238538478 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's for Moloch. < 1238538481 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1238538482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :everyone just uses ; though because it's faster and does the same thing < 1238538487 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, huh < 1238538495 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ah yes I always used ; indeed < 1238538496 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A direct quote from (Leviticus 20:1-5). < 1238538499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :never even knew about / < 1238538510 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fungot, details? < 1238538511 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: they say that some fire ants will make you batty, for a change of scenery. people steal souls. ( a field guide to fantasyland, by richard patrick) < 1238538527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238538544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nice with references at the end < 1238538545 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The data.base file, from which the model was built, is ~200k of ascii text. That's a sizeable book. Lots of quotations, of course. < 1238538549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wikipedia would love that < 1238538571 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fungot, go on... < 1238538571 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: they say that the delphic oracle knows that speed kills. figurative: _a paper tiger_, something that is accidentally dropped will hide under a larger object. < 1238538586 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238538590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the last... < 1238538617 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's a proposal for a new C++ syntax that would make *(*foo->bar)->quux look like foo^.bar^^.^ or something like that, as close as I can understand. http://www.csse.monash.edu.au/~damian/papers/HTML/ModestProposal.html#section3.4 if you feel like it. < 1238538618 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pit below some small food item anyone? < 1238538622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sounds familiar? < 1238538638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :foo^.bar^^.^ < 1238538639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what < 1238538643 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that makes no sense < 1238538656 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :^ as the dereferencing operator, and . with the good old member-of syntax. < 1238538666 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :So -> gets superfluous, as it's just ^. < 1238538668 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :The C++ equality test (val1 == val2) has been changed in SPECS to val1 = val2, as this binding for "=" is more consistent with widespread mathematical usage. The inequality operators ("!=", "<", "<=", ">", ">=") are unchanged. < 1238538670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1238538671 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And postfix ^, yes. < 1238538673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so how would one do: < 1238538684 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: One would use a temporary. < 1238538695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, even so < 1238538696 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :One would use the assignment operator, :=. < 1238538697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :specs is hot < 1238538703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would break headers < 1238538711 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :would it? < 1238538720 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why not just handle that syntax internally < 1238538726 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and translate < 1238538727 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, system headers with that idiom? ((a = b) == c) yes? < 1238538729 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have seen it < 1238538736 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why not just handle that syntax internally < 1238538737 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and translate < 1238538737 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in macros yes < 1238538743 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why not just handle that syntax internally < 1238538743 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and translate < 1238538749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, for all edge cases? good luck < 1238538757 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you mean like... a c++ parser? < 1238538758 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i think those exist. < 1238538772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes but how can you detect which was meant in all cases? < 1238538776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is a breaking change < 1238538777 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... < 1238538779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1238538793 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean you parse as C, then translate to SPECS < 1238538794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :trivial < 1238538794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :making = mean == in if context breaks stuff < 1238538804 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric := means == in every context < 1238538809 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what about other ones? Like random C libraries < 1238538826 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "If you include .h or .hpp or .hh or .H it's parsed as C or C++ then converted to SPECS" < 1238538829 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc valgrind client request headers has it < 1238538833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1238538836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SPECS files would have a different file extension, obviously < 1238538846 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Alternatively you can just translate all SPECS source files into "standard" syntax, if you feel like it, and use your old compiler. < 1238538847 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238538856 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: That would be more compatible, yes. < 1238538883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh it isn't about suggested C++ changes < 1238538887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like fizzie said < 1238538890 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but another language < 1238538890 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... yes, it is < 1238538891 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238538892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1238538895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's a proposed new syntax for c++ < 1238538897 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is SPECS then? < 1238538902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to replace the old one < 1238538918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is it still TC to parse? < 1238538921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1238538924 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[it's by Damian Conway of Perligata fame] < 1238538929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[and some other person who's less interesting] < 1238538947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not Conway as in GOL? < 1238538951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no. < 1238538953 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1238538953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he is not a programmer. < 1238538955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1238538956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he is an old mathematician. < 1238538979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :relatives? < 1238538994 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1238538995 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, I don't think it changes the type system or templates, more than just the consmetic syntactic changes, so I don't think it makes C++ compiler-writers any happier; it's just supposed to be nicer to read and use. < 1238538999 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Conway is not uncommon as a second name. < 1238539010 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: No, i think it stops the foo<> ambiguity < 1238539015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So it wouldn't be tc to parse < 1238539016 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just compile < 1238539030 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, right. There is that. < 1238539055 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure if there was still some "must know whether this is a type or not" situations. < 1238539066 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not a C++ expert at all. :/ < 1238539088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : x := p-> template alloc<200>(); < 1238539088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : The SPECS equivalent is: < 1238539088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : x := p^.alloc<[200]>(); < 1238539090 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well sure < 1238539096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's delicious < 1238539098 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But it indeed stops the <> problem with the <[ ... ]> brackets. < 1238539099 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but -> is nicer than ^. < 1238539100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :IMO < 1238539104 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it just looks pretty < 1238539107 0 :ais523!unknown@unknown.invalid QUIT :Remote closed the connection < 1238539113 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :p→alloc! < 1238539114 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I think -> looks more logical though < 1238539124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's called familiarity < 1238539138 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :At least ^ is pointier than the *. :p < 1238539150 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, partly yes, but -> is more vertically symmetrical than ^. < 1238539166 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(AnMaster probably won't like the fact that they've changed bitwise xor from ^ to ! then.) < 1238539179 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, what happened to logical not then? < 1238539180 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1238539183 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's unary. < 1238539188 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh true < 1238539191 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"a ! b" didn't mean anything sensible, yet. < 1238539209 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FireFly, still ! for xor doesn't make a lot of sense, nor does ^ < 1238539215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about the keyword xor? < 1238539239 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Now you remind me of VBScript < 1238539250 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :FireFly, I was thinking about erlang, it has bxor < 1238539256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for bitwise xor < 1238539257 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Ah < 1238539279 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does vbscript do xor heh < 1238539295 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think they've kept that. < 1238539302 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(C++ already does keywords for operators.) < 1238539326 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, nothing wrong with keywords for operators < 1238539346 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Scala does operators nicely, `a b c` is just `a.b(c)` < 1238539360 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, have they fixed the "recompile all code linked against header when private members change" yet? < 1238539374 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for classes < 1238539376 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :C++ has "xor" as a synonym for ^, but & and | are "bitand" and "bitor", because "and" and "or" are reserved for && and ||. < 1238539383 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, no, it's still C++. < 1238539436 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What is a bit silly is that since bitand means &, you can use it whenever you'd use a &: so "char *foo = &bar;" can be written as "char *foo = bitand bar;" or so I believe. < 1238539441 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what do the ` mean in that? < 1238539451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: code. < 1238539477 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1238539485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, are they part of the code, or just quotes in your irc line. that is in-band or out of band? < 1238539493 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :latter. < 1238539499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238539514 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It looks like... well, a number of wiki-markups, the backticks-for-code. < 1238539518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :22:43 fizzie: What is a bit silly is that since bitand means &, you can use it whenever you'd use a &: so "char *foo = &bar;" can be written as "char *foo = bitand bar;" or so I believe. < 1238539520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's awesome < 1238539524 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I stole it from markdown < 1238539563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I was thinking `` as in shell < 1238539565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :first < 1238539589 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so you do \` in markdown to escape one? < 1238539593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes. < 1238539599 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1238539607 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :DokuWiki uses ''monospaced'', but I think Confluence (that proprietary "enterprise wiki" by Atlassian) does `code`. Maybe, might remember wrongly too. < 1238539628 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what we really need is out of band markup < 1238539630 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no idea how < 1238539641 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no escapes in the data < 1238539653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe markup as a separate stream with offsets in the other one < 1238539660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but that would be hard to maintain < 1238539665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: xanadu had out of band markup < 1238539674 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how did it work? < 1238539683 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ask ted nelson. < 1238539685 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Just send the markup as TCP "urgent" data. < 1238539695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1238539717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, what about when they are stored on disk or edited though? < 1238539726 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Different files then, I guess. < 1238539726 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ted Nelson also invented the word "teledildonics". < 1238539735 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Meaning "dildos controlled via computers". < 1238539747 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :He is rather anti-sane. < 1238539767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ... indeed < 1238539777 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Other products being released fit a new category called bluedildonics, which allow a sex toy to be controlled remotely via a Bluetooth connection." < 1238539797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :released? heh < 1238539819 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That was accompanied with a Wired article-link, http://www.wired.com/culture/lifestyle/commentary/sexdrive/2004/09/65064 < 1238539836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I believe there's a GNU/LINUX POWAHED server for teledildonics thingies; which gave me an awful image involving richard stallman. < 1238539855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mental image that is < 1238539871 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1238539879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what the c++0x guys will do when it turns to 1x < 1238539918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1238540041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is *.cfm? < 1238540046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :windows help < 1238540068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I was reading the url fizzie linked and one link was "http://www.exn.ca/mini/startrek/holodeck.cfm" < 1238540073 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it just doesn't work in firefox < 1238540078 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Cold Fusion < 1238540081 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1238540082 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it redirects to an invalid host < 1238540088 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: That's chm < 1238540089 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cold fusion < 1238540090 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238540092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: yep < 1238540094 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in invalid top domain < 1238540100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does the link work for anyone? < 1238540106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1238540107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or does it redirect to *.camini < 1238540537 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :As a consequence of the change in the equality operator, the C++ assignment operator (ref = val) becomes ref := val in SPECS1. As might be anticipated, the compound assignment operators become "+:=", "-:=" , "*:=", etc. < 1238540542 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this reminds me of pascal < 1238540633 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1238540637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't forget the the date < 1238540643 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :none of us wan't to get fooled right? < 1238540973 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, it says it's Pascal-inspired, somewhere in there. < 1238541037 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i cannot be fooled, i'm wearing my tinfoil hat < 1238541268 0 :FireFly!unknown@unknown.invalid QUIT :"Night" < 1238542044 0 :nooga!n=nooga@abdl116.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1238542162 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :http://www.hokstad.com/writing-a-compiler-in-ruby-bottom-up-step-1.html < 1238542164 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :mehehe < 1238542227 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :old < 1238542257 0 :lifthras1ir!n=lifthras@haje12.kaist.ac.kr JOIN :#esoteric < 1238542306 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :tried it myself < 1238542327 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :but i don't know x86 asm well enough < 1238542342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :target c? < 1238542371 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :beh < 1238542372 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :lame < 1238542387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :llvm? < 1238542512 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :does it target normal processors? < 1238542516 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. < 1238542541 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :mm compiler -> llvm -> x86 machine code ? < 1238542543 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :your language -> llvm asm -> aggressive optimization and suchlike -> tuned processor-specific machine code < 1238542549 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1238542554 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instead of llvm asm you should use their library < 1238542557 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :btu w/e < 1238542559 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*but < 1238542564 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1238542569 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :sounds good < 1238542579 0 :lifthras1ir!unknown@unknown.invalid PART #esoteric :? < 1238542588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nooga: yeah, there's llvm-gc < 1238542589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*gcc < 1238542589 0 :lifthras1ir!n=lifthras@haje12.kaist.ac.kr JOIN :#esoteric < 1238542593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is stable enough for general use < 1238542600 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and they have their own c/c++/obj-c compiler called clang that's rapidly maturing < 1238542609 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's been heavily invested in by Apple so its not going anywhere < 1238542823 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1238543127 0 :lifthrasiir!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1238543634 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :this whole llvm looks quite awesome < 1238543655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nooga: Its gc support is flaky although it does have some hooks < 1238543658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but apart from that, indeed. < 1238543663 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :and it links statically < 1238543668 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1238543677 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wut? < 1238543687 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :so that there is no problem with distribution < 1238543693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1238543697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right < 1238543700 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :no additional binaries are needed < 1238543711 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, it's a native compiler after all < 1238543724 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nooga: if you compile llvm on os x, beware < 1238543732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you MUST tell it to compile with 'gcc-4.2' < 1238543733 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not 'gcc' < 1238543740 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because 'gcc' is an older version that llvm trips some bugs on < 1238543746 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(they don't show up until you actually try it) < 1238543763 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :forgot I have to tell everyone that :d