< 1297123210 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yay good math bad math < 1297123227 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yeap < 1297123237 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :I've been reading that blog for years < 1297123245 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :months? over a year < 1297123264 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :elliott < 1297123271 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :hmm :( < 1297123291 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: do you want to see an example of BEAUTY and ELEGANCE in Haskell code? too bad, because all I have is this horrible crock! < 1297123308 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ???? < 1297123312 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :just commenting < 1297123315 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :on how awful this code is < 1297123316 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :right now :D < 1297123322 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, FIX IT < 1297123328 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: you fix it: http://sprunge.us/PidB < 1297123368 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1297123606 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i think i just horrified variable to death < 1297123622 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yes < 1297123724 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I think I partially solved my Reddit Chrome problems < 1297123776 0 :Behold!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297123954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: at least it's shorter than it would be in C :P < 1297124032 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t catch < 1297124033 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a. IO a -> (IOError -> IO a) -> IO a < 1297124036 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t Control.Exception.catch < 1297124037 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a e. (GHC.Exception.Exception e) => IO a -> (e -> IO a) -> IO a < 1297124075 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297124168 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, shorter != better < 1297124177 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: Less crap == better. < 1297124183 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :but yes - I get the point < 1297124184 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Manual memory allocation definitely counts as crap. :P < 1297124251 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :There are a lot of imperative compiled languages that do automatic stuff < 1297125049 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: yay! apart from i and o, everything works! (directed at you, the only active person) < 1297125281 0 :Mathnerd314!~mathnerd3@dsl.6.28.53.206.cos.dyn.pcisys.net JOIN :#esoteric < 1297125285 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ya know - I proved P≠NP but I just can't get the program to output < 1297125290 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297125299 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i and o are file-handling instructions here :P < 1297125311 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I figured "input" and "output" < 1297125315 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :they are < 1297125318 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :also - use normal names for your functions < 1297125319 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i reads in some fungespace from a file < 1297125321 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :o outputs it < 1297125324 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: instructions < 1297125328 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: this is Befunge-98 < 1297125332 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ah ok < 1297125334 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :the instructions are i and o :P < 1297125337 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :ACTION should learn it < 1297125345 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: it's more interesting to implement than use imo < 1297125346 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :^source < 1297125347 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 < 1297125352 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fungot, our friendly babble bot, is written in it ^ < 1297125353 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :elliott: grep and cron? :-p) if that's what you were saying something interesting about it < 1297125359 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and underload/bf interpreting bot :P < 1297125366 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that source is quite a sight < 1297125370 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :elliott, also - I have a programming language that I need some help putting into normal words < 1297125382 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :I have the concept down though < 1297125388 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you think i'm equipped for normal words after implementing a program that (will be able to) run http://git.zem.fi/fungot/blob/HEAD:/fungot.b98? :D < 1297125388 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :elliott: you don't need < 1297125394 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i don't need normal words? i see < 1297125413 0 :variable!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is away for a bit < 1297125424 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :elliott: 'tards don't have to use normal words if they're not able to < 1297125426 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :first few lines of the test-suite i've been running against: < 1297125429 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :0#@>. 1#@v>#@,55+"skrow , :DOOG",,,,,,,,,,,,,,1#v:$v>"pud t'nseod : DAB",,,,,,,v> v >" 1 naht erom spiks "v < 1297125430 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :v"@.4"@#<.+@,,,,,,,,,,,,,,,,"BAD: : reflects"+55$#v5#.< #5 >:#,_$v#"GGGOOD: : duplicates"+730$<>"OOG">:#,_22#v-#v_19+"0 = 2"v >9-v ^< < ^e^#< < vbv#<^># #< "DAB">:#,_@#"BBAD: a reflects"># 0# 5# 5# +# < < 1297125436 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>3.#@$ .^@5v"ro"+820_28+"orez spop kcats ytpme :D"^v"-2 != 0"+550 :#,_^#"GGOOD: a pushes 10"># 0# 5# 5# +# < " < 1297125439 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :^ 0@# 4.2< >"eznon spop kcats ytpme :DAB"v "BAD: - reflects"+55< >:#,_v >v >")seod a taht gnitseretni( krow t'nod f-b :DAB">:#,_@#: < > vc >055+"llec tsom"v < 1297125442 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :v.6_5.@>7.^>+"stcelfer \">" :DAB">:#,_@#:< "BAD: 2"< v"GOOD: | works"+<>#v|>0v v"OD: b-f pus"<>a"tfel snrut [ :DOOG">:#,_v " e v"kips eastern"< < 1297125445 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hells yeah < 1297125489 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("Va=",(60,119),"Vb=",(0,31)) < 1297125490 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: i should have pushed (60, 119) as Va < 1297125491 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: i should have pushed (90, 16) as Vb < 1297125493 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1297125537 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :heh mycology now takes almost 6.6 seconds < 1297125545 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i'll optimise that bounds recalculation later with a population count... < 1297125566 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you got Mycology at the point where it can run? Awesome < 1297125566 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : io $ print ("Va=",offset,"Vb=",(bx-ox,by-oy),"(bx,by)=",(bx,by)) < 1297125568 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: haskell debugging < 1297125594 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I think the root cause is an error in the code < 1297125602 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :what did I win? < 1297125617 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: oh yeah so much money < 1297125621 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("Va=",(60,119),"Vb=",(0,31),"(bx,by)=",(60,150)) < 1297125621 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: i should have pushed (60, 119) as Va < 1297125622 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: i should have pushed (90, 16) as Vb < 1297125623 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :x_X < 1297125646 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :colloquially i would describe this situation as "shit is most fucked-up" < 1297125647 0 :TLUL!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297125656 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :the most fuckest-upness of the shits < 1297125670 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :I like to call that state "nothing fucking works" < 1297125689 0 :TLUL!~TLUL@wikia/The-last-username-left JOIN :#esoteric < 1297125718 0 :TLUL!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297125739 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :(but mostly that's when someone else starts screaming about how nothing fucking works while really it's Just Not That Big A Deal) < 1297125799 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: you think this isn't a big deal? < 1297125801 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :this is < 1297125801 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so < 1297125804 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :IMPORTANT < 1297125819 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :I don't care, so obviously it's not really that important < 1297125829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : That the environment variables are: < 1297125829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : orihs/edoC/ttoille/emoh/=DWPDLO < 1297125829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : orihs/orihs/edoC/ttoille/emoh/=_ < 1297125829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : lanimret-emong=MRETROLOC < 1297125829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : esabatad/67schb-ttoille-rof-htua/mdg/nur/rav/=YTIROHTUAX < 1297125839 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: where else can you see entertaining bugs like that < 1297125853 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :haha, you're using lanimret-emong < 1297125870 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: lol < 1297125881 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/tmp/dirge-for-accordion.ogg I declare this Best Ever < 1297125884 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: i had no idea what that said until i typed it out backwards < 1297125886 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :gnome-terminal isn't that bad < 1297125892 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i'm too lazy to install anything else < 1297125915 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Needs more organ < 1297125918 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But I like it < 1297125926 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Needs more /organ/? < 1297125946 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1297125953 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :a terminal that has a menu bar and/or a way to configure it is not a worthy terminal < 1297125953 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Trust me. < 1297125953 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION shakes his fist :P < 1297125968 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: .Xresources is a way to configure < 1297125971 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: in fact, xterm has menus to configure < 1297125974 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :your point? < 1297125986 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :also, /me just disabled gnome-terminal's menubar < 1297125991 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that was hard < 1297125992 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :none really, I just remember gnome-terminal not being to my liking < 1297126006 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :hence it is completely worthless < 1297126009 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It lets me open URLs nicely, which is more than xterm does :P < 1297126021 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Also, handles Unicode properly. < 1297126027 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :not doing that is a feature :P < 1297126029 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Which is a bitch in some terminals. < 1297126036 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: Because you... like pain? < 1297126042 0 :poiuy_qwert!~poiuy_qwe@CPE001b115db0ae-CM0018c0c24ffc.cpe.net.cable.rogers.com JOIN :#esoteric < 1297126109 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :i just find it perfectly fine to select and paste instead of getting hit by a million ways to get url detection wrong :) < 1297126111 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Atomo has been updated < 1297126243 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: hit? if i don't want to open it as a url, i don't ctrl-click it < 1297126251 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :in the rare case that it gets something wrong, I do it manually < 1297126253 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :what's the problem :P < 1297126261 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it also handles emails IIRC, but again, clicking does nothing, it's ctrl+click < 1297126264 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or I think middle click < 1297126484 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh god < 1297126487 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :slashdot redesigned < 1297126495 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and it's... far better, actually < 1297126647 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mergeByteString :: Vector -> FungeSpace -> ByteString -> (Vector, FungeSpace) < 1297126647 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mergeByteString (ox,oy) fs s = ((by,bx),fs') < 1297126648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : where ((_,by),fs',_,bx) = B.foldl' byte ((ox,oy),fs,False,0) s < 1297126648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : byte (p@(x,y),fs,lastWasCR,biggestX) w < 1297126648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | w == ff || (w == lf && lastWasCR) = (p, fs, False, biggestX) < 1297126648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | w == cr || w == lf = ((ox,y+1), fs, w == cr, biggestX) < 1297126650 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | w == space = ((x+1,y), fs, False, max (x+1) biggestX) < 1297126652 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | otherwise = ((x+1,y), insertFS p (fromIntegral w) fs, False, max (x+1) biggestX) < 1297126654 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :variable: where's the really obvious bug? < 1297126666 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because i don't know :D < 1297126678 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust evo-shortened-0 >++<[..[.++.]+] < 1297126699 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust evo-shortened-1 [..[.++.]+] < 1297126701 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust evo-shortened-2 [..[.++.]] < 1297126807 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_evo-shortened-1: 12.1 < 1297126807 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_evo-shortened-2: 12.0 < 1297126807 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_evo-shortened-0: 17.4 < 1297126821 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :haskell development feels like it goes slower < 1297126828 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because you can't just go through the loop in your head until it makes sense < 1297126836 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you just sit there thinking... or in my case, not thinking < 1297126882 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Bluh. < 1297126889 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I have no idea why that works so well. < 1297126896 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :elliott, shouldn't the outer loop be an noop? < 1297126910 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: no, because the interpreter could change the cell in that cycle < 1297126913 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :both [ and ] take a cycle < 1297126915 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1297126921 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :And there's noops there too. < 1297126924 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :although... < 1297126930 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :]] i think is a nop < 1297126930 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wait no < 1297126935 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i think there's one case where you could not die < 1297126937 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297126940 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :don't try and understand it < 1297126944 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it's machine code :P < 1297126947 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :=p < 1297126963 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Although. < 1297126968 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :>< is a true noop < 1297126978 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :...unless you're at the end of the tape... < 1297126995 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: in bf joust, [-][] can loop forever < 1297126996 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1297127006 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :even if the [-] finishes < 1297127032 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :And [] can terminate. < 1297127033 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :=p < 1297127040 0 :augur!~augur@208-59-167-26.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1297127044 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297127048 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :well, +[] can, rather < 1297127110 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I find it quite suprizing really. < 1297127124 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :That a defensive program evolved that is. < 1297127130 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I should try and find out where it came from. < 1297127165 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :... < 1297127166 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :+..[[+-><+.[-[[++.]-[]]++][]+[>.+<[]][<--<>-]<(>.+[]-(-[+<[]]+[])*1<-+->.++<.[+.]>><+<.->.+..+)*7].<]><.-++-<+<+ < 1297127172 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :This is generation 100. < 1297127178 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Looks like it was defensive from the start. < 1297127196 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :surprizing, that's a new spelling ::D < 1297127198 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*:D < 1297127204 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1297127208 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: are you sure the hill didn't start out with a bunch of defence programs? < 1297127216 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :The hill started out randomly. < 1297127262 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297127279 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: make a new evolver hill with the current hill, that might be interesting, if your evolver has improved any < 1297127285 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it seems to be avoiding too many ()s which is an improvement < 1297127298 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :of course the problem is breeding two completely different strategies just results in a clusterfuck < 1297127303 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :do you do breeding yet? < 1297127305 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1297127311 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :It hasn't really been worked on recenty. < 1297127313 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :recently* < 1297127319 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Heh. Reminds me of evolutionary rock-paper-scissors. :-) < 1297127324 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I don't want to try breeding really. < 1297127335 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I /could/ try snipping of dead code tohg. < 1297127337 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :though* < 1297127402 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: that would help < 1297127410 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :otherwise it will probably just expand and mutate dead code in the long run < 1297127412 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Evolutionary rock-paper-scissors occurs when there are three species/subspecies, such that each of three can outcompete one of the others but is outcompeted by the remaining one. Result is dominant species/subspecies cyclically shifting. < 1297127447 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: you may want to talk to impomatic, he's from the core war world and they do a _lot_ of evolving to great success (really competitive), albeit of assembly programs and I think mostly short ones (really short: like less than 20 instructions) < 1297127453 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :might be able to gets tips :P < 1297127454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*get < 1297127463 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :What I really want to do is to try and prevent speicies from dying out. < 1297127469 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I might need to modify the core to do this. < 1297127475 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :(i.e. the non-mutation routines) < 1297127490 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: clearly, you need to evolve the mutation routines as a genetic algorithm < 1297127490 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Having more than one species alive at the same time would really help, methinks. < 1297127491 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297127498 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Other fun evolved stuff: Three species, one peaking 3 year intervals, one peaking 5 year intervals and one peaking 7 year intervals. All intervals are prime and minimize the number of years where multiple peak at the same year. < 1297127498 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Was BF Joust invented in Agora, or just appropriated by it? < 1297127556 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Ilari. < 1297127557 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1297127561 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: i thought you meant an evolutionary algorithm for rock paper scissors :D < 1297127566 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I know that defence->dumb rush < 1297127570 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Ah, it was an Agoran invention < 1297127573 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I don't know what closes the circuit. < 1297127574 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :=p < 1297127579 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: BEST - IDEA - EVER < 1297127601 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: TOTALLY < 1297127667 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :BF Rock Paper Scissors < 1297127739 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :aha! < 1297127742 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i think i know what the wrongs are. < 1297127748 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yes: the wrongs < 1297127792 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: i pushed correct Va (60, 119) < 1297127792 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: i pushed correct Vb (90, 16) < 1297127794 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SQUEESOME < 1297127804 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/tmp/dirge-for-accordion.ogg I NOTICE PEOPLE ARE NOT HEAPING PRAISE ON ME FOR THIS < 1297127812 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I loved it... < 1297127824 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: "People" is plural! X-P < 1297127837 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjouse test_d [[+]+] < 1297127844 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test_d [[+]+] < 1297127871 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_test_d: 8.3 < 1297127910 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust lose [-] < 1297127935 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_lose: 8.4 < 1297127939 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: (-8, -9) should be @ < 1297127943 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :... < 1297127948 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Would be totally cool if it told you what it is instead :P < 1297127962 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, why is... those things? < 1297127985 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: ITYM "I just shit my pants" < 1297128008 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[[Montgomery: What facts are your opinions based on? < 1297128008 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Britta Sundberg-Weitman: Facts.]] --Assange trial < 1297128011 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297128037 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's the lowest score a program can have? < 1297128040 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: It's a G. invention. < 1297128044 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust noop . < 1297128048 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust lose < < 1297128057 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Lymia, good point < 1297128058 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_noop: 8.3 < 1297128059 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_lose: 0.0 < 1297128072 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust poop [>>+] < 1297128072 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Who am I winning against? < 1297128076 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_poop: 0.0 < 1297128078 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :This is distressing < 1297128085 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust poop [>>+<-] < 1297128086 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_poop2: 98.7 < 1297128088 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :A tripwire variant. < 1297128090 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*poop: < 1297128092 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Darn :P < 1297128095 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Broke my joke. < 1297128095 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :elliott, w-wha? < 1297128097 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_poop: 0.0 < 1297128100 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: It was a joke :P < 1297128103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I was predicting my score. < 1297128108 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1297128120 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust willwin >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> < 1297128123 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_willwin: 0.0 < 1297128131 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :tripwire? < 1297128154 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap >>>>>>>>>(-)*128 < 1297128155 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust wontlose >.< < Eirin Eirin, Help me Eirin < 1297128167 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap: 2.9 < 1297128167 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_wontlose: 0.0 < 1297128170 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap >>>>>>>>>[(-)*128>] < 1297128180 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >>>>>>>>>-[(-)*127>-] < 1297128180 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap: 8.1 < 1297128190 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust braindead_attack (>)*128[-] < 1297128196 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 1.8 < 1297128196 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_braindead_attack: 0.0 < 1297128198 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, that really is braindead. < 1297128201 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :It goes off the edge. < 1297128248 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >>>>>>>>>-[(-)*128.+[-]>-] < 1297128260 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust attack_15 (>)*15[-] < 1297128265 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :crap 2, electric boogaloo < 1297128276 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 4.3 < 1297128276 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_attack_15: 2.9 < 1297128311 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >>>>>>>>>-((-)*128.+[-]>-)*20 < 1297128318 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :New contest: Smallest positive score < 1297128319 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1297128322 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >>>>>>>>>((-)*128.+[-]>-)*20 < 1297128327 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >>>>>>>>>-((-)*127.+[-]>-)*20 < 1297128330 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, ellott wins that dangit < 1297128335 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ellott < 1297128344 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 2.6 < 1297128345 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 2.6 < 1297128345 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 2.6 < 1297128354 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I N C E P T E L L O T T < 1297128366 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, simple. < 1297128367 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :2cool4skool < 1297128386 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust low_score (>)*10([-])*1000 < 1297128386 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Lymia, hm? < 1297128395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >-[[-]>-] < 1297128401 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :stop fucking up my shit, shitfuckers < 1297128417 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Lymia, how is that different from attack_15? What's the point of he *1000? < 1297128421 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :*the < 1297128424 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 2.0 < 1297128424 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_low_score: 7.8 < 1297128427 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Crap. < 1297128433 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >-[[-.]>-] < 1297128447 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust low_score (>-)*10([-]>)*2 < 1297128466 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust d_2 [[.]+] < 1297128492 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_d_2: 7.9 < 1297128493 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 6.8 < 1297128493 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_low_score: 0.1 < 1297128501 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Hah! < 1297128521 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :6.8 < 1297128522 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I win. < 1297128522 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's not bad < 1297128525 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :0.1 < 1297128525 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's not bad at all < 1297128530 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: i'm trying to do _well_ :D < 1297128531 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :elliott, can you get lower without going to 0? < 1297128542 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust crap2 >-[[-.]>+[+.]>-] < 1297128544 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I'm letting my evolver (try to) do that for me. < 1297128544 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :=) < 1297128545 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Lymia, how does it work? < 1297128556 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, first, it plants a decoy to let tripwire, etc kill it. < 1297128567 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_crap2: 11.5 < 1297128573 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Then it goes over to the first cell of the possible enemy tape, and tries to clear it. < 1297128579 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Then it tries to clear the second cell there. < 1297128586 0 :sebbu2!~sebbu@ADijon-152-1-27-215.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1297128593 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :11.5 < 1297128595 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :11.fucking5 < 1297128610 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust absolute_defecation >-[([-.]>+[+.]>-)*10] < 1297128626 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust evolotion_of_shit -.+-><-.-[.[(.)*2++]]-(-.)*1-+(>-.-<<+..<...<.<-.>>..+.)*3-.-<.-+<-+<-<>..-.<>.><-+-<+++.--.+-+<+<-+<+<-.<++-+<>-++>+[.<-.[<]]<.+<+<><<<><<.><>+>>-<-.<---[]+[]-.> < 1297128628 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_absolute_defecation: 15.9 < 1297128646 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lolwhat at the [] < 1297128649 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :15.9 < 1297128651 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i am < 1297128651 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so good < 1297128667 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, I didn't write that program. < 1297128668 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :=) < 1297128673 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :I wrote the program that wrote it. < 1297128677 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :the evoLOTION of shit? < 1297128679 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Why does your evolver allow it? < 1297128687 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_evolotion_of_shit: 16.4 < 1297128691 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust absolute_defecation >-[([++-.]>+[+--.]>-)*10] < 1297128693 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Does it have any effect on timing? < 1297128694 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_absolute_defecation: 18.5 < 1297128698 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :18.5 < 1297128700 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :18.5 < 1297128705 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, yes. < 1297128707 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :In fact. < 1297128713 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :[] on the home tile can detect attempts to kill you. < 1297128714 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Ah, so it may be useful < 1297128721 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust absolute_defecation >-[([++-.]>+[+--.]>-[-++])*10>-] < 1297128725 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_absolute_defecation: 7.1 < 1297128725 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :So I didn't need to write [.] < 1297128726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: not quite < 1297128729 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: it was changed so that doesn't work < 1297128732 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because ] takes up a cycle < 1297128732 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1297128734 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :meaning you die < 1297128736 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1297128747 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :! d_3 [[]+] < 1297128748 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pounce [[]-] < 1297128748 0 :sebbu!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297128749 0 :sebbu2!unknown@unknown.invalid NICK :sebbu < 1297128757 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust d_3 [[]+] < 1297128759 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :You'll beat tripwire < 1297128771 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297128775 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_d_3: 7.6 < 1297128776 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_pounce: 7.6 < 1297128789 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I thought it would be funny if they got different scores < 1297128790 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Darn < 1297128820 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :[e.g. a program being fooled by 1 but not -1 or visa versa] < 1297128851 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait, it's not two spaces then you're dead, is it < 1297128865 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust lie >(+)*127 < 1297128871 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust ponce []---------->>>>>>>>>((-)*127>)*20 < 1297128887 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_lie: 0.0 < 1297128888 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_ponce: 8.2 < 1297128892 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What? < 1297128897 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :8.2 < 1297128898 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297128907 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust ponce [--+.]---------->>>>>>>>>((-)*127>)*20 < 1297128915 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_ponce: 8.6 < 1297128921 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :How did I win not even against the stupid junk? How did noops win more than lie did? < 1297128926 0 :Lymia_!~moe@adsl-68-95-252-93.dsl.rcsntx.swbell.net JOIN :#esoteric < 1297128936 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Lymia_, see my question please < 1297128946 0 :Lymia!unknown@unknown.invalid QUIT :Disconnected by services < 1297128946 0 :Lymia_!unknown@unknown.invalid NICK :Lymia < 1297128947 0 :Lymia!unknown@unknown.invalid QUIT :Changing host < 1297128947 0 :Lymia!~moe@unaffiliated/cirno-chan JOIN :#esoteric < 1297128952 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust ponce [--+++--+-++-+--.]---------->>>>>>>>>((-)*127>)*20 < 1297128956 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_ponce: 10.7 < 1297128975 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust elliott_why_did_this_die >(+)*127 < 1297128986 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_elliott_why_did_this_die: 2.1 < 1297128992 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :... < 1297129009 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust because_poop < 1297129009 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297129026 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, because your decoy is horrible. < 1297129031 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :And you do nothing else than set it. < 1297129045 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but no-ops at least got positive scores before < 1297129061 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Better question: How dymanic is the hill, that I got a positive score the second time < 1297129066 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :"tripwires" as they seem to be called. < 1297129086 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :They expect decoys. < 1297129094 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :And so skip over the first filled cell. < 1297129096 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :someone < 1297129097 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fix < 1297129097 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :this < 1297129098 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fucking < 1297129098 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :code < 1297129099 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :shit < 1297129103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it's a shitty code < 1297129104 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :of shitness < 1297129109 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's an my opinion < 1297129110 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Lymia, _just_ the first? < 1297129120 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1297129121 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :maybe i a stupids < 1297129148 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dumb_tripwire_decoy >(+)*127>(+)*127 < 1297129159 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_dumb_tripwire_decoy: 2.1 < 1297129161 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh my god it worked!! just kitting < 1297129164 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i mean kidding < 1297129164 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Probably not enough time for it to work < 1297129167 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :shitfucking < 1297129169 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :um < 1297129245 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("o","\ETX#@>. 1#@vv\"@.4\"@#<.>$#v5#.< #>3.#@$ .^@^ 0@# 4.27.") < 1297129245 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wrote to mycotmp0.tmp with o. < 1297129246 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ok. < 1297129247 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that. < 1297129249 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :does not look righ. < 1297129250 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*right. < 1297129253 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> ord '\ETX' < 1297129253 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 3 < 1297129258 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :what. < 1297129261 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fucking what? < 1297129267 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust imprecise_tripwire_decoy >(+)*32>(+)*32>(+)*32 < 1297129268 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ooh, for one i forget to write newlines < 1297129277 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_imprecise_tripwire_decoy: 2.1 < 1297129291 0 :Sgeo!unknown@unknown.invalid NICK :Sgeo2dot1 < 1297129320 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: read written data to (-10, -10) < 1297129320 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: (-8, -9) is @ < 1297129322 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FUCKING YES < 1297129324 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :YES < 1297129326 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I JUST NEED BINARY MODE < 1297129327 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :YES < 1297129329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FUCKING < 1297129331 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :YES < 1297129335 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :HOTNESS < 1297129340 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :woooooooooooooooooooooooooo < 1297129349 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and then it's just like < 1297129351 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :concurrent funge < 1297129352 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and then fingerprints < 1297129355 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i am amazing < 1297129372 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i am the best, does everyone agree that i am the best < 1297129424 0 :Sgeo2dot1!unknown@unknown.invalid PRIVMSG #esoteric :Ignorers suck < 1297129465 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i don't know any of them < 1297129478 0 :Sgeo2dot1!unknown@unknown.invalid PRIVMSG #esoteric :... < 1297129496 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: ... Funge-98? < 1297129497 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Dang. < 1297129505 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: in two days, in Haskell < 1297129510 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ok, so I lack: < 1297129525 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :- text (non-binary) mode in i and o (easy to fix for i, slightly harder for o) < 1297129529 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :- concurrent funge (t support) < 1297129529 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and < 1297129535 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :- any kind of fingerprint support at all < 1297129544 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's still pretty impressive. < 1297129545 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: but it passes mycology with no BADs if I tell it I don't support i and o < 1297129560 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :also, it goes pretty fast, apart from when it shrinks the bounds, which I'm going to optimise < 1297129593 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SLOC Directory SLOC-by-Language (Sorted) < 1297129593 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :541 shiro haskell=541 < 1297129593 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1297129623 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... 541 lines of code‽ < 1297129660 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: SLOCs. < 1297129665 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i.e. disregarding whitespace and comments. < 1297129670 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Still. < 1297129696 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :apparently it would take $14,174 to develop :-P < 1297129705 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Total Physical Source Lines of Code (SLOC) = 541 < 1297129706 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Development Effort Estimate, Person-Years (Person-Months) = 0.10 (1.26) < 1297129706 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05)) < 1297129706 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Schedule Estimate, Years (Months) = 0.23 (2.73) < 1297129706 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (Basic COCOMO model, Months = 2.5 * (person-months**0.38)) < 1297129706 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Estimated Average Number of Developers (Effort/Schedule) = 0.46 < 1297129708 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Total Estimated Cost to Develop = $ 14,174 < 1297129710 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (average salary = $56,286/year, overhead = 2.40). < 1297129721 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: look at my beautiful hideous code < 1297129723 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mergeByteString :: Vector -> FungeSpace -> ByteString -> (Vector, FungeSpace) < 1297129723 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mergeByteString (ox,oy) fs s = ((bx,by),fs') < 1297129723 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : where ((_,by),fs',_,bx) = B.foldl' byte ((ox,oy),fs,False,0) s < 1297129723 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : byte (p@(x,y),fs,lastWasCR,biggestX) w < 1297129724 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | w == ff || (w == lf && lastWasCR) = (p, fs, False, biggestX) < 1297129726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | w == cr || w == lf = ((ox,y+1), fs, w == cr, biggestX) < 1297129728 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | w == space = ((x+1,y), fs, False, max (x+1) biggestX) < 1297129730 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : | otherwise = ((x+1,y), insertFS p (fromIntegral w) fs, False, max (x+1) biggestX) < 1297129930 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: MOST ELEGANT CODE? < 1297129941 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yay, binary reading now works < 1297129951 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :o just needs text mode < 1297129999 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: You'd like my planned fingerprint implementation design. It involves typeclasses and type families. < 1297130113 0 :Sgeo2dot1!unknown@unknown.invalid PRIVMSG #esoteric :Wait, the Notion Ink Adam exists now? It's shipping? < 1297130158 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :meh, tablets. < 1297130610 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ghc: panic! (the 'impossible' happened) < 1297130610 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (GHC version 6.12.3 for x86_64-unknown-linux): < 1297130610 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : TcTyFuns.flattenType: synonym family in a rank-n type < 1297130612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: do i get a prize? < 1297130885 0 :Laugarhraun!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297130897 0 :Laugarhraun!~Syd@3114.rez-gif.supelec.fr JOIN :#esoteric < 1297131038 0 :Laugarhraun!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297131279 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Urg. < 1297131287 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :It seems that my evolver has hit a local maxima. < 1297131296 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :-.+-><-.-[.[(.)*2++]] < 1297131299 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Completely conserved. < 1297131314 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Between 50 generations < 1297131316 0 :Sgeo2dot1!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wants to see the score < 1297131319 0 :Sgeo2dot1!unknown@unknown.invalid NICK :Sgeo < 1297131360 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust Lymias_local_maxima -.+-><-.-[.[(.)*2++]] < 1297131369 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :>.> < 1297131402 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :RIP EgoBot? < 1297131410 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_Lymias_local_maxima: 18.8 < 1297131433 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, huh < 1297131544 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: OMG, it actually works. < 1297131623 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :elliott. < 1297131629 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Make a call/cc opcode for Befunge. < 1297131636 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NO :P < 1297131642 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: That exists, basically. < 1297131645 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :There's TRDS, which is complete time travel. < 1297131654 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric ::V < 1297131668 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :Implement call/cc in C. < 1297131673 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle (a -> Bool) -> [a] -> Bool < 1297131673 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude all :: (a -> Bool) -> [a] -> Bool < 1297131673 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude any :: (a -> Bool) -> [a] -> Bool < 1297131674 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.List all :: (a -> Bool) -> [a] -> Bool < 1297131678 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle (a -> Bool) -> [a] -> a < 1297131678 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.List find :: (a -> Bool) -> [a] -> Maybe a < 1297131678 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude dropWhile :: (a -> Bool) -> [a] -> [a] < 1297131678 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude filter :: (a -> Bool) -> [a] -> [a] < 1297132198 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: haha, this is totally working except for one place where I need unsafeCoerce < 1297132200 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: but oh well, right? < 1297132205 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it'll only break if you break the invariants! < 1297132396 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: DO YOU WANT TO SEE MY AMAZING HACK < 1297132399 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: ? < 1297132400 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :IT'S REALLY BEAUTIFUL < 1297132402 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :{-# LANGUAGE RankNTypes, TypeFamilies, ExistentialQuantification, StandaloneDeriving, FlexibleContexts #-} < 1297132408 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And it *actually works!* < 1297132419 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I figured out how to model Funge-98 fingerprints really elegantly in Haskell. < 1297132424 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No: I mean *really* elegantly. < 1297132427 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Oh dear. < 1297132434 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It has exactly one use of unsafeCoerce (where GHC is too dumb to know that the types do match). < 1297132437 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :This hack is probably horrifying. < 1297132437 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But the rest is totally safe. < 1297132440 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's not. < 1297132448 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Huh. < 1297132467 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So, one instance of unsafeCoerce to get the type system to comply, eh? < 1297132475 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://hpaste.org/43765/fingerprints Read it. You might want to run "test" in GHCi to see it working. Note that it executes SLLY's F instruction, meaning that once it gets to P, the state flipped to False, which is how it gets output. < 1297132599 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Dang. < 1297132632 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: What I'm trying to say is: Jesus christ, I'm going to use unsafeCoerce in an actual program and I don't even feel _ashamed_. < 1297132643 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: That's genuinely impressive. < 1297132648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and I plan to use some Template Haskell magic to sweeten the Fingerprint-writing deal. < 1297132660 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For instance, NULL will look more like: < 1297132693 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :...well. < 1297132697 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Point is you won't have to write fpName separately. < 1297132700 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And the data type will be done for you. < 1297132709 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And maybe I'll even derive the list of handled instructions. < 1297133311 0 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1297134654 0 :Lymia_!~moe@adsl-68-95-252-93.dsl.rcsntx.swbell.net JOIN :#esoteric < 1297134668 0 :Lymia!unknown@unknown.invalid QUIT :Disconnected by services < 1297134668 0 :Lymia_!unknown@unknown.invalid NICK :Lymia < 1297134670 0 :Lymia!unknown@unknown.invalid QUIT :Changing host < 1297134670 0 :Lymia!~moe@unaffiliated/cirno-chan JOIN :#esoteric < 1297134717 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: it isn't working with maps :( < 1297134724 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I don't want an O(n) scan for every fingerprint instruction < 1297134773 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: :( < 1297134813 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Main> dmInsert NULL fpInitialState dmEmpty `dmAt` NULL < 1297134813 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NULLState < 1297134814 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fuck yeah < 1297134822 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :elliott, there was an update to Atomo < 1297134828 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1297134903 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Cannot match a monotype with `StateT FungeState IO' < 1297134904 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1297135237 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :wut < 1297135255 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: my program has regressed from beauty to beautiful but inscrutable types. < 1297136789 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: FIXED IT < 1297136791 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It uses maps now. < 1297136887 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: < 1297136890 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://hpaste.org/43766/fingerprints_2 < 1297136894 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Now with Data.Dynamic. < 1297136900 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Allow me to tell you how awesome this shit is: FUCKING AWESOME < 1297136909 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's... just working. < 1297137000 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: EXCUSE ME LOOK AT THE AMAZING < 1297137232 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297137924 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :lymia: don't do snipping of dead code. sometimes introns get activated and do useful things. leave the garbage in the evolving code and only remove it from the code that gets /tested/ and /scored/ < 1297137999 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust evo_wtf .++.++++><+-><>-(.[[([-])*2-]-.<.]>++[])*7+.[<.<<<>]+(.(+.-.<)*1.-.)*11[][]<+>.([]-<<[])*9-[+>[.[><.[]<+-><<.<[]+[(<)*8.>]--><(.[-<(-<<><)*12>++([<><][](-(>>>[]<)*2)*1[(>...[]<<([].[-].)*3+[>(+)*9[]])*20])*1+>->><]>[.+(.>.)*14-.<<]<><+.>[].->.+..[]+...>+<>--<[]-++-.+++->+>><.+-)*6>-<<[<<..-]<.(-<<->+)*10+.+>..<<<+.>].>>.-[]>]...>]>>(.+)*4>-+[].+(.+++[.<>]+)*4.<<><--> < 1297138042 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :quintopia, sometimes, that's easier said than done. < 1297138043 0 :Lymia!unknown@unknown.invalid PRIVMSG #esoteric :=p < 1297138089 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Lymia_evo_wtf: 0.9 < 1297138117 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Lymia: then don't do anything about dead code < 1297138162 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://hpaste.org/43768/fingerprints_3 < 1297138165 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Look at testShow. < 1297138171 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: That's right, I can print the state of any fingerprint, generically. < 1297138183 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yay, < 1297138184 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Er. Nested liftIO, lol. < 1297138193 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: You don't realise. The states are *Dynamic*s. < 1297138273 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Having pretty much perfected existence, I'm going to sleep now. < 1297138279 0 :elliott!unknown@unknown.invalid QUIT :Quit: Leaving < 1297138435 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it seems quite reasonable that he may actually produce the best funge98 interpreter to date... < 1297138968 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :At this rate? < 1297138970 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1297138991 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Knowing him? ... Actually, still possible that he gets the best funge98 interpreter before he stops. :P < 1297139156 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i wouldn't have thought so until tonight. but he's close enough now that the idea can't be discarded < 1297139182 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :he's a lot like me...i have scads of unfinished lost or broken projects lying around... < 1297139322 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Most of us do. < 1297139421 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :is procrastination in the hacker nature? < 1297139438 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Perhaps/ < 1297140040 0 :azaq23!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297140158 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297140239 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: can i get back to you on that? < 1297140344 0 :Wamanuz4!~Wamanuz@78-69-168-43-no84.tbcn.telia.com JOIN :#esoteric < 1297140531 0 :Wamanuz3!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297141169 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: no need. finding out the answer is a project i will have forgotten in a few days < 1297141235 0 :Zuu!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297141500 0 :Zuu!zuu@unaffiliated/zuu JOIN :#esoteric < 1297141913 0 :myndzi\!myndzi@c-24-19-39-178.hsd1.wa.comcast.net JOIN :#esoteric < 1297142019 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297142042 0 :myndzi!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1297142125 0 :amca!~amca@CPE-121-208-84-154.cqzr1.cha.bigpond.net.au JOIN :#esoteric < 1297142164 0 :augur!~augur@208-59-167-26.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1297142261 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297142872 0 :augur!~augur@208.58.6.161 JOIN :#esoteric < 1297144445 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Atomo tuples are.... bizarre < 1297144481 0 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1297144573 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is it possible to make a printed orchestral score for Purple Motion's musics? < 1297145201 0 :Lymia_!~moe@adsl-68-95-252-93.dsl.rcsntx.swbell.net JOIN :#esoteric < 1297145208 0 :Lymia!unknown@unknown.invalid QUIT :Disconnected by services < 1297145210 0 :Lymia_!unknown@unknown.invalid NICK :Lymia < 1297145212 0 :Lymia!unknown@unknown.invalid QUIT :Changing host < 1297145213 0 :Lymia!~moe@unaffiliated/cirno-chan JOIN :#esoteric < 1297146314 0 :aloril!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297146377 0 :calamari!unknown@unknown.invalid QUIT :Quit: Leaving < 1297146693 0 :oerjan!oerjan@129.241.210.70 JOIN :#esoteric < 1297146920 0 :Lymia_!~moe@adsl-68-95-252-93.dsl.rcsntx.swbell.net JOIN :#esoteric < 1297146956 0 :Lymia!unknown@unknown.invalid QUIT :Disconnected by services < 1297146957 0 :Lymia_!unknown@unknown.invalid NICK :Lymia < 1297146958 0 :Lymia!unknown@unknown.invalid QUIT :Changing host < 1297146958 0 :Lymia!~moe@unaffiliated/cirno-chan JOIN :#esoteric < 1297147211 0 :aloril!~aloril@84.249.126.153 JOIN :#esoteric < 1297147267 0 :azaq23!unknown@unknown.invalid QUIT :Quit: Leaving. < 1297147805 0 :Lymia_!~moe@adsl-68-95-252-93.dsl.rcsntx.swbell.net JOIN :#esoteric < 1297147984 0 :Lymia!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297148393 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Whose idea was it anyways to make C comments start with /* even though / is a valid binary operator and * is a valid unary prefix operator? < 1297148454 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :fancy google logo... < 1297148468 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :At least with C++ comments (also valid in many C compilers) start with // which is an invalid syntax in C, so it is OK that the comment starts with // < 1297148486 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: // comments are C99. < 1297148507 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :As for why /*? I dunno. The block comment syntax in C is a major misfeature. < 1297148509 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: That is one of the good things they added in C99. < 1297148517 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION vaguely recalls someone saying they removed =- for that reason < 1297148543 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and i guess =+ and =* too < 1297148558 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: More like "replaced with something saner". < 1297148569 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh the reverse didn't exist? < 1297148576 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Nope. < 1297148608 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :are there any remaining such ambiguities other that /* ? < 1297148664 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Probably, but not many, I'd imagine. < 1297148675 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :There are really strange things such as (x+++++y) which according to the order of the parser, will always cause it to resolve in an invalid way even though there is a way to split it in which is valid, but that is not quite the same kind of thing. < 1297148687 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Unlike C++, where you need to evaluate lambda calculus in order to parse. :P < 1297148710 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm haskell has the same problem with things (although not - which would give a comment) followed by - < 1297148724 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's also plain <, which may be a comparison operator or a start of <<; same goes for - and ->. < 1297148725 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :which is probably the reason they consider unary - ugly < 1297148743 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Aaah yes. < 1297148745 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: But in C, < is only a binary operator so < < is not a valid syntax. < 1297148752 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: But << is. < 1297148764 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :<< is also a binary operator. :) < 1297148772 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Same with -> because - is not a unary suffix operator so - > is not a valid syntax. < 1297148780 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :-> is *also* a binary operator. < 1297148784 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :That is why things like << and -> and // are OK. < 1297148795 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It is better in that sense than the /* thing. < 1297148796 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: for +++++ i guess it's better to give an error than to mislead when it's ambiguous < 1297148808 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :True, it is much much better than /*. < 1297148818 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although what about just +++ ? < 1297148820 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Especially given the really odd rules for *ending* such a comment block. < 1297148836 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Ow. < 1297148853 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I think the specification actually says to treat it as (x ++ ++ + y) but that is wrong because x++ is not lvalue. < 1297148882 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Such strange cases are not particularly important, though. < 1297148889 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :+++ is always ++, +; it's the longest token always. < 1297148913 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297148989 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let x =-3 in x -- >:| < 1297148990 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : : parse error on input `in' < 1297149008 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :However, unlike << and -> and // but -- is different because - is valid unary operator to make - - but in this case it is also OK because putting two negative signs cancel each other out and is redundant. < 1297149038 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Unary minus in Haskell is very much a hack. < 1297149046 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let x =- y = -y in 2 =- 2 -- >:| < 1297149047 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : -2 < 1297149077 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The more thing happened when the first - is binary operator and the second - is unary, but that also shouldn't matter. < 1297149091 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It is only /* which is the worst one. < 1297149165 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Do any processors have a command to bitshift a number of any length and use bitwise AND/OR/XOR on numbers of any length? < 1297149189 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh and of course -- does this in haskell too < 1297149205 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What does -- do in Haskell? < 1297149210 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Comment. < 1297149214 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let x +-- y = x+y in 2 +-- 2 -- is a comment < 1297149215 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 4 < 1297149241 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :But it's also an entirely valid string in an operator. :) < 1297149242 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :in this case putting -- directly after an operator makes it _not_ a comment < 1297149279 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although honestly i don't see it as much of a problem because my intuition is already that operator characters fuse in haskell, and i like to use space < 1297149388 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> do x <- Just $ 2 < - 2 in x < 1297149389 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : : < 1297149389 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : The last statement in a 'do' construct must be an ... < 1297149391 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :er < 1297149394 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> do x <- Just $ 2 < - 2; x < 1297149395 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `Data.Maybe.Maybe b' < 1297149395 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : against inferred ... < 1297149402 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :bah < 1297149405 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> do x <- Just $ 2 < - 2; return x < 1297149406 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Just False < 1297149421 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :If whoever invented C decided that instead of /*...*/ that a comment is */.../* or {*...*} or (*...*) then you would not have that problem. < 1297149437 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :...i guess that lambdabot response captures my attitude to this... < 1297149501 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::t do x < - Just $ 2 < - 2; return x < 1297149502 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `Expr' < 1297149502 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : against inferred type `a -> Maybe a' < 1297149502 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : In the expression: Just < 1297149509 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Heck, there'd be less of an issue if K&R just made them nest the sane way. < 1297149509 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::t \x -> do x < - Just $ 2 < - 2; return x < 1297149511 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `a -> b' against inferred type `Bool' < 1297149511 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : In the first argument of `($)', namely `x < - Just' < 1297149511 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : In a stmt of a 'do' expression: x < - Just $ 2 < - 2 < 1297149521 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hmph < 1297149543 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: But, it kinda shows that they really designed around ridiculously simple parsers, as was reasonable back in the day. < 1297149545 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1297149563 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: These things has not to do with the nesting of comments, though. < 1297149574 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I do not think the comments have to nest. < 1297149589 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: /* /* /* /* */ < 1297149596 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The above is bloody confusing. < 1297149611 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: It is confusing, but I do not consider it to be the problem. < 1297149617 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, not *bloody* confusing. < 1297149632 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Mix in preprocessor pain and agony and it gets to actually be that way. < 1297149661 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The problem is dividing by something pointed from another value. < 1297149663 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :God damn the C preprocessor. < 1297149709 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :C preprocessor works for some things.... but some things it doesn't which is why I made things in Enhanced CWEB you can also use the prepreprocessor, and even the preprepreprocessor. < 1297149766 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let x = 1 in do x < - 2 *> Just True; return x < 1297149767 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Precedence parsing error < 1297149767 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : cannot mix `GHC.Classes.<' [infix 4] and `Con... < 1297149790 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :...they have the _same_ precedence? < 1297149808 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let x = 1 in do x < - 2 >> Just True; return x < 1297149809 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `m a' < 1297149810 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : against inferred type `GHC.Bool.... < 1297149821 0 :impomatic!~chatzilla@86.241.112.87.dyn.plus.net JOIN :#esoteric < 1297149825 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> (0$0 >>) < 1297149825 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : The operator `GHC.Base.>>' [infixl 1] of a section < 1297149826 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : must have lower pre... < 1297149844 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> (0$0 <) < 1297149845 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : The operator `GHC.Classes.<' [infix 4] of a section < 1297149845 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : must have lower pr... < 1297149856 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1297149860 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust timeout http://candlebags.co.uk/temp/5.txt < 1297149887 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_timeout: 15.0 < 1297149926 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297149940 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm sure there must be _some_ way to get a haskell expression to give two different valid results if you change a <- into < - , but i don't seem to get there with the common operators < 1297149987 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1297150007 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoy_for_lazy_programs (>+)*5 < 1297150017 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :However, with -> operator in C, it is not really necessary if they made . do both what . does now and what -> does now, but at least -> works because the individual - > in that sequence is bad, so -> is OK. < 1297150019 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_decoy_for_lazy_programs: 0.0 < 1297150032 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Awesome, I suck. < 1297150079 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust timeout http://candlebags.co.uk/temp/5.txt < 1297150086 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_timeout: 15.2 < 1297150108 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nothing_to_see_here (-)*127 < 1297150125 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_nothing_to_see_here: 8.1 < 1297150259 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sine (-)*127[-+] < 1297150275 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_sine: 10.9 < 1297150277 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The C preprocessor is weak but what I think is adding a command to catch compiler errors would be useful. < 1297150280 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Hah < 1297150295 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust timeout http://candlebags.co.uk/temp/5.txt < 1297150303 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_timeout: 14.4 < 1297150337 0 :zzo38!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297150347 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust timeout http://candlebags.co.uk/temp/5.txt < 1297150354 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_timeout: 15.3 < 1297150570 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust timeout (>)*8(>[++++[-]])*21 < 1297150579 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_timeout: 13.8 < 1297150610 0 :impomatic!unknown@unknown.invalid QUIT :Quit: ChatZilla 0.9.86 [Firefox 3.5.16/20101130074636] < 1297151999 0 :clog!unknown@unknown.invalid QUIT :ended < 1297152000 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1297158495 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1297158495 0 :clog!nef@bespin.org JOIN :#esoteric < 1297158648 0 :sixdej|sleep!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297161653 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297161985 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297162190 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1297163046 0 :hiato!~nine@clam.leg.uct.ac.za JOIN :#esoteric < 1297163046 0 :hiato!unknown@unknown.invalid QUIT :Client Quit < 1297163280 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297163485 0 :poiuy_qwert!~poiuy_qwe@CPE001b115db0ae-CM0018c0c24ffc.cpe.net.cable.rogers.com JOIN :#esoteric < 1297164264 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1297164330 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297164345 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297164887 0 :ais523!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297165203 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297165292 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let (<$) = fmap . const; infixl 1 <$ in do x <- y <$ Just z ; return x < 1297165293 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Just y < 1297165304 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let (<$) = fmap . const; infixl 1 <$ in do x < - y <$ Just z ; return x < 1297165306 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Just x < 1297165464 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hooray. < 1297165493 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :there's still that pesky (<$) fixity < 1297165740 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> bool < 1297165740 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Not in scope: `bool' < 1297165743 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> if' < 1297165744 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Not in scope: `if'' < 1297165814 0 :pikhq_!~pikhq@174-22-165-57.clsp.qwest.net JOIN :#esoteric < 1297165816 0 :pikhq!unknown@unknown.invalid QUIT :Ping timeout: 250 seconds < 1297165848 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let f | x <- 2 = True in f < 1297165849 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : True < 1297165854 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let f | x < - 2 = True in f < 1297165855 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : *Exception: :3:4-21: Non-exhaustive patterns in function f < 1297165868 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297165898 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let f | x < - 2 = True | otherwise = False in f < 1297165899 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : False < 1297165903 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let f | x <- 2 = True | otherwise = False in f < 1297165903 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : True < 1297165910 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok that one works < 1297166005 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You win a point. < 1297166308 0 :pikhq_!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297166450 0 :pikhq!~pikhq@71-219-220-111.clsp.qwest.net JOIN :#esoteric < 1297167010 0 :amca!unknown@unknown.invalid QUIT :Quit: Farewell < 1297168927 0 :azaq23!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1297169010 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297169450 0 :azaq231!~derivecto@p4FF68C75.dip0.t-ipconnect.de JOIN :#esoteric < 1297169487 0 :azaq231!unknown@unknown.invalid QUIT :Changing host < 1297169487 0 :azaq231!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297169548 0 :azaq23!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297169581 0 :azaq231!unknown@unknown.invalid NICK :derivector_azaq2 < 1297169596 0 :derivector_azaq2!unknown@unknown.invalid NICK :derivector < 1297169603 0 :derivector!unknown@unknown.invalid NICK :azaq23 < 1297170416 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :curious: defend7 and chainmail beat the entire field of programs between them, and tend to do well against programs the other does badly against < 1297170419 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :despite being almost identical < 1297170423 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what's happening there? < 1297171850 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1297171974 0 :yiyus_!unknown@unknown.invalid NICK :yiyus < 1297172095 0 :azaq23!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297172866 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297173944 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, details of timing? < 1297173960 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :just an idea < 1297173963 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: that seems pretty likely to be involved, indeed < 1297173977 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's strange how they're so completely different in that respect < 1297174018 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, apart from that I can only recommend the obvious method of trying various changes to make one of them more like the other and see which change makes what happen < 1297174180 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, err, you might know the answer to this: I'm looking for a directed graph (may or may not be acyclic) data type in haskell, able to label nodes and edges. Where should I look? I don't really know the standard library of haskell very well yet but I presume it is there somewhere. < 1297174218 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't know Haskell's stdlib well at all < 1297174222 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle graph < 1297174222 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :module Data.Graph < 1297174222 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :module Data.Graph.Inductive.Graph < 1297174223 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph type Graph = Table [Vertex] < 1297174226 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297174230 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lambdabot does, though < 1297174238 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :right. didn't know that command < 1297174244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that might not be what you want < 1297174257 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well hard to tell. guess I'll google it < 1297174299 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :if it is the same as this http://www.haskell.org/ghc/docs/latest/html/libraries/containers-0.4.0.0/Data-Graph.html ? < 1297174463 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297174480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :looks like it < 1297174480 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :indeed not < 1297174486 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, doesn't label edges < 1297174499 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I need multiple differently labeled edges between the same node pair sometimes < 1297174524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aha, I think I've identified a flaw in defend7, which is also potentially in chainmail but harder to trigger < 1297174588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend10 http://sprunge.us/ZXiO < 1297174591 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I admit ignorance. What is an inductive graph? < 1297174596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure either < 1297174603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm hardly a Haskell expert < 1297174606 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :because Data.Graph.Inductive.Graph has labeled edges < 1297174628 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :type UEdge = LEdge () "Quasi-unlabeled edge" <--- heh < 1297174641 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297174648 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend10: 39.0 < 1297174662 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, which is strange since it also has type Edge = (Node, Node) which is just "Unlabeled edge" < 1297174686 0 :pikhq!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297174718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, that just made things even more confusing < 1297174725 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it definitely depends on minor timing details < 1297174760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend10 http://sprunge.us/EZYj < 1297174776 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend10: 36.8 < 1297174822 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :now if I just could figure out what the hell an inductive graph was... < 1297174823 0 :pikhq!~pikhq@71-219-215-28.clsp.qwest.net JOIN :#esoteric < 1297174829 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :google isn't very helpful < 1297174834 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :who here is a haskell expert < 1297174834 0 :poiuy_qwert!~poiuy_qwe@CPE001b115db0ae-CM0018c0c24ffc.cpe.net.cable.rogers.com JOIN :#esoteric < 1297174907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend10 http://sprunge.us/MWQf < 1297174918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that one works on a bit of a different mathematical formula < 1297174920 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend10: 0.0 < 1297174926 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait what? < 1297174937 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1297174944 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, must have an error < 1297174991 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test . < 1297174996 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Client Quit < 1297175002 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_test: 8.6 < 1297175011 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :see. even that... so likely an error < 1297175030 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nope, I just got the maths wrong < 1297175042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, haha, not that either < 1297175048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or, yes, is that < 1297175099 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >+<. < 1297175107 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_test: 0.0 < 1297175112 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297175167 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There is that FGL thing. < 1297175182 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't know if it's any good and/or maintained. < 1297175190 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :("Functional Graph Library" or something.) < 1297175204 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I just remember seeing a libghc6-blah package for it in Ubuntu. < 1297175258 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It seems to be Data.Graph.Inductive. < 1297175266 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Based on http://hackage.haskell.org/package/fgl < 1297175303 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, any idea what it means with "inductive graph" < 1297175316 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend10 http://sprunge.us/EIJX < 1297175331 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend10: 10.7 < 1297175337 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :whops have to rush < 1297175339 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I *think* it just means their way of doing a graph API, nothing specially particular. < 1297175344 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But I could be worng there. < 1297175358 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes insane due to lack of accomplished homework < 1297175372 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Graph-as-a-recursive-datatype sort of thing. < 1297175524 0 :Sgeo!unknown@unknown.invalid QUIT :Quit: Need to accomplish a weekend's worth of homework in 10 minutes. < 1297175720 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend10 http://sprunge.us/CWIN < 1297175739 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend10: 55.1 < 1297175760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a genuinely different mathematical principle from defend7, now < 1297175832 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and straight to the top of the leaderboard < 1297175842 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not bad after the previous two versions scored 0 and 10.7 < 1297176268 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : but that might not be what you want <-- well if hoogle doesn't find it, i think the next step is to look in hackage... < 1297176420 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :mind you all i really recall about graphs in haskell is that there are packages but it's supposedly awkward to do functionally < 1297176435 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also you seem to want multigraphs... < 1297176443 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: ^ < 1297176455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it seems that defend10 wins more convincingly than defend7 against many opponents where they both win, too < 1297176653 0 :azaq23!unknown@unknown.invalid QUIT :Quit: Leaving. < 1297177207 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ponders if we should make an Esolang:Classics page for listing particularly interesting languages < 1297177257 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm i guess i should post this on the wiki < 1297177474 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that sounds like a POV nightmare, with everyone wanting their own langs there < 1297177483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not that I'm opposed to the concept if it's workable < 1297177491 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, whatever happened to the Essies? < 1297177502 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ah but i had an idea for a sponsoring rule - and you cannot sponsor your own language < 1297177514 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i.e. this page would _not_ be free for all < 1297177556 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perhaps the wiki isn't the best place for it, then < 1297177558 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or would it still be a problem with sockpuppets... < 1297177576 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I suppose it's the only even partially active esolangs forum other than #esoteric < 1297177588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sockpuppets wouldn't necessarily be a problem, you could think up ways to exclude them < 1297177606 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well the thing is there are _so_ many languages on the wiki that it's hard to find the good stuff < 1297177629 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well there is the Special:Favorites page, or what it's called < 1297177638 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and the Timeline < 1297177659 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i guess i'm really just asking for a bit better organization < 1297177662 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Graph-as-a-recursive-datatype sort of thing. <-- hm, can it handle cycles < 1297177669 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I'm pretty sure I will have cycles < 1297177677 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Sure. < 1297177682 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is having second thoughts < 1297177700 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : also you seem to want multigraphs... <-- yes indeed < 1297177733 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: although in some ways you could do multigraphs with a label that was a set, maybe < 1297177754 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although whether that fits the algorithms you need to use... < 1297177790 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, what I'm looking for I guess is something like erlang's digraph module, which can do various types of digraphs depending on what you request. In it's most general variant that would be directed multigraphs with cycles I guess < 1297177797 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :My initial assumption would be that in FGL graphs you could insert multiple differently-labeled edges between two nodes, but it doesn't seem to be very comprehensively documented. < 1297177808 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, well that seems somewhat awkward, though it could be done < 1297177851 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: hm will you have _loops_? (cycles from an edge to itself) < 1297177854 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*vertex < 1297177910 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: i guess what you need depends on what you need to do with it - if it's just something simple you might just want to roll your own < 1297177920 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I think the smallest cycle I will have would contain at least two nodes. < 1297177925 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1297177941 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yep. I can't think of how I could get loops < 1297177960 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, anyway yes I could roll my own, but I don't like to reinvent the wheel < 1297177978 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not unless I have a reason to at least < 1297178026 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, anyway, I will very likely need to update the graph quite a bit. So it would be preferable if that wasn't a too expensive operation < 1297178036 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297178077 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: purely function might not be the best then, but i don't know how good those packages are. i guess you just have to read their documentation (if they have any) < 1297178083 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*functional < 1297178091 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :FGL's source is short and (moderately) cryptic. :p < 1297178103 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :At least for the Data.Graph.Inductive.Graph module. < 1297178104 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, haskell would be nice for various other reasons for this thing, but I might go for another language if that would be less work. < 1297178113 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :insEdge :: DynGraph gr => LEdge b -> gr a b -> gr a b < 1297178113 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :insEdge (v,w,l) g = (pr,v,la,(l,w):su) & g' < 1297178113 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : where (Just (pr,_,la,su),g') = match v g < 1297178137 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's quite tuplestic. < 1297178140 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297178141 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Ledge is labeled edge, i presume < 1297178149 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, from the docs it seemed like that yes < 1297178153 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, LEdge b is (Node, Node, b). < 1297178155 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*Ledge < 1297178157 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :er < 1297178161 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*LEdge < 1297178172 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION swats his left middle finger < 1297178187 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait it's the right pinky which needs swatting < 1297178221 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well insEdge doesn't look bad at least < 1297178271 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: writing an Eodermdrome interp? (although that probably wouldn't need labeled edges unless it would help for algorithmic purposes) < 1297178304 0 :copumpkin!unknown@unknown.invalid QUIT :Quit: Computer has gone to sleep. < 1297178310 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I expect this kind of workflow: insert lots of nodes and edges, then a longer period of removing with a handful of inserts only. < 1297178317 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, alas no. < 1297178325 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: heh < 1297178337 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I shall check out that language though < 1297178339 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :sounds interesting < 1297178346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is, but a pain to implement < 1297178347 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's a bitch to program ;D < 1297178350 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*too < 1297178360 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh that one < 1297178364 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, I think I wrote one (untested) program than gave up < 1297178366 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I seen the wiki page before < 1297178371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*I saw? < 1297178379 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well my program is also untested of course < 1297178380 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :have seen* < 1297178380 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :even < 1297178392 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, indeed, although that's rather needlessly formal < 1297178409 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or well "of course" i _think_ there's an interpreter floating around somewhere (by oklopol?) but maybe not online < 1297178438 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*I've seen, maybe? < 1297178448 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I remember oklopol was writing one, but IIRC didn't see the finished product < 1297178453 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :anyway, it is language implementation related, but I do not wish to reveal everything atm because it might just not work out at all, in which case I don't want elliott laughing at me. :P < 1297178459 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :brb phone < 1297178530 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: when i thought about writing an eodermdrome interpreter i got this idea that there's a near endless amount of indexing you might want to do to make finding subgraphs reasonable efficient < 1297178554 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :like having a list of all single-edge vertices, etc. < 1297178561 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :indeed, it's one of those esolangs where a clever caching strategy can make it run much faster < 1297178562 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*reasonably < 1297178575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like 1cnis or Feather, although just trying to get Feather to work at all is hard enough < 1297178610 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think what I'll do is get an interp written in Scheme working first, and then write a Scheme interp designed to interpret Scheme programs interpreting Feather efficiently < 1297178617 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is likely easier than trying to write a second Feather interp < 1297179193 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :back < 1297179278 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hrrm. Data.Graph.Inductive.Graph lacks topsort (I expect my processing of it will remove all cycles, and then I want to topsort it) < 1297179383 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :actually it seems that erlang has exactly the module I need. And well documented. And it is fast for updating (it is implemented in a non-pure way if you look deep enough) < 1297179411 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but other than this (main) structure of the program haskell would be so much nicer < 1297179429 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle digraph < 1297179429 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :No results found < 1297179435 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well, worth a try < 1297179579 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: topsort's in Data.Graph.Inductive.Query.DFS. < 1297179584 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Applicable to a Graph. < 1297179590 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, aha < 1297179600 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(After all, DFS is how you topologically sort a DAG.) < 1297179646 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(Okay, so it's a pretty poor justification.) < 1297179666 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`addquote "My real name is 4, but I go by fizzie3 on the Internet. I log in as 1." < 1297179712 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :300) "My real name is 4, but I go by fizzie3 on the Internet. I log in as 1." < 1297179723 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Is that referring to something? It really sounds like it is. < 1297179784 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: it's when you logged in yesterday via USER 1 2 3 4 < 1297179786 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I have to say that library is very poorly documented though. < 1297179800 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was `addquoting from logreading < 1297179804 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't even list complexity of functions like insertion and so on < 1297179807 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes, but the actual thing. It sounds like a paraphrased quote from some fictional work. < 1297179834 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297179859 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's a bit near the end of Alice Through the Looking Glass that works a bit like that, but it's different enough that that isn't a paraphrased quote < 1297179919 0 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1297179967 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hey, in Befunge-98, if you manage to completely delete every command from fungespace, leaving it with spaces everywhere, what does y return? < 1297179980 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I'm wondering if that's an "if a tree falls..." question, or if there's some way to actually run y on a blank fungespace) < 1297179986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in particular, for the fungespace bounds < 1297180020 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's easy to see bounds update algos going into an infinite loop on empty fungespace; but then, the program goes into an infinite loop then anyway, so that behaviour can't be said to be incorrect < 1297180026 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I don't think you can. Unless you use some multiverse-style fingerprint. Even k trickery wouldn't be enough here < 1297180059 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not even t trickery, I think < 1297180064 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297180177 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: The EXEC fingerprint has X (cmd n --) "execute command on stack n times". < 1297180182 0 :MigoMipo!~John@84-217-11-170.tn.glocalnet.net JOIN :#esoteric < 1297180195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that would work, I think < 1297180210 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You'd need to execute the X itself, though. < 1297180210 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I can tell you what would happen when loading an empty file in cfunge, and that is that the boundsvalid variable would never be set to true. I don't know what effects that has. I never investigated the empty file case further than "yep, it seems to be an infinite loop, *hits ctrl-c*" < 1297180222 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can use X containing X < 1297180230 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with the first copied X running p, and the second running y < 1297180240 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, k and X trickery could do it < 1297180254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: what about annihilator programs? < 1297180255 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that sounds possible. < 1297180264 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, both kX and 'XX seem to work < 1297180270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with suitable stack layouts < 1297180274 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well they end up with infinite loop. I never investigated where the loop was < 1297180282 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but cfunge updates bounds lazily. < 1297180294 0 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1297180298 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even in slowdown.b98? < 1297180341 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm not sure if EXEC implementations are typically tested against recursive X, though. < 1297180345 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, the logic in the wrapping code goes something like: if not exact bounds, and maxbounds - minbounds > somelargeconstant: force a shrink < 1297180377 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, I see < 1297180379 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, the constant is indeed a fudge factor that I arrived at with some testing on my sempron 3300+ system. Might vary between systems of course < 1297180380 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that makes sense < 1297180454 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, same as I switch shrinking algorithm when the bound difference is large enough, by assuming we are dealing with a sparse rather than compact funge space (and thus shrinking by stepping borders inwards would be stupid). < 1297180496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :being stupidly micro-optimised is so eso in its own right < 1297180513 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm does mycology test what happens if you kp and then ensures the stack is such that it overwrites the k in the middle of the loop? < 1297180568 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, actually those two are not microoptimising. They are just switching to algorithms that don't take tens of seconds for slowdown.b98. No other program runs into this sort of huge bound shrinking in practice. < 1297180582 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297180644 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway, no one ever complained about stuff like BLAS generally needing to be tuned to the specific system! < 1297180660 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :(okay that is quite different, but still) < 1297181321 0 :asiekierka!~asiekierk@178235033089.elblag.vectranet.pl JOIN :#esoteric < 1297181392 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :uh-oh, heard in the office: "what's the point of [Apple keyboards]" < 1297181406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this argument could last a while < 1297181409 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why [ ]? Did it replace some profanity? < 1297181416 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it replaced a pronoun < 1297181420 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297181433 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Namely, "him" < 1297181454 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION facepalms and then swats Gregor -----### < 1297181454 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not a lot unless you have a mac, and even then just for key labels (cmd or whatever) < 1297181463 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I forget which pronoun it was now (probably "that"), but "him" seems unlikely < 1297181470 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297181492 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :TODO: censor all the pronouns in http://en.wikipedia.org/wiki/Special:Search?go=Go&search=Brainfuck < 1297181503 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, besides aren't all apple keyboards ultra flat or something? < 1297181508 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, I think someone did something similar a while back < 1297181509 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :or do they still make proper keyboards? < 1297181513 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I don't know, I'm not a keyboard maniac < 1297181845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : !bfjoust attack_15 (>)*15[-] <--- that's a pretty specific program < 1297181858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suppose it beats pretty much anything on a program with tape length 16, and fails otherwise < 1297181880 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well, that's 1/21 tape lengths :P < 1297181911 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297181922 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it didn't do very well < 1297181925 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the concept is hilarious < 1297181949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(tripstridewire does that on tape length 10, with the exception that it doesn't just give up on different lengths) < 1297181965 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and uses an offset clear) < 1297181972 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust aaaaah_motherland (>++)*5(----<)*5[(>++++)*5(----<)*5] < 1297181993 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_aaaaah_motherland: 0.0 < 1297181998 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297182004 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : lolwhat at the [] <--- defend10, currently top of the leaderboard, doesn't just contain [] but [[]] < 1297182004 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That is surprisingly bad :P < 1297182024 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, why that name < 1297182027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: programs that set up decoys and then don't do anything else tend to do very terribly on the current hill < 1297182033 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: AAAAH MOTHERLAND < 1297182038 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's hard to see how they could do well on most others < 1297182048 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, yes why that. Is it a reference to something < 1297182049 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297182055 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: um [[]] is entirely redundant, right? < 1297182056 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: AAAAH MOTHERLAND < 1297182062 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: no < 1297182070 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1297182075 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :]] checks to see that the opponent isn't interfering with the cell < 1297182076 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :equivalent to [] < 1297182076 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, stop that. You are acting like elliott now < 1297182084 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297182088 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you only leave the loop if it's zero two cycles in a row (the lose condition) < 1297182100 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: There is no reasoning behind the name :P < 1297182105 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :several programs won't leave a cell until it's zeroed two cycles in a row, so you're detecting them detecting you < 1297182106 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, ah < 1297182112 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :while not accidentally tripping on, say, an offset clear < 1297182120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which takes the cell past 0 and then back to 0 < 1297182178 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: i got this soviet vibe from it < 1297182192 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: That was the intended vibe :P < 1297182197 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but which cell does it do that [[]] on? < 1297182208 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :second cell, which is set to 1 < 1297182212 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ah < 1297182222 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :any nonzero value will do, it's just checking to see when the opponent clears it < 1297182228 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust < 1297182228 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297182231 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and then what. Tries to defend the real square? < 1297182234 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could also check to see how, e.g. detecting offset clears, but defend10 doesn't do that < 1297182246 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yep, it tries to lock the opponent in an infinite loop on that square < 1297182250 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, have you considered defending cell 2 then cell 1 and then cell 0? < 1297182251 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I am so, so bad at BFJoust :P < 1297182257 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :while slowly looping all the other squares on the tape down to 0 < 1297182276 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how does it avoid running off the remote end? < 1297182281 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I have, but there doesn't seem to be much of a point, unless maybe you defended them with different algos < 1297182294 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and by looping each square through 256 possible values before moving onto the next < 1297182315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if it does that to a flag, the program ends before it runs off the end; if it does it to a non-flag, then it's safe to move forwards < 1297182322 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what is the tape length range now again? < 1297182326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10 to 30 < 1297182329 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297182331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :inclusive < 1297182373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as for which square to place the decoy on, that's the main difference between my defend7 and impomatic's chainmail < 1297182414 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, has anyone invented any majorly different type of program the past few months? < 1297182416 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nonsense (-)*127++[(----++++)*50] < 1297182420 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :multiple defence only really makes sense if a) you can detect that your defence failed so as to move back (not too difficult, move back a few cycles early and check to see if it's 0 two cycles in a row); b) you have a different algo for the square before < 1297182426 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'd say stridewires are a new program type < 1297182432 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how do they work < 1297182432 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_nonsense: 14.3 < 1297182451 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's the highest score I've ever gotten X-P < 1297182455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :by looking not at every tape element, but at alternate elements < 1297182476 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, tripwire would pass defend7 by just jumping over it's decoy, right? < 1297182478 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so the idea is that opponents generally set several decoys, and half the time you skip the first < 1297182494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: and yes, except that defend7 has a second decoy just to trip tripwires < 1297182497 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297182520 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust obvious (>)*9([[-]]..>)*21 < 1297182528 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_obvious: 9.5 < 1297182541 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION revels in a "Screw you guys, I'm not coming in" day < 1297182541 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: that's like my stupid defender clearer < 1297182545 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you could fool stridewires by spacing your decoys correctly. At least for about half of the runs < 1297182551 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, have anyone tried this? < 1297182559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so-called both because it clears stupid defenders, and because it stupidly clears defenders < 1297182578 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: stridewires aren't very good, so it hasn't really been necessary < 1297182585 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and even then, they could randomise their spacing to counteract it < 1297182605 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the reason tripstridewire does as well as it does is because a) it tends to win on short tapes due to being so aggressive, and b) it wins a fraction of the longer ones < 1297182617 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1297182620 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so although it tends to lose overall, most of them are close losses rather than losing on every length < 1297182638 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which lets its resounding wins counteract that to some extent < 1297182711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: what would be nice would be if report.txt didn't just say +/-/0, but gave an indication of the extent of the win or loss; i.e. a different code for winning on all 42 runs, to winning 40 of them, to winning 22 of them < 1297182723 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how do programs counteract shudders. they make the "two turns in a row" bit quite hard to achieve < 1297182728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the table at the bottom's a little misleading in that respect atm < 1297182739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: oh, you simply - while the enemy's doing + after zeroing it < 1297182752 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :[-] against a typical shuddering program actually wins < 1297182758 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm right. What about something like (-)*10000 then < 1297182767 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that won't do the plus bit < 1297182774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that works better, but gives you no time for logic < 1297182782 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's still counteracted by doing + at the right moment, though < 1297182785 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed. But it does worse than shudder < 1297182786 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1297182789 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it loses against [+] < 1297182795 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297182796 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :true < 1297182814 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :defend10 does (-)*128 for timing purposes, on its own flag < 1297182835 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which doesn't run long enough to lose to anything but a no-op < 1297182841 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and no-ops never trigger the tripwire) < 1297182859 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, err is the starting value 127 or? < 1297182863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's 128 < 1297182864 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I forgot < 1297182866 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297182874 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but if the opponent changes it at all, you don't zero your own flag doing that < 1297182880 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and defend10 tries to make pretty sure the opponent will < 1297182898 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(that can be exploited to defeat defend10, but at the cost of losing to pretty much everything else, so I doubt people will try) < 1297182911 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and there are better ways to counter defence programs) < 1297182921 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, such as? < 1297182956 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mostly doing a lot of random + and - instructions to zero flags < 1297182979 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which fails against attack programs, but you can try to detect defense programs and react accordingly < 1297182988 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1297183006 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :by putting another loop immediately after your zeroing loop, as in [-][+.++.---.-+----] < 1297183028 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297183054 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that is, if the defence program doesn't lock you in the initial [-] < 1297183090 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297183091 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, figured out the defend7 - chainsaw result differences btw? < 1297183106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it's to do with odd/even polarity on the decoy < 1297183115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :vs. odd/even timing differences in the programs they're beating < 1297183121 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297183147 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :locking the flag at always odd numbers means it never hits 0, locking it at always even numbers lets the opponent escape from a lock < 1297183230 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test (>)*9([-][+--.-+]>)*30 < 1297183234 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_test: 14.2 < 1297183237 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Huh. Debian *might* in the future be going back to Firefox. < 1297183255 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust counterdefence (>)*8(>(+)*128)*21 < 1297183258 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_counterdefence: 1.6 < 1297183263 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not surprising < 1297183271 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because several defence programs aren't simplistic enough to fall for it < 1297183288 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Apparently the Firefox copyright policy on the full-and-proper Firefox logo changed, making it so that Debian can reasonably comply with the trademark policy. < 1297183290 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, none of the current ones are :) < 1297183294 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that table in the results. Which way do you read it < 1297183305 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :row is the program that gets +, 0, - < 1297183309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :column is the program it was playing against < 1297183312 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297183332 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So, Debian is currently filing for a trademark license from Mozilla. < 1297183341 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So I'm told. < 1297183367 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I won't want to be running Firefox instead of Iceweasel though :( < 1297183369 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, why < 1297183413 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I figured out yesterday that Fluidsynth reliably puts 120 extra samples at the end of every track (between tracks + at the end) and 64 more extra samples at the end. < 1297183415 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >->+(>)*9([-][+--.-+]>)*30 < 1297183419 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_test: 5.2 < 1297183421 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: The main holdup on them branding the package as Firefox was that the Firefox logo's *copyright* license wasn't DFSG, apparently. < 1297183422 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I had to figure this out to get exactly-perfect seamless looping. < 1297183424 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >->+(>)*7([-][+--.-+]>)*30 < 1297183432 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_test: 7.2 < 1297183438 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test (>)*9([-][+--.-+]>)*30 < 1297183441 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: And you couldn't get a trademark license for the Firefox name without using the Firefox logo. < 1297183449 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_test: 14.2 < 1297183455 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Now, the copyright license is DFSG. < 1297183456 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, heh < 1297183473 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: That was the original reason, then there was this bulge of other reasons, then those sort of mostly went away, but left the original reason. < 1297183482 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Ah, right, yes. < 1297183489 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it seems that if a program sucks in general removing decoys will help < 1297183496 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: It's the *relevant* reason. :) < 1297183499 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :due to all those tripwires < 1297183508 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: heh, yes < 1297183527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, there's only two tripwires on the hill atm (tripstridewire, and shade) < 1297183542 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you should compare good attackers with and without decoys < 1297183575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :two good attackers vs. each other, effective decoys (i.e. decoys that are zeroed in the wrong direction) tend to make or break the game < 1297183596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :tripstridewire vs. mirage is an amazing match to watch in a debugger < 1297183629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for some tape lengths, the opposing flag is less than 10 or so when a program loses < 1297183633 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ACTION imagines BFJoust world cup < 1297183831 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what does mirage do? < 1297183856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's just a slow rush program < 1297183861 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :which means? < 1297183863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :large decoys, a few tweaks against defenders < 1297183869 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297183887 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it attacks, but slowly, trying to spend time to make the opponent spend more, and so reach the flag first < 1297183901 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust bad (+>->)*40(>[+])*1000 < 1297183903 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_bad: 0.0 < 1297183907 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :O_o < 1297183919 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust bad (+>->)*10(>[+])*1000 < 1297183922 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :coppro, it goes off the end of the tape yah < 1297183923 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yeah* < 1297183924 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_bad: 0.0 < 1297183945 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :try *5 < 1297183953 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust bad (+>->)*5(>[+])*1000 < 1297183960 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_bad: 10.4 < 1297183964 0 :elliott!~elliott@unaffiliated/elliott JOIN :#esoteric < 1297183973 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust silly ([[]+])*100 < 1297183987 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_silly: 8.2 < 1297184000 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :coppro, try 10000 or such < 1297184003 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1297184006 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust silly ([[]+])*1000000 < 1297184008 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, hello < 1297184020 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: happy? < 1297184021 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_silly: 8.2 < 1297184025 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :^ < 1297184030 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :made no difference, as expected < 1297184034 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :coppro, indeed < 1297184041 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :thought it would < 1297184042 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1297184044 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I figured out how to do fingerprints nicely < 1297184049 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, mhm < 1297184051 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust silly ([[]------>+<])*100 < 1297184054 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, tell < 1297184064 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't, by the time it's passed the first ] it's generally already lost < 1297184066 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_silly: 8.2 < 1297184071 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :huh, interesting < 1297184081 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: http://hpaste.org/43784/fingerprints_4 < 1297184084 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :anyway, time to clean up < 1297184093 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523 may also be interested, just for insane Haskell existential typing < 1297184102 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and type families < 1297184109 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the example FPsare lower down < 1297184111 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*FPs are < 1297184142 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, a lot of fingerprints have per-thread state instead < 1297184171 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: that's what FPIPState is for < 1297184179 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :this is a proof of concept so it's commented out < 1297184198 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, do MODU too, so you can test the multiple-fingerprint stuff < 1297184210 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: this doesn't actually work in shiro yet, it's just how to do it from the haskell-side < 1297184239 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: is "io" in Shiro a function that makes an IO action into a Shiro action? < 1297184240 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and it only requires five type-system extensions! < 1297184255 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: er, yes; been reading the interpreter code I pasted? < 1297184258 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It's just an alias for liftIO < 1297184267 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, I have < 1297184269 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric ::t liftIO < 1297184270 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Ambiguous occurrence `liftIO' < 1297184270 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : It could refer to either `Control.Monad.Error.liftIO', imported from Control.Monad.Error < 1297184270 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : or `Control.Monad.Logic.liftIO', imported from Control.Monad.Logic < 1297184279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric ::t Control.Monad.Logic.liftIO < 1297184280 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: liftIO basically amounts to lift . lift . lift for some number of .s < 1297184280 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a (m :: * -> *). (Control.Monad.Logic.MonadIO m) => IO a -> m a < 1297184285 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it's for easy access to the IO monad way under you < 1297184291 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :except in Shiro it's right under you, but whatever < 1297184309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and what happens if there isn't one? runtime error? < 1297184316 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: err, then there's no MonadIO instance < 1297184321 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so it wouldn't type < 1297184323 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297184350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :MonadIO is any monad that has IO or involved somewhere? (I take it there isn't an IOT?) < 1297184352 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, do you do mycouser btw? < 1297184354 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric ::t IOT < 1297184355 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, for input < 1297184355 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: data constructor `IOT' < 1297184358 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297184362 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: (1) :t on types doesn't work < 1297184364 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :try :k < 1297184368 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, remember that EOF on stdin is defined to reflect < 1297184369 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric ::k IOT < 1297184370 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: type constructor or class `IOT' < 1297184370 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not to exit < 1297184373 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: (2) indeed there isn't, IOT would allow for TwoDucks < 1297184379 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: indeed, I pass mycouser < 1297184390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I forgot that types didn't necessarily have the same name as their constructors < 1297184394 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, even for non-trivial cases such as invalid integer input? < 1297184396 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :doIns i = < 1297184396 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (doCharIns . chr . fromIntegral $ i) < 1297184396 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : `catchShiro` \(e::IOException) -> do io $ hPutStrLn stderr ("Note: Reflecting on IO exception " ++ show e) -- TODO: remove this < 1297184396 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : reflect < 1297184399 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so I do handle IO errors < 1297184400 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, like foo instead of an integer? < 1297184400 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: yep < 1297184401 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I reflect < 1297184410 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, and for ctrl-d too? Good < 1297184420 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: there's one maybe-bug: if you read a character, and you input newline, you have to press newline again to get it accepted < 1297184421 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :not sure why < 1297184424 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :not the highest-priority bug ever < 1297184432 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yeah it's a bug < 1297184444 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, what do you do on overflow? < 1297184446 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :& does read a whole line, right? < 1297184451 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: erm, good question < 1297184454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> show (2^64) < 1297184454 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "18446744073709551616" < 1297184457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought it was just one char < 1297184458 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it does if 1y says it is line buffered! < 1297184462 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll try that < 1297184465 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it reads a number, so no < 1297184473 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: no, but I mean < 1297184473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, muddled number and char input < 1297184475 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :if you type < 1297184477 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :234abc\n < 1297184480 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it chops out the abc\n < 1297184481 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1297184488 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pretty sure it does < 1297184488 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it leaves abc\n in the buffer yes < 1297184489 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :otherwise < 1297184491 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: erm < 1297184492 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :no < 1297184495 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mine just discards it < 1297184495 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yes it does < 1297184499 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: no, because otherwise, < 1297184499 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, then it is wrong < 1297184503 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the \n at the end of your line < 1297184509 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :would be given to mycouser's character read < 1297184511 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, \n after integer is special < 1297184515 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297184518 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :says who < 1297184518 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ask Deewiant < 1297184520 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I did < 1297184522 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: does the spec say that? < 1297184524 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :He said my behaviour was probably fine < 1297184525 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no < 1297184537 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well if you check what he implements himself < 1297184540 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I pass all of Mycology including =, i, and o apart from one thing < 1297184544 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: http://iki.fi/deewiant/befunge/mycology-output/input/expected.txt < 1297184545 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no it doesn't < 1297184546 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Specifically o can't do text output yet < 1297184564 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Ah, okay. < 1297184580 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, "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. " < 1297184586 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, please read that carefully < 1297184588 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, plans for today: Clean up the code a bit, get Concurrent Funge working, add text output to o. < 1297184593 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Maybe start integrating the fingerprint system. < 1297184595 0 :iamcal!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1297184596 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it describes that it *should* leave data. And also how it handles overflow < 1297184601 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: So the \n doesn't get handled specially. < 1297184609 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, so \n should be left I guess yeah < 1297184620 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So if you enter 17 into mycouser, you never get asked for a character. < 1297184623 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Discuss. < 1297184627 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Correct. < 1297184633 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And since terminals are line-buffered usually, there is no real way to do mycouser as a user. < 1297184637 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Discuss: irony. < 1297184651 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1297184654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : Do you have to struggle to resist the urge to plug in more than one vacuum from the same outlet? I'm trying to picture the situation where I'd be tempted to do that, and all I can come up with is defense against a horde of oncoming zombie cats. < 1297184654 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You could type 123x. < 1297184669 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm. but there is nothing in the specs that forbids eating \n in that specific case. I'm pretty sure ccbi (used to?) do it < 1297184669 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: control-D not at the start of a line flushes the buffer < 1297184676 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it used to < 1297184685 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Nothing in the spec forbids you from shaking the terminal window every 5 seconds. < 1297184695 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or, when the user enters "x", giving "y". < 1297184697 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, indeed. DO IT! < 1297184699 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But it's obviously not compliant behaviour. < 1297184704 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, besides not doing it breaks a lot of programs. < 1297184709 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: True :P < 1297184710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, t obviously isn't a forkbomb < 1297184718 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Breaks a lot of broken programs. < 1297184726 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, like every program then < 1297184732 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's no such thing as "a lot of programs" when speaking of Befunge-98 < 1297184756 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Incidentally, Shiro: < 1297184758 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Please input a character: æ < 1297184758 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: got 195 'Ã' which is hopefully correct. < 1297184759 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297184760 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :UNICODE READY < 1297184771 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(All input and output is treated as Latin-1.) < 1297184780 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(That's what Haskell calls "binary mode" because you can input and output anything like that.) < 1297184798 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :efunge does proper unicode. It expects UTF-8 iirc and converts it to unicode code point internally. < 1297184800 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What happens on "o" with a cell in the area greater than 255? < 1297184841 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Should match how you do I/O in general < 1297184848 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :IMO, just %256 it < 1297184871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :use an encoding that lets you output it as-is < 1297184875 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bignum UTF-8 or whatever < 1297184890 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm. what if there is no "I/O in general". As in you do byte IO for files and utf-8<->unicode conversion for stdio? :D < 1297184908 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :IMO, don't do that :-P < 1297184922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: 99fff**p009900"oof"o < 1297184928 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well I'm not sure the latter is valid for the initial program loading < 1297184929 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Anything wrong with that test program? < 1297184932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what if you take a bitfield on the command line that specifies what to use Unicode for? < 1297184943 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Just compare to ccbi :-P < 1297184947 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it does that? < 1297184961 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: can do, there's an option that does that < 1297184961 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think ais523 is insufficiently amazed at my fingerprints stuff, maybe because he has no soul. Or just can't understand how much I'm abusing the type system. < 1297184964 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I need a test program to do that. < 1297184969 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: or didn't read it < 1297184970 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm not so good at Befunge. Is that program any good? < 1297184980 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I ruled out that option because it's LAME < 1297185011 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Like said, just run it through ccbi and see if it does something you want it to do < 1297185050 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway you should update mycouser to show the prompts so that the element of irony is no longer there < 1297185059 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Seems to create an empty file :-P < 1297185064 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, does anyone here know how to write Firefox extensions? < 1297185089 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yay, I have a file "foo??" I can't remove. < 1297185098 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :rm foo* < 1297185125 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: You probably wanted fff**99p? < 1297185136 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Seems to output the invalid character as a space. < 1297185141 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh. < 1297185142 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And you don't have a flags cell < 1297185145 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :thx :P < 1297185146 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I do now. < 1297185157 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fff**88p990000"oof"o@ < 1297185171 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Outputs as /, so I guess it's mod 256 for CCBI and I'll test it with shiro. < 1297185211 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Sweet, Shiro does the same :P < 1297185215 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, do you do input truncation correctly for overflow < 1297185216 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Probably because of Word8 overflow. < 1297185222 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Uh. What? < 1297185251 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, for &: "[...] 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." < 1297185260 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I must say, it's genuinely impressive how freaking quickly you got a Befunge-98 interpreter running. < 1297185265 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Just, dang. < 1297185279 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, saturation or wrapping are not valid thus. < 1297185287 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: It was mostly me implementing the insane, insane things Deewiant told me. < 1297185294 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Heheheh. < 1297185297 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, so, do you do that correctly? < 1297185302 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: No. No I don't. < 1297185307 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :TODO: Fix. < 1297185307 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, bug! :P < 1297185310 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297185319 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Does _anyone_ actually use &? < 1297185323 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And yes, I know Mycology doesn't test that. < 1297185325 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, does ccbi do it correctly? iirc you don't test it in your mycology rankings < 1297185331 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does if you give it enough digits. < 1297185344 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Uh, yes he does? < 1297185349 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but my rankings should probably test it < 1297185351 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, not this behaviour of & < 1297185373 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, in the rankings if that is what you meant < 1297185376 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I thought you meant CCBI. < 1297185378 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t unGetChar < 1297185379 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: `unGetChar' < 1297185380 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Please exist. < 1297185382 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Fuck. < 1297185383 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle ungetc < 1297185384 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Concurrent.Chan unGetChan :: Chan a -> a -> IO () < 1297185387 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle getc < 1297185388 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Network.CGI.Protocol getCGIVars :: MonadIO m => m [(String, String)] < 1297185388 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Concurrent.Chan getChanContents :: Chan a -> IO [a] < 1297185388 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude getChar :: IO Char < 1297185420 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: CCBI implements unget manually too, FWIW < 1297185422 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I solve it by keeping a line buffer in the program anyway. Even though C has ungetc < 1297185434 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why don't you use ungetc? < 1297185435 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :since it is more practical for various fingerprints < 1297185436 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I really don't want to keep track of even more state :P < 1297185440 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But I might. < 1297185447 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It'll be nicer once I have the accessors going nicely. < 1297185451 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Probably going to use data-accessors. < 1297185484 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Main> testShow < 1297185484 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it is more practical for stuff like STRN's I. And it means my algorithm can just work on an array of chars rather than having to getc in various places. So less confusing code my way too. < 1297185484 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NULL -- () < 1297185484 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ROMA -- () < 1297185484 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SLLY -- True < 1297185490 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I love how I can print all the fingerprints' state out dynamically. < 1297185495 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's going in the debugger. :p < 1297185496 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Fair enough < 1297185576 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I should pirate Mathematica sometime, W|A is really irritating. < 1297185591 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I thought you done that in the past? < 1297185596 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Yeah, and Maxima is not the easiest thing to use. < 1297185599 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but not on here. < 1297185640 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wait a second. That wrapping loops seems hideously inefficient. I'm sure you could make it O(1) by ... oh, that's probably what CCBI does. Deewiant? :P < 1297185644 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, it is not that much harder given that wxwidgets frontend < 1297185668 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, get everything working first. Then worry about efficiency. < 1297185678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: It's not O(1) in CCBI. < 1297185681 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, premature optimisation and so on < 1297185690 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It just irks me to have a loop for something that I'm pretty sure doesn't need to loop. < 1297185705 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember what it is but there's a pathological case where the delta is 2^cellsize - 1, or something. < 1297185718 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But, uh, I plan to do that population count thing sometime soon. < 1297185742 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Hell, my interpreter will crash and burn if your Haskell's Ints are less than 32 bit (they only have to store up to 2^29 inclusive). < 1297185745 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> maxBound :: Int < 1297185746 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 9223372036854775807 < 1297185747 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> maxBound :: Int64 < 1297185748 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 9223372036854775807 < 1297185751 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, shouldn't you be able to solve it as a linear equation system hm. Wait two different ones. Depending on which edge it might hit < 1297185765 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and hm you need to follow the line backwards to detect ... right < 1297185768 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My situation is more complicated than just moving into one bounding box :-P < 1297185781 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I need to find the first of N bounding boxes that gets hit < 1297185789 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you still need to get integer coords on that line after solving the equation system < 1297185802 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :which does complicate stuff < 1297185823 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle unget < 1297185823 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Concurrent.Chan unGetChan :: Chan a -> a -> IO () < 1297185824 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Concurrent.STM.TChan unGetTChan :: TChan a -> a -> STM () < 1297185835 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle unget :: Handle -> IO () < 1297185836 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Concurrent.Chan unGetChan :: Chan a -> a -> IO () < 1297185854 0 :Zuu!unknown@unknown.invalid PRIVMSG #esoteric :i smell haskell < 1297185856 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm pretty sure it _does_ exist < 1297185881 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you could easily implement it in terms of IOT right? :P < 1297185881 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure it doesn't < 1297185890 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :MAYBE < 1297185914 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: YOU haven't even gawped over my abuse of the type system < 1297185914 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1297185915 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan < 1297185916 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :the perfect prey < 1297185941 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: http://hpaste.org/43785/fingerprints_5 < 1297185946 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: {-# LANGUAGE TypeFamilies, ExistentialQuantification, FlexibleContexts, DeriveDataTypeable, StandaloneDeriving #-} < 1297185968 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, the easy way to do it is like an ordered set of stacks of lambdas < 1297185983 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes, that's still how it'll work in my system. < 1297185991 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i looked at your existentialism previously, pretty neat < 1297185993 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Wait, ordered set of stacks? Not just a stack? < 1297185994 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, so why do you need all that abuse < 1297186001 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: More like pretty horrifying. < 1297186003 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: One stack per instruction < 1297186003 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you need a stack per instruction < 1297186006 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Right. < 1297186009 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: This is just how it works from the Haskell end. < 1297186018 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It allows me to define new fingerprints with minimal fuss. < 1297186022 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Very minimal fuss. < 1297186037 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, couldn't you just do what I said from the haskell side easily? < 1297186039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: And it allows any random person to add a fingerprint with its own per-IP and global state without having to change the Shiro internal state record. < 1297186048 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes, if I was willing to hardcore every fingerprint into the core. < 1297186055 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Which I'm not, that's just retarded. < 1297186058 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, uh why would you need that :P < 1297186064 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Or if I was willing to completely sacrifice any sort of safety, I guess. < 1297186072 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But this is by far the nicest way. < 1297186111 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, how so? wouldn't the type of the *lambda* be: f ip -> stack -> (ip, stack) or such? < 1297186116 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*sigh* < 1297186120 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :unless your stack is in your ip < 1297186129 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :in which case it is trivial < 1297186130 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle hunget < 1297186130 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :No results found < 1297186133 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Firstly, I have a monad. < 1297186138 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Secondly, just no. < 1297186140 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, oh right < 1297186169 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well okay, my solution is 1) pure 2) only allows a handful of feral fingerprints < 1297186178 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :actually I forgot fungespace there < 1297186192 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :f ip -> fungespace -> (ip,fungespace) would be better < 1297186202 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: IMPLEMENTING A FINGERPRINT WITHOUT THIS SYSTEM: Edit the state definition, manually add in your new piece of state. Edit the IP record, manually add in your own piece of state. Write a bunch of implementations using and modifying that state directly (semi-awkward). Manually edit the place where fingerprints are looked up. Blah blah blah. < 1297186210 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :IMPLEMENTING A FINGERPRINT WITH MY SYSTEM: < 1297186219 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"We start with specially-selected farm-grown potatoes" Is the definition of "farm" so restrictive that this gains anything by adding it? I mean, huge corporate metafarms are still farms... < 1297186225 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Create a module. Add an identifier type. Write a Fingerprint instance. < 1297186232 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Edit Fingerprints.hs, add yours to the list of available fingerprints. < 1297186234 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Recompile. < 1297186249 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Also, monads are just as pure as that, you dolt. < 1297186254 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What do you think the State monad is? < 1297186261 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I'm pretty sure that anywhere that produce is intentionally grown for consumption can count as a "farm". < 1297186264 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's exactly "state -> (result, state)". < 1297186269 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :The reason we use the state monad is that using that is a bitch. < 1297186275 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But that's exactly how it's implemented. < 1297186279 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Right, hence why "farm-grown" is totally meaningless here. < 1297186284 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, actually this can be trivially solved if the ip has some fingerintdata member that implements a key,value storage. Anyway who would need to store more than a single type! ;P < 1297186293 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I guess "grown" isn't meaningless, it means they didn't replicate the potatoes :P < 1297186297 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes, but then the state would not be type-safe. < 1297186299 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or typed at all. < 1297186304 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, true :P < 1297186307 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Wrong. < 1297186307 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Which is "retarded", technical term. < 1297186314 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: You generally clone potatoes. < 1297186336 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :*brain axplote* < 1297186338 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(cut the eyes from a potato and plant it? Congrats, you're CLONING!) < 1297186340 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: http://www.haskell.org/ghc/docs/latest/html/libraries/base/System-IO.html I don't see any ungetc. < 1297186350 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's really fucking easy to clone plants. :) < 1297186358 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, indeed. Unless you made that type auto generated from a handful of fingerprint definition files so it ends up as a list of "tagged types" in effect. Though that would be ugly. < 1297186372 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: That would be what I do now, except requiring a preprocessor and being hideous. < 1297186376 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i couldn't find it either < 1297186377 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well, "do now" = in that proof of concept. < 1297186396 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wth do i feel i _have_ seen such a thing < 1297186402 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Hugs-specific maybe? < 1297186415 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, anyway you still need to tell ( and ) about the list of possible fingerprints somewhere. Unless you do some sort of crazy reflection or similar. < 1297186424 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :(can haskell even do that?) < 1297186429 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes, yes it can, and that's what I'm doing. < 1297186430 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Well. < 1297186435 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, haha XD < 1297186437 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: There is exactly one list of available fingerprints. < 1297186447 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I *could* use Template Haskell to generate it from the list of files in Shiro/Fingerprints/ at compile time. < 1297186449 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yep. < 1297186450 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But that sounds Super Ugly. < 1297186455 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'd prefer to maintain a manual list. < 1297186457 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :More robust. < 1297186462 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, for C it is the best solution (auto generating the list) < 1297186469 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :which is why cfunge has a shell script to do that < 1297186472 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, because in C it'd be complicated :P < 1297186478 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :With this, it's basically... < 1297186481 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : < 1297186484 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :, FP MKRY < 1297186489 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : < 1297186498 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I forgot; at the top of the file: < 1297186499 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yeah reflection in C is... likely impossible unless you use -g and basically implement 1/3rd of a debugger < 1297186504 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :import Shiro.Fingerprints.MKRY (MKRY) < 1297186529 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, wait you still need to edit some list file? < 1297186536 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes. As I said, < 1297186542 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Vorpal: I *could* use Template Haskell to generate it from the list of files in Shiro/Fingerprints/ at compile time. Vorpal: But that sounds Super Ugly. < 1297186543 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : I'd prefer to maintain a manual list. < 1297186549 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'd *prefer* to; I don't *have* to. < 1297186565 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, for cfunge it is completely automagic. Run a shell script. Force Makefile to be re-generated. Build. Run. < 1297186570 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: For instance, if I make a module called Shiro.Fingerprints.Helpers, like helper functions for fingerprints or something, having that be treat as a fingerprint automatically would be irritating. < 1297186580 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Also, I don't really care. It's manual because I want it to be. < 1297186583 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yeah true < 1297186600 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :If Haskell had better dynamic loading capabilities, I'd let you load a fingerprint from an .so :P < 1297186603 0 :cal153!~cal@70.36.237.178 JOIN :#esoteric < 1297186608 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But I don't think you can make that work with types and the like. < 1297186617 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I think ccbi does some crazy completely runtime thingy for it < 1297186624 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I forgot what it did < 1297186625 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It would basically be like using a C FFI, I think. < 1297186630 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, some D-magic iirc < 1297186630 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Except calling Haskell functions. With C types. < 1297186636 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: hm, there _is_ hLookAhead though < 1297186641 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: aha < 1297186643 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t hLookAhead < 1297186644 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: `hLookAhead' < 1297186657 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t System.IO.hLookAhead < 1297186658 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :GHC.IO.Handle.Types.Handle -> IO Char < 1297186662 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Except calling Haskell functions. With C types. <-- DO IT! < 1297186663 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :excellent < 1297186666 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297186680 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, also: I'm sure someone written some sort of plugin system for haskell by now < 1297186685 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :checked hackage? < 1297186694 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*** Exception: : hLookAhead: illegal operation (handle is not open for reading) < 1297186695 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mrf < 1297186702 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: well probably, it's just that I couldn't do it the way I want. < 1297186704 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :which is important :) < 1297186714 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, right < 1297186732 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OK, first thing's first: I'm going to implement Num Vector. < 1297186736 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Calling Haskell functions with C types is entirely possible. :P < 1297186742 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Because I've had enough of pattern-matching two tuples and adding their components manually. < 1297186743 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, Num Vector? < 1297186746 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297186749 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: So I can do vector + vector and the like. < 1297186788 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, most of the time you only need to add two specific vectors I find: storage offset and whatever it is that you need to be relative it < 1297186805 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gah... Screw Num so much. < 1297186807 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hmm... < 1297186812 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What's fromInteger :: Integer -> (Value,Value) < 1297186813 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1297186822 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, a type? < 1297186825 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :join (,) < 1297186829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I mean, how can I implement that sanely. < 1297186831 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yeah, probably. < 1297186832 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297186832 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ugly, but whatever. < 1297186847 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Also, you forgot fromInteger on the elements. < 1297186847 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric ::t join < 1297186847 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :error "wtf" < 1297186848 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall (m :: * -> *) a. (Monad m) => m (m a) -> m a < 1297186850 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : fromInteger a = (fromInteger a, fromInteger a) < 1297186856 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: No, you forgot to make Value an Integer < 1297186862 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Does |(x,y)| even make sense. < 1297186863 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Hur hur < 1297186880 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Shiro/Value.hs:8:9: < 1297186880 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Warning: No explicit method nor default method for `signum' < 1297186883 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :HOW AM I MEANT TO IMPLEMENT THAT < 1297186885 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :YOU'RE STUPID < 1297186895 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric ::t signum < 1297186896 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a. (Num a) => a -> a < 1297186898 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait. < 1297186901 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Just do signum on each component X-P < 1297186910 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, and if they differ? < 1297186911 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Then it also becomes a make-flying-into-cardinal function. < 1297186919 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It's Vector -> Vector. < 1297186929 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, why does it need signum though? < 1297186940 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, oh because of Num? < 1297186945 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(1,1) ain't cardinal < 1297186947 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Because when the designers of Haskell decided to make the numeric typeclass, they decided to be really stupid about us. < 1297186951 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Because they hate us. < 1297186955 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and yeah what Deewiant said < 1297186955 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Err, right. It's a "slow down" function then. :p < 1297186978 0 :asiekierka!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1297186991 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, "slow down and align to cardinal or straight diagonals" even < 1297187041 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, signum seems sensible to have for Num < 1297187051 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but Num Vector doesn't seem as sensible to me < 1297187076 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: (a,b) + (c,d) is perfectly well-defined. < 1297187083 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yes indeed < 1297187091 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Num is just stupid :P < 1297187101 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, but abs Vector -> Vector is nonsense < 1297187108 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : abs (a,b) = (abs a, abs b) < 1297187114 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, abs Vector -> Cardinal is a lot more sensible < 1297187114 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Close enough. < 1297187124 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :What's wrong with Num? < 1297187128 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric ::i Num < 1297187130 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :err Saclar < 1297187133 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Scalar* < 1297187138 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :how did I typo that as Cardinal XD < 1297187154 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, abs on a vector is mathematically a scalar unless I completely misremember stuff < 1297187202 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I DEMAND YOU TELL ME WHAT IS WRONG WITH Num < 1297187245 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, also what the heck do you define Vector * Vector as. Cross product makes no sense in two dimensions < 1297187247 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :CCBI's fingerprint system is all compile time except for the way you can freely enable and disable them at runtime < 1297187257 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: (a,b) * (c,d) = (a*c, b*d). Problem? :trollface: < 1297187266 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, YES! < 1297187276 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, this is mathematical nosense! < 1297187303 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Patches welcome. < 1297187304 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, and while that may be okay in C it feels so out of place in haskell < 1297187317 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :elliott, presumably (a,b)+(c,d) = (bd(a+c),bd). < 1297187321 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :((a,b,1) * (c,d,1))[0,1] = (b-d, c-a) < 1297187324 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: No, (a+c,b+d). < 1297187330 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1297187331 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, why do you need Num. Can't you just do the operators anyway. Or make your own saner typeclass? < 1297187342 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I wouldn't be able to call it (+) then. < 1297187351 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(+) is defined over Num: < 1297187353 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t (+) < 1297187354 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a. (Num a) => a -> a -> a < 1297187363 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : elliott, presumably (a,b)+(c,d) = (bd(a+c),bd). <-- what... < 1297187370 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And of course there are no other operator characters available < 1297187374 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that isn't how you do vector addition < 1297187378 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, none as pretty as +. < 1297187380 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :instance (Num a, Num b) => Num (a,b) where < 1297187380 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal, by analogy. < 1297187380 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (a,b) + (c,d) = (a+c, b+d) < 1297187380 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (a,b) - (c,d) = (a-c, b-d) < 1297187382 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ah < 1297187382 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : -- These don't really make any sense < 1297187384 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (a,b) * (c,d) = (a*c, b*d) < 1297187386 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : abs (a,b) = (abs a, abs b) < 1297187388 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : signum (a,b) = (signum a, signum b) < 1297187390 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : fromInteger a = (fromInteger a, fromInteger a) < 1297187391 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :With fractions. < 1297187393 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I could define ^+^ or whatever, but ew. < 1297187395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t (^+^) < 1297187396 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Gah, use combinators < 1297187396 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall v. (AdditiveGroup v) => v -> v -> v < 1297187399 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, hah < 1297187401 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :abs = both abs < 1297187403 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :signum = both signum < 1297187408 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fromInteger = join (,) . fromInteger < 1297187409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Haha, I feel how it hurts you. < 1297187424 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I don't really want to pull in Data.Arrow for the "satisfy the compiler" functions, dude. < 1297187434 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Control.Arrow < 1297187436 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Control.Arrow is in base. < 1297187444 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And? < 1297187446 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's not much of a dependency :-P < 1297187453 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I didn't say that < 1297187461 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's nothing you're "pulling in" as such < 1297187471 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm pulling in the Arrow typeclass < 1297187479 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :... ohnoes? < 1297187521 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ohnoes. < 1297187532 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Also those definitions aren't lazy enough < 1297187535 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :haskell (or at least ghc) really does tuples quite messily < 1297187540 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :abs ~(a,b) = (abs a, abs b) < 1297187541 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :just check :i Ord < 1297187566 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, uh what? < 1297187578 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What what < 1297187584 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::t both < 1297187585 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: `both' < 1297187591 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :both = join (***) < 1297187605 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Not available anywhere AFAIK but I almost always end up defining it in my code) < 1297187608 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what does that ~ do now again < 1297187618 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: i just wondered if they'd added it or something < 1297187629 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The ~ makes the pattern lazy < 1297187688 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: the basic thing wrong with Num is that hit cobbles together many functions that it sometimes makes mathematical sense to define only _some_ of for a type. + for vectors being an obvious example. < 1297187693 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*it < 1297187715 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm how does it do that < 1297187731 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lazily < 1297187741 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :abs and signum being others that frequently aren't needed < 1297187742 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The pattern always matches and it's a runtime error if it doesn't actually match when the value is actually used < 1297187743 0 :asiekierka!~asiekierk@178235033089.elblag.vectranet.pl JOIN :#esoteric < 1297187753 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, aha < 1297187777 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: also it forbids the naturals... < 1297187796 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and abs should be defined in the type family sense too, because often you want the absolute value to belong to a different type < 1297187834 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*associate type sense < 1297187837 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*d < 1297187865 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: yeah that too... < 1297187905 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, how so? abs is identity for naturals. signum has a co-domain {0,1} for them. < 1297187909 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh wait, it has negate < 1297187910 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297187917 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: indeed. < 1297187932 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well like 5-9 is _|_ in the Naturals, wouldn't negate also just be _|_ ? < 1297187951 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but that's fugly. < 1297187957 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well yeah < 1297187975 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, anyway what is fromIneger :: Integer -> Vector for you? < 1297187982 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fromInteger a = (fromInteger a, fromInteger a) < 1297187993 0 :sixdej|sleep!~sixdej@cpe-67-250-52-223.nyc.res.rr.com JOIN :#esoteric < 1297187996 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it should be the reverse of the INTERCAL mingle operator < 1297188001 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It makes 0 into origin, so that's good enough for me < 1297188011 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :which still works for 0 < 1297188073 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does anyone here know how to view dotfiles on Windows 7? < 1297188081 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, my Linux and Windows homedir are mapped into the same directory < 1297188090 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I want to look at a dotfile crated on the Linux system from windows < 1297188103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: just open it < 1297188105 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I assume they map to Windows hidden files, somehow; but am not sure how to turn display of hidden files on < 1297188108 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: it's not visible < 1297188110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nope, it doesn't afaik < 1297188117 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: folder options? < 1297188117 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: open it in notepad, or go into folder settings of some kind < 1297188118 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is this some network thingy? < 1297188121 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i.e. C:\foo\.blah in notepad < 1297188128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: yes < 1297188138 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, could do some crazy magic of it's own then < 1297188141 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: that's what I'd normally do, but I can't find the menu option, or indeed the menu < 1297188146 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, hm you can't even make vector multiplication do scalar product :( < 1297188146 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1297188148 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aha, pressing F10 worked < 1297188152 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the menu was there, just hiding < 1297188170 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it self-applied < 1297188172 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and there are the dotfiles < 1297188182 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads http://hackage.haskell.org/packages/archive/data-accessor/0.2.1.5/doc/html/Data-Accessor.html < 1297188203 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :meh, not a fan < 1297188213 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: Better than what I have now. < 1297188218 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :I prefer fclabels < 1297188218 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Haskell's record system is fucking terrible. < 1297188219 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin, indeed you are not a fan. You are a copumpkin! < 1297188221 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't know how anyone's meant to know that without having memorised it from a previous version of Windows < 1297188222 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :less henning'd < 1297188234 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"Henning'd". < 1297188235 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What :-P < 1297188242 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :herring* < 1297188259 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :C a b => T a -> T b -> T a b -> T (a, b) < 1297188261 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :that's henning'd < 1297188275 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: That's nice. < 1297188276 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Everything is called C and T < 1297188277 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :(note that the Ts are different) < 1297188279 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :who is henning < 1297188279 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I like genericity :P < 1297188289 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Henning is the guy who calls everything C and T < 1297188290 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: thielieileieeman < 1297188293 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: the source of that wonderful convention < 1297188296 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :and the only adopter of it < 1297188297 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(it's a norwegian name) < 1297188302 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, presumably you could try right clicking toolbars and have some option for it? Or just locate the folder options from the control panel < 1297188313 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Thielemann < 1297188321 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: Yeah well, fclabels is... less... Luke Palmer! < 1297188325 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297188327 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm i guess it's also german < 1297188327 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Also edwardk likes data-accessors. < 1297188330 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :fclabels is fairly nice < 1297188331 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :WHAT NOW < 1297188334 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :no he doesn't < 1297188337 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1297188340 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :He said he did yesterday. < 1297188344 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :he hates henning's naming < 1297188344 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Because it doesn't pull in mtl :-P < 1297188349 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Because it doesn't pull in mtl :-P < 1297188353 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :yeah, whatever < 1297188367 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I prefer data-accessors' syntax *shrug* < 1297188391 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: I was going to just write my own. < 1297188395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But that seems silly. < 1297188407 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :neither data-accessor nor fclabels support one thing I want < 1297188411 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :which is < 1297188418 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :a native "modify" method < 1297188421 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :that doesn't involve setting and getting < 1297188436 0 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1297188438 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :I don't care about it being atomic, but I want it < 1297188442 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: The way I was doing mine, it was just get and modify. But why do you want it? < 1297188451 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Surely GHC can optimise that out. :p < 1297188453 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :no < 1297188459 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :because you can easily make any Map-like thing into a lens < 1297188469 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :and it's silly to traverse the whole map twice < 1297188475 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :once to find, the other to update it < 1297188481 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin, lens in what sense? < 1297188482 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :that's why maps have specialized update methods < 1297188489 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :lens in the data-accessor/fclabel sense :P < 1297188499 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :eh *goes to look* < 1297188509 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :basically a boxed-up getter/setter < 1297188537 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :it's somewhat equivalent to (a -> b -> b, b -> a) < 1297188541 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297188547 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :or b -> (a -> b, a) < 1297188548 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: type Accessor a t = (a -> t, (a -> a) -> t -> t) < 1297188557 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297188560 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :that's nice then < 1297188565 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: that's what i would do, I mean < 1297188566 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: PERFECTED: type Accessor a t = (a -> a) -> t -> (a, t) < 1297188587 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :get a = fst . a id < 1297188600 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :put a x = snd . a (const x) < 1297188607 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :modify a f = snd . a f < 1297188609 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: PERFECTED < 1297188615 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: lol, convince me not to implement this < 1297188623 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :put another package up on hackage that does that < 1297188625 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :I'd use it < 1297188629 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :if it isn't dumb < 1297188640 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :first = \f (a,b) -> (a, (f a, b)) < 1297188648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :second = \f (a,b) -> (b, (a, f b)) < 1297188691 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mapElem k = \f m -> (m Map.! k, Map.adjust f k m) < 1297188697 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: haha this is actually a really good idea < 1297188708 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :do it < 1297188718 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: I'm not going to do it in a separate package first, it'll just be Shiro.Accessor < 1297188721 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :talk to roconnor and edwardk about it < 1297188723 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I _don't_ want to lose track of this project < 1297188735 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll get it implemented into the Shiro codebase first, and copy it out later :P < 1297188768 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :fair enough :) < 1297188769 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: hm should it be < 1297188773 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(a -> a) -> t -> (a, t) < 1297188773 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or < 1297188773 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :I don't need it too urgently < 1297188775 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(a -> a) -> t -> (t, a) < 1297188775 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :@hackage lenses < 1297188776 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :http://hackage.haskell.org/package/lenses < 1297188777 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think the former < 1297188793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, you remember how a while ago, I emailed a bunch of people via using evolution over ssh -X? < 1297188797 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: haha < 1297188806 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I dunno, which do you typically want to fmap? < 1297188811 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I just did it again, because I forgot to email myself, and that version of the program had the "sent" folder containing the email < 1297188817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: I dunno; a is the structure, t is the element < 1297188819 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I couldn't figure out how it was stored any other way < 1297188833 0 :zzo38!unknown@unknown.invalid QUIT :Quit: . < 1297188845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's because I wanted to attach a file to the email I didn't have locally < 1297188852 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hackage fnordly < 1297188852 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :http://hackage.haskell.org/package/fnordly < 1297188854 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :tos f (x:xs) = (x, f x : xs) < 1297188854 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :tos f [] = (0, [f 0]) < 1297188858 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :this is nice < 1297188950 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1297188951 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :t is the type < 1297188954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :a is the accessed field < 1297188962 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: < 1297188963 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :type Accessor t a = (a -> a) -> t -> (a, t) < 1297188965 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :type Accessor t a = (a -> a) -> t -> (t, a) < 1297188967 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297188977 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :paint the shed whatever color you want it < 1297188977 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :latter has a nice symmetry with the ordering of the arguments but i dunno < 1297188978 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1297188991 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: WHIIIIICH < 1297189035 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :@dice 1d2 < 1297189035 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :1d2 => 2 < 1297189038 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :the second one < 1297189060 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::t State < 1297189061 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: data constructor `State' < 1297189064 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1297189074 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::t M.State < 1297189075 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Couldn't find qualified module. < 1297189077 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :ACTION comforts oerjan  < 1297189079 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, incidentally, the Wonders of the World need updated for 1.2. < 1297189083 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*needs < 1297189087 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*updating < 1297189101 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: he's having a rather traumatic time < 1297189103 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: i have this feeling they've removed a number of imports from lambdabot < 1297189107 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I WILL PLURALISE WHAT I DAMN WELL PLEASE < 1297189108 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: just switched from the warm, comforting, old arms of Hugs < 1297189119 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :plunged into the deep, practical, noisy world of GHC and the Haskell Platform < 1297189119 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric ::t Control.Monad.State.State < 1297189120 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Not in scope: data constructor `Control.Monad.State.State' < 1297189125 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and I think it's taken its toll on his poor, fragile, old soul < 1297189134 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :now _that_ is just awful < 1297189151 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> State < 1297189152 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Not in scope: data constructor `State' < 1297189159 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, there's a great sense of freedom in testing these kernel-mode keyloggers < 1297189159 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: hm should I wrap it up in a newtype :D < 1297189160 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> Control.Monad.State.State < 1297189161 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Not in scope: data constructor `Control.Monad.State.State' < 1297189171 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because I /know/ they're malicious, I can safely run them without having to check the source for malware first < 1297189174 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, will you do it, or will I? < 1297189176 0 :hagb4rd!~hagb4rd@koln-4d0b6775.pool.mediaWays.net JOIN :#esoteric < 1297189178 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :elliott: always wrap it before you use it < 1297189178 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: :D < 1297189186 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: but I like type aliases < 1297189191 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: they make things simpler :( < 1297189197 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Feel free < 1297189204 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Update the TNT room < 1297189205 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :what's easier isn't always best. wrap it! < 1297189207 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You might have to empty it first < 1297189208 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gah, why does this ls highlight non-executable .sh files in green? < 1297189211 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: you suck < 1297189219 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :elliott: not until it's wrapped < 1297189242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I'm even logged in as root and everything! (it wouldn't work very well otherwise, but I'm normally terrified to do stuff in a root shell) < 1297189253 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Wait, that requires well over a hundred lapis blocks. < 1297189268 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: :D < 1297189271 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :ACTION finally manages to silence elliott  < 1297189273 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Dood, I do everything logged in as root. < 1297189275 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: *ore, presumably < 1297189276 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Users are for pussies. < 1297189277 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: NOPE < 1297189284 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :elliott, OK YES < 1297189291 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Everything HackEgo runs is run as root with no security countermeasures. < 1297189297 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"... increased the drop rate to 4-8 in the 1.2_02 update. However, due to a bug SMP servers still only drop one dye. " < 1297189303 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Yes, you're so trustworthy. < 1297189305 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's not a bug. < 1297189307 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I see MC is still all Notch Engineering® < 1297189310 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's just that there was no 1.2_02 server version. < 1297189310 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: *trusting < 1297189314 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: SHUT UP < 1297189318 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how do you pipe stdout and stderr in bash? it doesn't seem to be |& like I thought it was < 1297189318 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: because it was just a "bugfix". < 1297189327 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: A bugfix that changed game mechanics, anyway, this belongs in #esoteric-minecraft < 1297189332 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: 2>&1 :P < 1297189334 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: And why release two executables for a bugfix when you can release one < 1297189335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :must be 2>&1 < 1297189336 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Unless you don't mean that. < 1297189340 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Precisely! < 1297189347 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It was a client-only bug, I think, but clearly another change got in. < 1297189351 0 :nescience!~myndzi@m100e36d0.tmodns.net JOIN :#esoteric < 1297189358 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But seriously, -minecraft, otherwise the lynching will start again. < 1297189363 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :THE LYNCHING < 1297189378 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I have nothing more to say, I've facepalmed enough < 1297189433 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION gets his lynchin' pipe wrench. < 1297189463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Accessor a b -> Accessor t a -> Accessor t b < 1297189542 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Err, copumpkin, what's the Category instance for this < 1297189572 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :id should be obvious < 1297189602 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: Yes < 1297189605 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(.) is slightly trickier < 1297189610 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :not much worse < 1297189612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Accessor a . Accessor b = < 1297189612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : \f x -> let (elem, x') = b id x < 1297189612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (elem2, elem') = a f x < 1297189612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : in (f elem2, I think I'm going about this all wrong < 1297189619 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Yes, I typed that into Emacs.) < 1297189654 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1297189702 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle (a -> a) -> a -> (a, a) < 1297189702 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Query.Monad applyWith' :: Monad m => (a -> b) -> GT m g a -> g -> m (b, g) < 1297189703 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Query.Monad applyWith :: Monad m => (a -> b) -> GT m g a -> m g -> m (b, g) < 1297189703 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Monad.Writer.Class listens :: MonadWriter w m => (w -> b) -> m a -> m (a, b) < 1297189707 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle (a -> b) -> a -> (a, b) < 1297189707 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Monad.Writer.Class listens :: MonadWriter w m => (w -> b) -> m a -> m (a, b) < 1297189707 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Network.BufferType buf_span :: BufferOp a -> (Char -> Bool) -> a -> (a, a) < 1297189708 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Query.Monad applyWith' :: Monad m => (a -> b) -> GT m g a -> g -> m (b, g) < 1297189710 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Meh < 1297189838 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@djinn ((b -> b) -> a -> (b, a)) -> ((a -> a) -> t -> (a, t)) -> ((b -> b) -> t -> (b, t)) < 1297189838 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :f a b _ c = < 1297189838 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (case b (\ d -> d) c of < 1297189838 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (e, _) -> case a (\ f -> f) e of < 1297189838 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (g, _) -> g, < 1297189838 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : c) < 1297189843 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: Woo < 1297189854 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wait, what? < 1297189857 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's cheating. < 1297189873 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Your types are too specific < 1297189875 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Presumably < 1297189921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1297189948 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : a . b = Accessor $ \f x -> (getA a (getA b x), modifyA b (modifyA a f) x) < 1297189950 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :There. < 1297189961 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@djinn (x -> a -> (b, a)) -> ((a -> a) -> t -> (a, t)) -> (x -> t -> (b, t)) < 1297189961 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :f a b c d = < 1297189961 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (case b (\ e -> e) d of < 1297189962 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (f, _) -> case a c f of < 1297189962 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (g, _) -> g, < 1297189962 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : d) < 1297189968 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: Accessor feels to specific a name I think I'm going to call it Field or something. Component? < 1297190003 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297190052 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :Lens < 1297190053 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297190082 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@pl p (f (g x)) x < 1297190083 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :p (f (g x)) x < 1297190142 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \p f g x -> p (f (g x)) x < 1297190142 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :flip flip id . ((flip . (ap .)) .) . (. (.)) . (.) . (.) < 1297190150 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@pl \g p -> accessor (\f x -> (g x, p (f (g x)) x)) < 1297190151 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :(accessor .) . ap ((.) . (.) . liftM2 (,)) (flip flip id . ((flip . (ap .)) .) . flip ((.) . (.)) . flip (.)) < 1297190156 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I prefer my version < 1297190157 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \x -> p (f (g x)) x < 1297190157 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :p =<< f . g < 1297190174 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1297190192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@pl \f x -> p (f (g x)) x < 1297190192 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :join . (p .) . (. g) < 1297190192 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Who is messing with @pl an d why. < 1297190195 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \x -> (g x, p (f (g x)) x) < 1297190196 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :liftM2 (,) g (p =<< f . g) < 1297190196 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :*and < 1297190202 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \f x -> (g x, p (f (g x)) x) < 1297190203 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :liftM2 (,) g . join . (p .) . (. g) < 1297190303 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@pl \g f x -> (g x, p (f (g x)) x) < 1297190304 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :ap ((.) . liftM2 (,)) (flip flip id . (liftM2 p .) . flip (.)) < 1297190318 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@pl \p f x -> (g x, p (f (g x)) x) < 1297190319 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :(liftM2 (,) g .) . flip flip id . (ap .) . (. (. g)) . (.) < 1297190359 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I got lost at the \f x one already < 1297190369 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um what order of arguments do you _actually_ want? < 1297190398 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :is it that p f g x above? < 1297190438 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Looking at elliott's accessor-line, \f x < 1297190474 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :o k < 1297190600 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \f -> g &&& (p =<< f . g) < 1297190600 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :(g &&&) . (p =<<) . (. g) < 1297190641 0 :sebbu2!~sebbu@ADijon-152-1-91-94.w81-50.abo.wanadoo.fr JOIN :#esoteric < 1297190754 0 :sebbu!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297190865 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: *Shiro.Accessor> (fstA ^= 2) (1,2) < 1297190866 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(2,2) < 1297190887 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :> first (const 2) (1,2) < 1297190888 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : (2,2) < 1297190922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Shiro.Accessor> [1,2,3] ^$ tos < 1297190922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1297190922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Shiro.Accessor> [] ^$ tos < 1297190922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :0 < 1297190922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Woot < 1297190946 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :> headDef 0 [1,2,3] < 1297190946 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Not in scope: `headDef' < 1297190949 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Bah < 1297190955 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yes, the point is that they're accessors. < 1297190964 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I know :-P < 1297190967 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So I don't need "modifyStack" and all that :P < 1297190993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha, jix_wiggle3 is actually detecting defend7 in particular (by counting small decoys) and using a slower kill algo in order to beat it < 1297191019 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Bleh, this is why we need MetaBFJoust < 1297191039 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I could set up MetaBFJoust to just run the hill once every ten minutes plus once every time you ask for it :P < 1297191050 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So it would change ON ITS OWN! < 1297191122 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um the result between two bfjoust programs is deterministic, right? so no need to run the actual fights more than once? < 1297191139 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: indeed < 1297191152 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The output of a MetaBFJoust program is based on the programs in the last run of the hill (they are the input) < 1297191171 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So potentially it changes every hill even if all the MBFJ programs are the same. < 1297191174 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :metabfjoust what? < 1297191206 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :also has wiggle even been updated since forever? < 1297191210 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience: I had an idea to make a new hill where instead of writing BFJoust programs, you write programs in "any" language which /output/ BFJoust programs, given the previous hill's BFJoust programs as input. < 1297191218 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: no, it hasn't < 1297191227 0 :yiyus!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297191229 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but defend10 and defend7 both use a similar decoy structure < 1297191231 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :gregor: lol < 1297191243 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so they're both detected and use the same counter-defend strategy < 1297191253 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :ais: he pretty much just messed with the numbers until they beat everything < 1297191256 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> (-2) `rem` (-2) < 1297191256 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience: Mainly because everybody talks about how their programs are optimized to other programs on the hill, and doing MBJS would make it possible to break that OR use it even more skillfully. < 1297191257 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 0 < 1297191268 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> (-2) `rem` (-2) == 0 < 1297191269 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : True < 1297191275 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :gregor: interesting < 1297191283 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: mine are rarely deliberately aimed at particular enemies < 1297191295 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :s/their /some / < 1297191299 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, a bigger hill would mostly avoid the issue < 1297191307 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I don't think most are written "against" certain enemies < 1297191308 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :What size wouldja like? < 1297191311 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :it's more like < 1297191313 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because aiming for the leaders would leave you doing suboptimal things that made you vulnerable to riff-raff < 1297191316 0 :yiyus!1242712427@je.je.je JOIN :#esoteric < 1297191326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :20's beginning to get there at the moment < 1297191332 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :people enter things and then fiddle with them until they succeed more < 1297191337 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: indeed < 1297191365 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you look at wiggle3, though, it has a pretty explicit "use a slow clear algo upon encountering an enemy with exactly two decoys" < 1297191396 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I'll have to read again < 1297191401 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on the other hand, it turns out that even without that detection, wiggle3 beats defend10 on most tape lengths < 1297191404 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :unfamiliar with all the programs < 1297191425 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for unrelated reasons < 1297191434 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so that particular bit of targeting is actually unnecessary, at least in that case < 1297191471 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I don't see the detect-two-decoys thing immediately < 1297191512 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it first detects the first nonzero cell; then uses a different algo for clearing each of the next five < 1297191527 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I see five slightly different attacks < 1297191540 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :that trigger on the first nonzero one after the next < 1297191543 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297191567 0 :nescience!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297191607 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I have an O(1) wrapping function here you might like to use. < 1297191612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For rectangle bounds. < 1297191645 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: is that possible? < 1297191649 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes. < 1297191664 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: The standard loop is just "Subtract delta, then subtract delta while in bounds, then add delta". < 1297191678 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This reduces to a rather simple equation. < 1297191678 0 :nescience!~myndzi@m290e36d0.tmodns.net JOIN :#esoteric < 1297191683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, you mean for wrapping round the bounds, rather than calculating what the bounds are < 1297191688 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes, indeed. < 1297191691 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :getting a little tired of phone crashing < 1297191717 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, hm what is the algorithm < 1297191720 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: a 3-cycle clear defeats defend10 and defend7, that's what's used on the third element < 1297191726 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :anyway I think there were like 3 or 4 defend programs on the hill at the time < 1297191733 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It'll be easier for you to translate my Haskell than for me to explain it. It's very simple. < 1297191737 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :so I'm not surprised < 1297191747 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: http://hpaste.org/43786/wrapping < 1297191760 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :it's a more complicated version of what I was moving towards with slowrush < 1297191760 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: div is integer division. < 1297191766 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, raw link? df + browser = slow < 1297191771 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: http://hpaste.org/raw/43786/wrapping < 1297191774 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1297191801 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :it was more to target the strategy than a specific revision < 1297191842 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :> :t frac < 1297191843 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : : parse error on input `:' < 1297191845 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :what < 1297191851 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I define it right there... < 1297191854 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1297191856 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Also, it's ":t frac", not "> :t frac". < 1297191876 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I find reading bottom to top a bit confusing still :P < 1297191886 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, does it pass mycology? < 1297191894 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes. < 1297191899 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :chainmail beats wiggle3 because it only has one decoy (the tripwire) in front of the cell it locks the opponent on, and uses a 128-cycle rather than 256-cycle lock which is resistant to defense-detecting infinite loops like wiggle3 uses (probably accidentally) < 1297191901 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well, all the wrapping parts, yes :P < 1297191906 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't pass because of o. < 1297191908 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But that's my bug :P < 1297191912 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, where does it define the Ray type? < 1297191917 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :o doesn't need to be implemented, does it? < 1297191921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It doesn't, but it doesn't need to. < 1297191926 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: (x,y) is the current position, (dx,dy) is the current delta. < 1297191932 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Vorpal: It doesn't, but it doesn't need to. <-- < 1297191933 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :what < 1297191936 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :was that to ais? < 1297191940 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1297191943 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't define the Ray type there. < 1297191946 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297191948 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Because you don't need to see it to make sense of the algorithm :P < 1297191953 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I just pass around rays because that's what I use. < 1297191957 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, but I do implement it < 1297191961 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I just don't implement text mode output yet < 1297191971 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, and a ray is just x,y,dx,dy? < 1297191980 0 :asiekierka!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1297191982 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1297191983 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I think the reason wiggle3 does so well is that it has a sort of enhanced offset clear that detects multiple decoy sizes < 1297192023 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: hmm, I don't think I can implement Arrow Accessor < 1297192029 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that works well against programs that are just adjusting their decoys to beat each other < 1297192029 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(b -> c) -> Accessor b c < 1297192034 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :no way to modify < 1297192051 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :yeah. I wanted to do something similar but it was too late! < 1297192057 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1297192064 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I remember now < 1297192074 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :it's less about attacking Defend decoys < 1297192086 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :and more about clearing common decoy patterns efficiently < 1297192094 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297192101 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :the numbers chosen worked best for the hill makeup at the time < 1297192121 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :but they are kind of specific < 1297192226 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoybooster (>)*8(+)*128(<(+)*128)*7(>)*7([(+)*30[-]]>)*21 < 1297192249 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_decoybooster: 8.4 < 1297192257 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I wonder why that did so badly? < 1297192282 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Implemented it yet? :-P < 1297192320 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: If you're interested in CCBI's wrapping it's basically Dimension.rayIntersects in ccbi.space.utils < 1297192371 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'll take a look at it. How does slowdown.b98 slow down cfunge, btw? By making it iterate over tons of cells before it gets to the end of the line and wraps? < 1297192402 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's the main reason cfunge is noticeably slow there, yes < 1297192435 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I was thinking I would store the bounds of each line and column, but then slowdown2.b98 could just fly instead. < 1297192447 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So I guess I need your hideously complicated stuff at some point :P < 1297192469 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you insist :-P < 1297192479 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, no. Still playing df < 1297192486 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, writing anything that falls down on flying things sucks. < 1297192487 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I'm not in any hurry < 1297192501 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: OK, I'll just release Shiro 1.0: "Totally Better Than cfunge". < 1297192507 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I hate special cases :P < 1297192511 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(i.e. cardinality) < 1297192533 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Fair warning: rayIntersects is 250 lines long, more than half of that being comments < 1297192542 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well you are free to code name them whatever you want. Besides cfunge was 0.99 or such last I checked. Meaning it never claimed to be as stable as a 1,0 < 1297192545 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :1.0* < 1297192580 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :or as good even < 1297192693 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm reading this and my mind has basically turned off. < 1297192700 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1297192708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoybooster (>)*8(+)*128(<(+)*128)*7(>)*7([(+)*5[-]]>)*21 < 1297192712 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Kudos, though :P < 1297192719 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_decoybooster: 9.6 < 1297192720 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Cheers :-P < 1297192720 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aha, the offset clear was just /too/ offset < 1297192728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to beat even simple programs < 1297192730 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: If you can O(1) that too I'd appreciate it < 1297192739 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Gee, that sounds like fun. < 1297192753 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: Ha, Data.Lenses doesn't wrap Accessor. < 1297192782 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I think yours might be inherently >O(1). < 1297192788 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Because of your multiple-bounding-box stuff. < 1297192802 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :rayIntersects only works on one box < 1297192833 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoybooster (>)*8(+)*64<(-)*64(<(-)*64<(+)*64)*3(>)*7([(+)*5[-]]>)*21 < 1297192849 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But it's O(width of box) or something in the pathological case < 1297192857 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Couldn't you use my wrap, then? < 1297192865 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or at least a modified version of it. < 1297192866 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_decoybooster: 10.0 < 1297192877 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Your wrap solves a different problem < 1297192888 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it does. < 1297192893 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But it might be vaguely applicable :P < 1297192906 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Again, I'd appreciate it if you can figure it out ;-) < 1297192919 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I think you're vastly more qualified than me. < 1297192933 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoybooster (>)*7<(-)*64(<(-)*64<(+)*64)*3(>)*7([(+)*5[-]]>)*21 < 1297192941 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_decoybooster: 13.7 < 1297192963 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoybooster (>)*7(-)*64(<(-)*64<(+)*64)*3(>)*7([(+)*5[-]]>)*21 < 1297192973 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_decoybooster: 15.9 < 1297193015 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :decoybooster's beating more than it's losing to, but it's still last :) < 1297193020 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297193023 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust decoybooster (>)*7(-)*64(<(-)*64<(+)*64)*3(>)*7([(+)*5[-.]]>)*21 < 1297193031 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_decoybooster: 30.6 < 1297193087 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whereas that made it beat fewer programs, but better programs, as I put a counter-defence offset clear in there < 1297193088 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/breakdown.txt <-- for your viewing pleasure, the breakdown for the latest program submitted. < 1297193096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay, thanks < 1297193123 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the < and > refer to the winner with each length? < 1297193129 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And X is a tie? < 1297193145 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The confusotron is divided by polarities then tape lengths (space separates polarities), < is left won, > is right won, X is tie < 1297193147 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yeah < 1297193173 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suppose you could break it down further by win reason, but that might be a little ridiculous < 1297193185 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :decoybooster won against EVERYTHING? < 1297193186 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Donwanna :P < 1297193192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh, no < 1297193197 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, not everything < 1297193201 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust talisman < < 1297193204 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_talisman: 0.0 < 1297193208 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/breakdown.txt :D < 1297193212 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I could tweak it slightly to beat rushpolarity if I wanted to, but that feals like cheating < 1297193232 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Want to print the counts of <>X? < 1297193241 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Nopw. < 1297193243 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :*Nope < 1297193243 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Err, why do you do four polarities? < 1297193245 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It should only take two. < 1297193249 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: -- -+ +- ++ < 1297193256 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but +- -+ should be enough. < 1297193257 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: To quote "SCORES" "for, uhh, completeness?" < 1297193261 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297193282 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Holy shit cfunge is slow at fungicide. < 1297193285 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :tweak it :P may as well! < 1297193311 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Lookup tables are :-P < 1297193312 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: BTW, the graphs show in little tiny windows for me. < 1297193329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Little tiny scrollable windows. < 1297193347 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D @ mebioctets < 1297193391 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If your browser can't handle then I weep for it < 1297193464 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Heywait, the flag is always 127, right? Regardless of polarity? (I should be telling this, not asking it :P ) < 1297193476 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: 128 < 1297193483 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh :P < 1297193487 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well that makes more sense X-P < 1297193490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which == -128, ofc < 1297193496 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yuh < 1297193505 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :You see where I was going with my totally-wrong thought though :P < 1297193511 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :tape[0] = tape[tapelen-1] = 128; < 1297193577 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll leave decoybooster there, I think < 1297193579 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dumdum (>(+)*254)*100 < 1297193585 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_dumdum: 0.0 < 1297193587 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: cfunge mostly loses total time due to fork.b98 though, which has since been fixed AFAIK < 1297193588 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1297193590 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297193595 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :coppro: two-cycle rules < 1297193599 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : If your browser can't handle then I weep for it < 1297193599 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It does < 1297193603 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It just doesn't make them the right size < 1297193604 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Chrome) < 1297193607 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ais523: < 1297193610 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, indeed it has been fixed < 1297193613 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pooppy: It tied against defend7 :P < 1297193615 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :err, d'oh < 1297193621 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dumdum (>(+<>)*254)*100 < 1297193621 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a tactic that hasn't been used much yet (the only other program I've seen do something remoately similar is myndzi/nescience's 3pass, which is not really the same) < 1297193626 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_dumdum: 18.9 < 1297193629 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :O_o < 1297193631 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, you can use . to wait a cycle < 1297193640 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dumdumwait (>(+.)*254)*100 < 1297193645 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_dumdumwait: 11.6 < 1297193653 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :dumdum is a champ < 1297193654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :strange how being slower and stupider worked better < 1297193659 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I recommend .. over <>, anyway < 1297193663 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523_tripstridewire.bfjoust vs coppro_dumdumwait.bfjoust: < 1297193664 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :<<><><><><><><><><><< <<><><><><><><><><><< <<><><><><><><><><><< <<><><><><><><><><><< < 1297193665 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297193668 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dumdum (>(+..)*254)*100 < 1297193674 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: tripstridewire's like that < 1297193674 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_dumdum: 18.9 < 1297193684 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I am amazed such a dumb program does so well < 1297193696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it tends to win just over or just under 50%; it's an exploit on the scoring system, really < 1297193720 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Getting 18.9 does not count as an exploit in anything :P < 1297193739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: tripstridewire has 28.4 < 1297193748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :despite not actually being very good < 1297193759 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I thought you were talking about dumdum :P < 1297193774 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol, it has negative points and a decent score X-D < 1297193793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :coppro: aha, the difference between .. and . is that .. is the simplest timing that defeats my defence programs < 1297193794 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: I think I regret rolling my own :P < 1297193807 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: let us make awesome things by making sure that ] happens after cells get updated on the current cycle >_> < 1297193808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I should come up with a defend11 that can beat a three-cycle clear, somehow < 1297193827 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: That's a bug that was fixed. < 1297193827 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that would be an actual substantive rules change; I'm not sure what to do about those on an old hill < 1297193831 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: I'm not changing the rules ... < 1297193838 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :CHANGE < 1297193838 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :EVERY < 1297193839 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :RULE < 1297193840 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: twas a joke, dogg < 1297193841 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: quintopia wants to exploit it < 1297193845 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: obviously < 1297193861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh right, the []++++++ programs were /too/ good, weren't they? < 1297193871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and crowded out all the competition < 1297193878 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust wtf_do_I_think_Im_doing +[[(++.)*100]+] < 1297193894 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_wtf_do_I_think_Im_doing: 8.8 < 1297193904 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*1>++>([(-)*9[+]]>)*20 < 1297193909 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Hah, I love defend v defend scores :P < 1297193910 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 2.9 < 1297193920 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*9[+]]>)*20 < 1297193932 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 24.3 < 1297193941 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow what happened to monorail < 1297193944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, Deewiant changed it < 1297193953 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And back again < 1297193958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering how it suddenly dropped right down the rankings after being there for years < 1297193978 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle Int -> a -> [a] -> [a] < 1297193978 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Network.CGI.Protocol replace :: Eq a => a -> a -> [a] -> [a] < 1297193979 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude enumFromThenTo :: Enum a => a -> a -> a -> [a] < 1297193979 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.IntMap findWithDefault :: a -> Key -> IntMap a -> a < 1297193981 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, woops < 1297193982 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh that's what monorail does. how very simple. < 1297193986 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmph < 1297193996 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*1>++>([(-)*9[+]]>)*26 < 1297194003 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: it is /just/ decoy, offset clear, defense detector < 1297194007 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 6.3 < 1297194009 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nice to see a program that simple do reasonably well < 1297194011 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh well < 1297194015 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*9[+]]>)*20 < 1297194020 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 24.3 < 1297194056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm beginning to think that all programs should use defence detectors < 1297194062 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-.)*9[+...]]>)*20 < 1297194065 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 17.4 < 1297194078 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend_enemy_turf (>)*10(+)*128[[](+)*128] < 1297194078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because they hardly cost anything and can really help < 1297194085 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*20[+]]>)*20 < 1297194093 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yowza < 1297194109 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Heh, steamroller beat only defend7, defend10, and chainmail, all of which beat monorail < 1297194121 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_defend_enemy_turf: 1.8 < 1297194121 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 19.9 < 1297194126 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297194130 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[+...]]>)*20 < 1297194135 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 17.4 < 1297194140 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle MonadState < 1297194140 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :No results found < 1297194156 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: did it beat slowmonorail? < 1297194162 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Didn't check < 1297194164 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[+..]]>)*20 < 1297194168 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 6.6 < 1297194171 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[+.]]>)*20 < 1297194179 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 19.7 < 1297194182 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[+....]]>)*20 < 1297194190 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :BFJoust really ought to have threads. < 1297194197 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 0.0 < 1297194200 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297194204 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: bf multi joust! < 1297194210 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[...+]]>)*20 < 1297194213 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.1 < 1297194217 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[.+]]>)*20 < 1297194221 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.1 < 1297194243 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(.-)*9[+]]>)*20 < 1297194249 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 16.2 < 1297194251 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think we're getting a genuine stone-paper-scissors in BF Joust < 1297194260 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fast attack beats slow attack beats defence beats fast attack < 1297194274 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-+-)*9[.+]]>)*20 < 1297194277 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.1 < 1297194284 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-+-)*9[+.]]>)*20 < 1297194289 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.1 < 1297194297 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: is it possible to combine slow attack and defense? < 1297194298 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*9[+.]]>)*20 < 1297194307 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.1 < 1297194308 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: nescience was discussing that earlier < 1297194310 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh well < 1297194311 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the answer is, I'm not sure < 1297194328 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although decoybooster was inspired by the conversation, it uses a different principle < 1297194335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(that of using decoys to set up bigger decoys) < 1297194337 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This is ridiculous, I'm just reinventing data-accessor < 1297194346 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*3[+.]]>)*20 < 1297194348 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.8 < 1297194360 0 :kar8nga!~kar8nga@i-194.vc-graz.ac.at JOIN :#esoteric < 1297194368 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*3[+]]>)*20 < 1297194379 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 18.4 < 1297194387 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*10[+]]>)*20 < 1297194393 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 21.6 < 1297194397 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust specifically_defeat_defend10_and_in_only_one_polarity (>)*9-[>-]>>[-] < 1297194406 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_specifically_defeat_defend10_and_in_only_one_polarity: 0.2 < 1297194410 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :lul < 1297194410 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297194432 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*11[+]]>)*20 < 1297194438 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 19.0 < 1297194444 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust specifically_defeat_defend10_and_in_only_one_polarity (>)*7-[>-]>>[-] < 1297194450 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_specifically_defeat_defend10_and_in_only_one_polarity: 0.0 < 1297194458 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*9[+]]>)*20 < 1297194462 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :YESSS < 1297194465 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 22.2 < 1297194470 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :if you make the hill bigger we should go back and fetch some variety < 1297194472 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Gregor_specifically_defeat_defend10_and_in_only_one_polarity.bfjoust vs ais523_defend10.bfjoust: < 1297194472 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> <<<<<<<<<<<<<<<<<<<<< < 1297194475 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Can you say PERFECTION? < 1297194482 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297194483 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust steamroller (>+>-)*4>++>([(-)*4[+.]]>)*20 < 1297194485 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :nice < 1297194486 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_steamroller: 18.1 < 1297194492 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: haha < 1297194496 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience, ais523: How big would you like the hill? < 1297194497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :did it beat anything /else/? < 1297194514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I'd say 30 or maybe 40 < 1297194524 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Why no, it defeated nothing else :P < 1297194530 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :no idea.. big enough that interesting programs have a chance to stay on when people screw around < 1297194534 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :And it didn't beat defend10 either, it tied since it's polarity-specific :P < 1297194552 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :and or maybe change the scoring to not be dependent on the score of the program that lost? < 1297194556 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*20[..+]]>)*20 < 1297194560 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 7.1 < 1297194561 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :didn't we try that before though? < 1297194567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: THE SCORING IS PERFECT, DO NOT QUESTION IT < 1297194567 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*20[+]]>)*20 < 1297194571 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 19.3 < 1297194579 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience: ... what does that mean? < 1297194583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and actually I rather like the way the scoring atm works, it makes abuse quite difficult) < 1297194590 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*9[+]]>)*20 < 1297194594 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 10.1 < 1297194599 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297194603 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*3[+]]>)*20 < 1297194607 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 16.2 < 1297194609 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Back. < 1297194616 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*20[+]]>)*20 < 1297194619 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :weren't you talking about getting o.n the hill just by targeting specific programs? < 1297194620 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's so weird < 1297194620 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 19.3 < 1297194620 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Still at the BF Joust‽ < 1297194634 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: and Gregor's program didn't get on the hill < 1297194636 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: I'm travelling to Henningland < 1297194649 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :_o_ < 1297194652 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you got any idea why slowmonorail works best with that particular timing < 1297194654 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :tswett: o_o < 1297194655 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297194664 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :well it was a little too specific :P < 1297194686 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :myndzi\: _o_. :P < 1297194686 0 :myndzi\!unknown@unknown.invalid PRIVMSG #esoteric :         | < 1297194686 0 :myndzi\!unknown@unknown.invalid PRIVMSG #esoteric :        /| < 1297194692 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I see. < 1297194700 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :I was too close to the left edge. < 1297194717 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust specifically_defeat_defend10_and_in_only_one_polarity (>)*7-[>-]>>[-] < 1297194720 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_specifically_defeat_defend10_and_in_only_one_polarity: 0.0 < 1297194744 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust lets_fill_the_newly_resized_hill_with_stupid_garbage < < 1297194747 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_lets_fill_the_newly_resized_hill_with_stupid_garbage: 0.0 < 1297194758 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the hill is bigger? < 1297194761 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, _o_ is the pose one of the disciples in Caravaggio's "The Supper at Emmaus" makes when he realizes he's sitting next to Jesus. < 1297194761 0 :myndzi\!unknown@unknown.invalid PRIVMSG #esoteric :        | < 1297194761 0 :myndzi\!unknown@unknown.invalid PRIVMSG #esoteric :       /< < 1297194762 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :how much? < 1297194769 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :You'll just have to find out :P < 1297194771 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :He goes "Holy crap!" and sticks his arms out. < 1297194779 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll submit some of my old ones < 1297194787 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust tripwire_sensor >+>+++>+<[]<(.)*48[<(+)*100000]<(-)*100000 < 1297194792 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :tswett: Who's Jesus. < 1297194806 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nop . < 1297194807 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :elliott: a character in European mythology. < 1297194814 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_tripwire_sensor: 5.2 < 1297194817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend9 http://sprunge.us/TjjN < 1297194820 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Why'd you make the jesus-look < 1297194826 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_nop: 9.5 < 1297194834 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :To show what the jesus-look looks like. < 1297194841 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: what are your rates as a pianist? < 1297194850 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :he can't piano! < 1297194851 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Depends on what I'm asked to play. < 1297194852 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297194860 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: chopsticks? < 1297194876 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: $16,000 for a low-quality MIDI with no inflection. < 1297194896 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :reasonable < 1297194908 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Gregor_specifically_defeat_defend10_and_in_only_one_polarity.bfjoust seems to beat defend10 overall; does it draw the other polarity? < 1297194919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, I probably shouldn't have put defend9 on the hill, I forgot how evilly CPU-intensive it was < 1297194924 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: No, it wanders off the end and loses :P < 1297194932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so how does it win overall? < 1297194941 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It doesn't. < 1297194950 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I'm checking an old report while the current one generates, perhaps it was a buggy version of the program) < 1297194963 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh, yeah, the one where it got a 0.2 did stupid stuff. < 1297194975 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: it's about as simple as Mozart's Minuet in F, K. 2. < 1297194976 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The "correct" version gets 0.0 X-P < 1297194977 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Yes, two. < 1297195000 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend9: 30.1 < 1297195012 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Crap sandwiches man, that's a good score too. < 1297195022 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(In principle it shouldn't be so bad in the future since it caches :P ) < 1297195033 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: it was on the hill for ages, it only fell off recently < 1297195042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I wanted to see how it did in the current environment < 1297195053 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was ahead of defend7 for quite a while until people started exploiting it < 1297195066 0 :augur!~augur@129.2.129.34 JOIN :#esoteric < 1297195092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's way behind the other defenders, so obviously it's not smart eno < 1297195104 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*so obviously it's not smart enough to survive in the current environment < 1297195108 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I blame the rise of offset clears < 1297195121 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: about as simple, half as short, and probably worse. < 1297195132 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"half as short", so twice the length? < 1297195137 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric : < 1297195158 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's actually the way i read it < 1297195172 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ambiguity of language: don't do it < 1297195176 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Yes, if you play it a quarter times as slowly. < 1297195188 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :AGH < 1297195194 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :STOP IT :P < 1297195199 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So, it's double as long if you play it four times faster than it ought to be played? < 1297195216 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Good lord, are you asking me to play Handel's Messiah? < 1297195220 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(for Piano) < 1297195226 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: yes, if it takes half the time < 1297195233 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so length increase at normal speeds is 8x? < 1297195235 0 :sixdej|sleep!unknown@unknown.invalid NICK :sixdej < 1297195237 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :or is that 16x? < 1297195245 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: 8x < 1297195255 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: well, that's only true if you stretch it out by a factor of one sixteenth. < 1297195280 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh god < 1297195286 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :now it's 48x < 1297195291 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/tmp/jungle-2011-02-08-1.ogg More music going into the dustbin :P < 1297195301 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :which is ... somewhere between messiah and carmina burana? < 1297195310 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :32x, isn't it? < 1297195337 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oh you resized it eh < 1297195338 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: this is awful < 1297195344 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :link me to superturing :P < 1297195345 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297195352 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :inb4 people lagging it to hell with submissions < 1297195353 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So you can complain about it too :P < 1297195364 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :superturing was awesome < 1297195367 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience: ais523 already lagged it to hell. < 1297195381 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297195384 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't feel so guilty back when defend9 was the best program on the hill < 1297195385 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1297195386 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: http://codu.org/tmp/cave-2011-02-07-2.ogg I link you to this instead. < 1297195396 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I want to fetch some of my old ones too :) < 1297195409 0 :Sgeo!~Sgeo@137.125.181.62 JOIN :#esoteric < 1297195412 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience: Nobody's stopping you. < 1297195413 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :are these for levels in SuperTuring? < 1297195423 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: SuperTuring is not a game :P < 1297195432 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yes it is < 1297195441 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: here's myndzi_keke2: ->>>>>>>>>(>[(-.+(-.)*256(+.)*256>)*20])*20 < 1297195443 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(But they are to be background music in a game, though jungle isn't) < 1297195443 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it's the world's most computable platformer < 1297195450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's the only one by you I have handy that isn't on the current hill < 1297195460 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: It's SUPERTuring < 1297195464 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Anyway. 48 beats, andante. < 1297195467 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: FINE < 1297195481 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FFFFFFFFFFFFFFFFFFFFFFFUUUUUUUUUUUUUUUUUUU < 1297195497 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>(-)*10)*4(>(+)*10)*4>>-([([-])*2([+])*2>]+)*30 < 1297195516 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :tswett: Send me the score later and I'll judge. < 1297195559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: we'll have to wait for Lymia to come back and fill the hill with evoprograms < 1297195564 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowmonorail (>+>-)*4>++>([(..-)*20[+]]>)*20 < 1297195569 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :ha, later I'll dig through the history and see what got knocked off recentlyish < 1297195579 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :http://www.cis.gvsu.edu/~swettt/music/opl1.pdf < 1297195583 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I swear I'll get Concurrent Funge done today. < 1297195586 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: does this count as sending it to you later? :P < 1297195598 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :tswett: No. < 1297195604 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm at schwork. < 1297195606 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust one_o_them_shudder_thangs (--+)*384000 < 1297195609 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1297195636 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :So, how does bfjoust work? Is there a page explaining it? < 1297195639 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Wait for something to finish first X-D < 1297195643 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: defend9 is making this a pain :-P < 1297195648 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: WAT GAME IS FOR < 1297195650 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :tswett: "BF Joust" on the wiki. < 1297195653 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :ACTION nods. < 1297195660 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: 's in development. < 1297195660 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://esolangs.org/wiki/BF_Joust < 1297195667 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I have an esolangs.org shortcut in my IRC client) < 1297195671 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: plaformer? has name? < 1297195700 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: clearly, the null string, based on Gregor's last comment < 1297195706 0 :Sgeo!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297195711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that's a great name for a game, and probably a unique one too < 1297195712 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Platform/adventure. No enemies per se. No name yet. 's not my game. < 1297195728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suppose you could call it ": the Game" if you wanted to make it clearer < 1297195735 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: 2d or 3d? < 1297195758 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 11.6 < 1297195759 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_one_o_them_shudder_thangs: 16.2 < 1297195762 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowmonorail: 24.1 < 1297195762 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: how about "The Best Game Named You've Ever Played" < 1297195764 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: 2D movement in a 3D-rendered environment < 1297195775 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: But it would actually be "\0: the Game\0", so most languages wouldn't be able to display the name. < 1297195787 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Meh, maglev used to be good < 1297195788 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :next project: distributed hill! < 1297195793 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: null character != null string < 1297195801 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I found a way to place chests on top of each other < 1297195806 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Piffle < 1297195809 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, if you want for your "wonders of the world" < 1297195815 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Feel free :-P < 1297195817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let's name it (game)^ < 1297195822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :i.e. minus the string "game" < 1297195828 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297195838 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :antitext is something I invented for Cyclexa, but perhaps it has applications elsewhere < 1297195842 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OK, maybe defend9 IS too slow X-D < 1297195855 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I don't mind massively if you remove it from the hill < 1297195877 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although there isn't currently a program pending < 1297195885 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :does defend9 always use up the entire 384000 cycles? < 1297195892 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no < 1297195893 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh, there's not? I didn't see the scores go by :P < 1297195918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust scoreboard_interpreted_as_program http://codu.org/eso/bfjoust/in_egobot/report.txt < 1297195934 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: How about !bfjoust defend9 < < 1297195935 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: mingle all the program sources together and submit that < 1297195937 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so lots of + - and . < 1297195937 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :with code to balance []s < 1297195948 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_scoreboard_interpreted_as_program: 7.6 < 1297195951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'll remove it if it becomes a problem < 1297195956 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that ran quickly enough < 1297195965 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, true < 1297195967 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :because it sucked < 1297195978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it beat nop < 1297195982 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: lol < 1297195984 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, have you upgraded your railway for new less speedy boosters? < 1297195986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in score, taht is < 1297195987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*that is < 1297195992 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: the scoreboard is better than both of your programs combined. < 1297195997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks at the breakdown < 1297195998 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :tswett: :( < 1297195999 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Which is not saying much, since both of your programs have a negative score. < 1297196001 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :tswett: :'( < 1297196007 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I pretty much haven't touched the boosters since they were built < 1297196044 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: There's also http://codu.org/tmp/cave-tense-2011-02-07-2.ogg , which is cave with a "tension track" added, to be faded in during tense/dangerous moments as a cue. < 1297196051 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :It's better than the harmonic sum of your programs. How's that. < 1297196058 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :tswett: :'( < 1297196068 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ais523_large_decoy_attack.bfjoust vs ais523_scoreboard_interpreted_as_program.bfjoust: ><>><><<<<>><<<<>>><< >><<><<<<><<><>><<<>< >><<><<<<><<><>><<<>< ><>><><<<<>><<<<>>><< ais523_large_decoy_attack.bfjoust wins < 1297196074 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think that's the reason < 1297196075 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Of course, one of them loses against literally everything since its very first cycle is to step off the tape :P < 1297196086 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust farmer1 [>(+)*128>(+)*128<[-]>[-]<<] < 1297196094 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the scoreboard gets intermittent wins against a program that's actually decent < 1297196099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, that's a really crazy pattern of < and > < 1297196122 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah they still work < 1297196127 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, wtf? < 1297196140 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :large_decoy_attack vs. the scoreboard makes no sense at all < 1297196142 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_farmer1: 1.0 < 1297196149 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust breakdown_interpreted_as_program http://codu.org/eso/bfjoust/breakdown.txt < 1297196151 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :0.0 < 1297196155 0 :augur!~augur@129.2.129.34 JOIN :#esoteric < 1297196157 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_breakdown_interpreted_as_program: 0.1 < 1297196158 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: it probably starts with < < 1297196163 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yup ;) < 1297196166 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, perhaps not < 1297196183 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it goes left near the start, just late enough to beat suiciders < 1297196219 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297196257 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust log_interpreted_as_program http://tunes.org/~nef/logs/esoteric/11.02.07 < 1297196259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the scoreboard will be insane for a while until all the joke programs are pushed off < 1297196262 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: so it loses against itself? < 1297196273 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_log_interpreted_as_program: 0.0 < 1297196276 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: doesn't clog use in order to specify nicks? < 1297196278 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yessssssssssss < 1297196283 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes :P < 1297196288 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Herobrine's logs would work better for that < 1297196298 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust google_interpreted_as_program http://www.google.com/ < 1297196309 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :HTML tends to start with < < 1297196311 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust herobrine_log_interpreted_as_program http://208.78.103.223/2011-02-07.txt < 1297196314 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_google_interpreted_as_program: 0.0 < 1297196322 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_herobrine_log_interpreted_as_program: 0.0 < 1297196322 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :ya still < 1297196326 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust ogg_interpreted_as_program http://codu.org/tmp/cave-tense-2011-02-07-2.ogg < 1297196339 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh no, I've started a meme! < 1297196341 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :This one's gonna get big points. < 1297196342 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_ogg_interpreted_as_program: 0.0 < 1297196343 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust opulus_1_interpreted_as_program http://www.cis.gvsu.edu/~swettt/music/opl1.pdf < 1297196347 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :D'AWWWW < 1297196356 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for tswett_opulus_1_interpreted_as_program: 0.0 < 1297196371 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OK, I'm done interpreting stupid crap as programs :P < 1297196393 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust parseerror (])*1000000 < 1297196397 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :Okay, let's see what wiggle3 looks like. < 1297196414 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: the stupid crap tends to shunt defense progams down the leaderboard, incidentally < 1297196418 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as they draw with it rather than beat it < 1297196426 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Hyuk < 1297196427 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_parseerror: 10.9 < 1297196432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait /what/? < 1297196437 0 :tswett!unknown@unknown.invalid PRIVMSG #esoteric :ais523: good job! < 1297196451 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You beat all the self-killers < 1297196453 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i guess a program that errors out < 1297196454 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :is a nop < 1297196465 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, it's interpreted as a nop, it seems < 1297196495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: how does specifically_beat_defend10_and_in_only_one_polarity work? tricking it into suiciding? < 1297196498 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I think it only actually fails the parser if the metacommands don't match. < 1297196500 0 :Sgeo!~Sgeo@137.125.181.62 JOIN :#esoteric < 1297196519 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: No, it just looks for the first decoy, skips the second that you're watching, then depletes the flag. < 1297196526 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297196533 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why does that only work in one polarity? < 1297196544 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Because I'm using -[>-] to look for the decoy < 1297196638 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you obviously put a lot of thought into that program! < 1297196649 0 :impomatic!~chatzilla@86.241.112.87.dyn.plus.net JOIN :#esoteric < 1297196657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi impomatic < 1297196663 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quite a lot of BF Joust motion today too < 1297196666 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Yay eating on the computer in public < 1297196685 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Hi :-) < 1297196717 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and a larger hill, in order to avoid certain hill effects and cause others < 1297196720 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, so it assumes there are 2 decoys, or am I misreading you? < 1297196725 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :we could do with some good old programs submitted < 1297196735 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: there are two decoys in defend10 < 1297196738 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: It assumes there are two decoys because that's how defend10 works :P < 1297196745 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :did you not notice the program name? < 1297196749 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was playing with this >(-)*8>(+)*8>>>+[<-[>>]<]<< which is supposed to was for a cell to be set to zero but only for a limited time. < 1297196757 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does this mean my crappy programs might get lower scores? < 1297196767 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :score can't go below 0 < 1297196769 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't work very well though :-( < 1297196782 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I've gotten positive scores for jun < 1297196789 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :what's the length range again? < 1297196792 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I submitted a new defence program (defend10) that works on a different principle to 7 and 9, it was at the top of the leaderboard for a while < 1297196794 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :And in one case, a resubmitted program got a wildly diffrent score < 1297196794 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :10-30 < 1297196794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and 10-30 inclusive < 1297196804 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :0 -> non0 < 1297196886 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oh right, that idea wouldn't work whoops < 1297196909 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mind_bogglingly_slow_rush [[>(+)*128..>(-)*128..]+] < 1297196920 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_mind_bogglingly_slow_rush: 21.6 < 1297196925 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :8-D < 1297196955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the scoring algo gives everything generically higher scores on a larger hill < 1297196967 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so that's not as impressive as 21.6 would be this morning < 1297196973 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ohyeah X-P < 1297196983 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust noop . < 1297196985 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but wow, is that rush slow < 1297196994 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: quintopia submitted that already < 1297196996 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1297197009 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What was the score? < 1297197014 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_noop: 10.0 < 1297197021 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Just reading http://codu.org/eso/bfjoust/in_egobot/ais523_defend10.bfjoust :-) < 1297197059 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, the hill's still growing < 1297197061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I /hope/ it isn't infinite < 1297197075 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mind_bogglingly_slow_rush_with_benefits (>)*9-[[+>(+)*128..>(-)*128..-]+] < 1297197081 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Why is the hill so big? < 1297197084 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_mind_bogglingly_slow_rush_with_benefits: 24.7 < 1297197087 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It's not, but it's more than double what it was :P < 1297197096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so probably 50, then < 1297197101 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: we thought it would be more interesting < 1297197110 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It will be once there's less garbage on the hill. < 1297197110 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it needs to fill with sane programs for that to be a reason < 1297197130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust attack1 [>[-]+] < 1297197133 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my first program < 1297197142 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_attack1: 15.3 < 1297197151 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so I should stop participating? < 1297197164 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: nah, the good programs push off the bad ones < 1297197166 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so insane programs don't hurt < 1297197171 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust x < < 1297197178 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust x [.] < 1297197179 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_x: < 1297197195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha, the defend programs have fallen miles because of all the stupid programs < 1297197197 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :You got a ! < 1297197202 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric : is a good score i think < 1297197204 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that they draw with rather than beat < 1297197213 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_x: 8.8 < 1297197227 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust attack6 (>)*9+[>[-]+] < 1297197230 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Why is that different from noop? < 1297197238 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: it uses more cpu < 1297197240 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_attack6: 18.7 < 1297197245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I should make a defend program that gives up waiting after a while and does a mindbogglingly slow rush or something like that < 1297197260 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so it can beat other defends? < 1297197263 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :and stupids? < 1297197265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297197312 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on the basis that the opposing program is a defend or a nop if it still hasn't turned up by cycle 100000 or whatever < 1297197323 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :link to hill? < 1297197339 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/in_egobot/ < 1297197370 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: tried giving up waiting this morning but it didn't work too well :-( < 1297197373 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :you should make a defend that pushes out as far as it can to trap for faster winnage < 1297197379 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: ? < 1297197387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience: why would winning faster matter? < 1297197396 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :just for fun! < 1297197410 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :and a slight advantage against programs that beat you < 1297197410 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could modify chainmail like that pretty easily, but that isn't mine < 1297197443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :defend7/9/10 wouldn't benefit from that because they use the preinitialised-to-128 cell for its value of 128 < 1297197459 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I had a defend-style program that gave up waiting after a while < 1297197463 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :true enough, but you could fix that < 1297197472 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"Left warrior failed to parse, right warrior wins!" < 1297197479 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust error [ < 1297197481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: that's some of the junk interpreted as program programs < 1297197490 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Ah < 1297197504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :[ isn't a parse failure in egojoust, but a nop < 1297197517 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_error: 8.1 < 1297197547 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mind_bogglingly_slow_rush_with_benefits (>)*8-[[+>(+)*128..>(-)*128..-]+] < 1297197558 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_mind_bogglingly_slow_rush_with_benefits: 27.6 < 1297197577 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: glad to see you making serious programs < 1297197585 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What's the hill's maximum size now? < 1297197588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: hmm, what about resubmitting shortsword? < 1297197596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: not stated, but I'm guessing 50 < 1297197611 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I can only be bitter about FYB for so long :P < 1297197626 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :$ cat impomatic_shortsword.bj (>++>--)*2(>)*6([-[+]]>)*20 < 1297197657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I deleted a newline) < 1297197665 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Sgeo: that's some of the junk interpreted as program programs < 1297197667 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sloth (+)*12((++-)*1024-(--+)*1024)*100(>)*8+([>[-]+])*100 < 1297197667 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :program programs? < 1297197678 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"junk-interpreted-as-program programs" < 1297197684 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust shortsword (>++>--)*2(>)*6([-[+]]>)*20 < 1297197684 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: some of the (junk interpreted as program) programs < 1297197691 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297197698 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: hmm, was that the first offset clear ever? < 1297197701 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so you'd use ([)*100000 instead of [] as a tripwire? < 1297197710 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nonstop_attack >+[[>+][-]+] < 1297197710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: pretty much < 1297197712 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust train2 (>(-)*10)*4(>(+)*10)*4>>+([[-][-]>+])*27 < 1297197713 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_sloth: 20.6 < 1297197720 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you need to duplicate the bit inside the brackets 100000 times too, though < 1297197724 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which might annoy the interp < 1297197736 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297197752 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :limiting the square bracket nesting depth sounds like it may be a good way to avoid non-BF-like abuses < 1297197754 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perhaps to 16 or so < 1297197772 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_train2: 23.3 < 1297197772 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Sgeo_nonstop_attack: 2.3 < 1297197773 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_shortsword: 34.5 < 1297197796 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: not sure... apparently it was top of the hill with 100% wins on 22 May 2009 though :-) < 1297197809 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Did my program at least do what I intended it to do, even if it was a bad idea? < 1297197834 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: looks like a suicide to me < 1297197842 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: I doubt it, the [>+] looks very dubious < 1297197844 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: At least I pass Mycology! < 1297197850 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is regretting this code overhaul < 1297197854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you basically have to hit a -1 valued decoy to avoid suiciding < 1297197858 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: What, did you do concurrency? < 1297197858 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :^ < 1297197859 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ooh < 1297197865 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: No. < 1297197866 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :DIDN'T THINK SO < 1297197869 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust glacially_slow_rush (>->+)*4-[[+>(+)*128..>(-)*128..-]+] < 1297197877 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I tried to move everything over to data-accessor and it's turning into a great big gob of mud. < 1297197882 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What I wanted was to keep going and assume everything's a decoy < 1297197884 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1297197886 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Solution: DON'T CLEAN UP UNTIL IT PASSES MYCOLOGY ENTIRELY < 1297197892 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: you have a backup from before, though, right? < 1297197896 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: thankfully, yes. < 1297197910 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What about version control < 1297197924 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: What, do you have a scapegoat implementation? < 1297197934 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What? < 1297197936 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1297197940 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No? Then I'm not interested. < 1297197945 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: you know you can use other VCSes until sg is finished, right? < 1297197953 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: But they're all irritating. < 1297197958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297197960 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :You... won't use Version Control unless it's God's own version control? (Where you're God, apparently) < 1297197966 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So is t totally easy? < 1297197969 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: *ais523's God < 1297197973 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: hey, /I/ invented sg, elliott just thought it was a good idea < 1297197978 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oh, sorry < 1297197978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I don't consider myself God as a result < 1297197986 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not "totally" the way stuff like + is < 1297197992 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(elliott does though) < 1297197999 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(I'd've said v but you managed to get that wrong) < 1297198004 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :And I'm still mad that your data dir isn't .(unicode goat) < 1297198005 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[[Creating additional IP's is done with the t "Split" instruction, available in Concurrent Funge-98 only. It causes the current IP to be duplicated, and this duplicate is added to the IP list such that it is executed for the first time before the parent IP is next executed.]] < 1297198008 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: :-D < 1297198025 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[[When a child IP is borne unto Funge-Space thus, its location, storage offset, and stack are all copied verbatim from the parent IP's. The child IP's delta is reversed (a la r) from its parent's, though.]] < 1297198031 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It actually advances when created, right? < 1297198035 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: err, no < 1297198040 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although everyone interprets it as yes < 1297198059 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is actually possible to use non-advancing t without a forkbomb loop, though, although difficult < 1297198062 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust why_is_this_broken http://pastebin.com/raw.php?i=nq4khGar < 1297198067 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust draw >+[]<[+] < 1297198071 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust farmhand (+-)*25000(-+)*25000 < 1297198087 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm asking for the common interpretation. < 1297198092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: wow, that's weird; also, [>>]? < 1297198093 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh nose < 1297198103 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: it's commonly interpreted as advancing, even though the spec doesn't say that < 1297198140 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Hmm, is having a "current IP" state sane, or would you pass the IP around everywhere? < 1297198156 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: the IP list should be a queue < 1297198161 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the current IP would be the head of the queue < 1297198162 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :why is report empty? < 1297198171 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: because it's currently running programs < 1297198177 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: err, I don't see why I should mutate the IP list all the time < 1297198178 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it only generates when the running programs have finished < 1297198183 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_glacially_slow_rush: 3.9 < 1297198183 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_draw: 4.2 < 1297198194 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_why_is_this_broken: 0.4 < 1297198195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: semantics, I suppose < 1297198198 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_farmhand: 9.1 < 1297198201 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >+>->>>>>>>((-)*384(+)*384)*21 < 1297198208 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the report generator runs programs...it could wait til it has a new report to clear the old report, couldn't it? < 1297198213 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: for instance < 1297198222 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it suppose to have 4 cells, zero / count / watch / zero. If decrements count and watches watch and attack when either reaches zero. < 1297198224 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :1 cell containing a unique ID for the current IP (ip) < 1297198225 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Only significant for Concurrent Funge. This ID differentiates this IP from all others currently in the IP list. < 1297198229 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that would always be 0, if i did it that way < 1297198240 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: which would make it useless < 1297198250 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: dumb idea though :-) < 1297198255 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 1.8 < 1297198260 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297198278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: it has merit, but probably not implemented that way < 1297198283 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >+>->>>>>>>((-)*384)*21 < 1297198289 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oh crap < 1297198292 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297198293 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I forgot > < 1297198296 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :no wonder < 1297198300 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Please don't use list indices: even though it's not specced as such, everybody expects that old IDs don't change when you start a new thread with t :-P < 1297198303 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: reimplementing :-) < 1297198306 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >+>->>>>>>>(>(-)*384(+)*384)*21 < 1297198317 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :also hey, distributed processing guise < 1297198322 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I'll donate cycles < 1297198326 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 4.3 < 1297198326 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 4.3 < 1297198403 0 :elliott_!~elliott@91.105.83.164 JOIN :#esoteric < 1297198410 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : elliott: Please don't use list indices: even though it's not specced as such, everybody expects that old IDs don't change when you start a new thread with t :-P < 1297198415 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant: Right < 1297198417 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : So ais523's idea won't work. < 1297198419 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant: I'll probably just use list indices and do (length list - index). < 1297198432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust I_thought_the_scoreboard_had_more_programs_earlier >>>>>>>>(>[>[-]])*21 < 1297198442 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_I_thought_the_scoreboard_had_more_programs_earlier: 7.9 < 1297198443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: would a thread be removed from the list when it executed @? < 1297198451 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I don't see how that'll work < 1297198472 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: And ais523's idea works fine if you store the ID in the IP, which is kind of what I hinted at < 1297198475 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >+>->>>>>>>(>(-)*384)*21 < 1297198479 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, fine. < 1297198484 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle Queue < 1297198485 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :module Data.Graph.Inductive.Internal.Queue < 1297198485 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Internal.Queue data Queue a < 1297198485 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Internal.Queue queueEmpty :: Queue a -> Bool < 1297198488 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297198494 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 1.4 < 1297198496 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :I'LL USE A LIST < 1297198499 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Zippers < 1297198502 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :worser lol < 1297198510 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test < < 1297198515 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Wouldn't a list work? Well, I guess I'd need to append every tick, which would be slow. < 1297198518 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :should just be syntax for kill < 1297198519 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Seq is nice for queues < 1297198530 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm still vaguely scared of zippers though, although I know they're the derivatives of types. < 1297198534 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ais523_I_thought_the_scoreboard_had_more_programs_earlier.bfjoust vs nescience_shade.bfjoust: ><<<<<<<<<<<<<<<<<<<> ><<<>>>>>>>>>>>XX<<<> ><<<>>>>>>>>>>>XX<<<> ><<<<<<<<<<<<<<<<<<<> < 1297198534 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It'd work, a zipper just seems natural for something you move through < 1297198540 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's nicely polarity-dependent < 1297198542 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: seq from where? < 1297198547 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 0.0 < 1297198552 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Data.Sequence < 1297198553 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle Seq < 1297198553 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Sequence data Seq a < 1297198553 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude seq :: a -> b -> b < 1297198553 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Parallel.Strategies seqArr :: Ix b => Strategy a -> Strategy (Array b a) < 1297198560 0 :elliott!unknown@unknown.invalid QUIT :Ping timeout: 250 seconds < 1297198579 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: scoreboard's at 45? < 1297198593 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hmm (>[>>>>>>>>(-)*128])*22 < 1297198626 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: that's... an 8-cell tripwire < 1297198634 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_hmm: 4.0 < 1297198656 0 :sebbu2!unknown@unknown.invalid NICK :sebbu < 1297198682 0 :cheater00!unknown@unknown.invalid PRIVMSG #esoteric :http://www.asciiartfarts.com/20110115.html < 1297198711 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i was hoping it would beat wiggle3, but i must have missed something that one does < 1297198738 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Gah, Google is useless for grepping #esoteric logs < 1297198741 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION angers < 1297198750 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :hg clone ... < 1297198755 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :grep 'foo' * < 1297198775 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wget works too :P < 1297198789 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, site:codu.org works < 1297198796 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Instead of tunes.org < 1297198798 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297198798 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is lazy < 1297198805 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :JUST DOWNLOAD THE REPOSITORY < 1297198833 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What's a list zipper again? < 1297198838 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :a * [a] * [a]? < 1297198867 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, typically ([a],a,[a]) < 1297198936 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: yeah robots.txt has a Disallow: /~nef/logs/ < 1297198941 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, so I need "further :: ([a],a,[a]) -> ([a],a,[a])". < 1297198944 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :It needs to be cyclic, right? < 1297198969 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That's bizarre, especially considering I got some #haskell logs < 1297198981 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: If you create it using cycle you just need [a], don't you < 1297198983 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.google.com/search?rlz=1C1TSND_enUS401US401&sourceid=chrome&ie=UTF-8&q=Atomo+site:tunes.org < 1297198987 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah there are some occasional instances... < 1297198990 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Well, bbl < 1297198991 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Don't I need to know the current number of IPs for something? < 1297198999 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Can't you store that separately? :-P < 1297199000 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slightly_less_stupid_defender_clearer [>[-.]+] < 1297199007 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: :/ < 1297199012 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_slightly_less_stupid_defender_clearer: 26.8 < 1297199012 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That seems a bit ugly. < 1297199060 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: What was that about Seq? :-P < 1297199132 0 :myndzi\!unknown@unknown.invalid NICK :myndzi < 1297199142 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :right so how do i get this version control stuff on windows < 1297199147 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Seq is a slightly restricted finger tree structure, constant whatchamacallit time appending at both ends < 1297199150 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: Step one, install Linux. < 1297199152 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Sorry. < 1297199155 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :I'm such a troll. < 1297199158 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :,,|,_ < 1297199165 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297199169 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Step two, http://mercurial.selenic.com/ < 1297199171 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i know it works because it's on my oldass laptop < 1297199171 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Step three, http://mercurial.selenic.com/ < 1297199173 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Step four, http://mercurial.selenic.com/ < 1297199175 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Step five, http://mercurial.selenic.com/ < 1297199184 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(it doesn't support FingerTree's general Monoid indexing < 1297199193 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hm can i do a cyclic queue with it :-P < 1297199205 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :the next question is going to be, "how do i download everything" < 1297199220 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: um a cyclic queue is just appending after you pop off the beginning... < 1297199225 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so sure < 1297199227 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust broken http://pastebin.com/raw.php?i=XVZqenNB < 1297199229 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: hg clone someurliforgot-askgregor < 1297199229 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and/or browse it < 1297199231 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: well yeah < 1297199234 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :mk < 1297199235 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_broken: 2.3 < 1297199270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: look at the line numbered 37 at the bottom on the scoreboard < 1297199276 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has "nothing changed" in the middle of it < 1297199318 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :oh hey it looks like i already had it < 1297199321 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i thought i only did it on my laptop < 1297199323 0 :Sgeo!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297199328 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust broken http://pastebin.com/raw.php?i=vkwD6XRB < 1297199338 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_broken: 2.3 < 1297199355 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust keke2 ->>>>>>>>>(>[(-.+(-.)*256(+.)*256>)*20])*20 < 1297199363 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_keke2: 29.5 < 1297199381 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust allornothing >>(+)*19>(-)*19>>>>>>>>>>>(>(-)*127-.-.)*21 < 1297199388 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hm i don't actually see a simple way to pop off a Seq < 1297199389 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oh wiat < 1297199390 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_allornothing: 12.5 < 1297199391 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :*wait < 1297199393 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :do you use viewl/viewr? < 1297199395 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: is that a deliberate minlength overshoot? < 1297199398 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: yep < 1297199407 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ais523: the second? yeah < 1297199411 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: er, but how do you turn the view back < 1297199419 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :you don't need to win the smallest ones to win, it was supposed to be faster this way < 1297199430 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297199434 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that used to be a valid strategy < 1297199440 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nowadays, it mostly seems to hurt rather than help < 1297199442 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i'm just seeing how some old ones perform < 1297199445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297199449 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :also putting stuff on the hill < 1297199452 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :now how do i get at the archives < 1297199458 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :what's the hg url < 1297199464 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and how do i like, search for stuff lol < 1297199470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's fun seeing my defend programs rise back through the ranking, anyway < 1297199473 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: um when you check it out it just becomes a directory < 1297199477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, VCs aren't designed to be particularly searchable < 1297199482 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :you can specify a certain revision if you want < 1297199485 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :hg log might come in handy < 1297199485 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*VCSes < 1297199493 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: the url is just the directory with all the warriors in < 1297199499 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :in_egobot < 1297199508 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: <| and |> < 1297199517 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust broken http://pastebin.com/raw.php?i=Up0gHB7U < 1297199527 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_broken: 2.2 < 1297199527 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hmm < 1297199533 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric ::-( < 1297199537 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust death_to_no_ops (>)*8(>(-.)*256)*21 < 1297199544 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i think i'm getting headache-clouded again >_< < 1297199549 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :hmmm < 1297199553 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :oshi, i just deltreed all the old stuff < 1297199556 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :but i can get it again i guess < 1297199557 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: you probably don't want to turn back the _same_ view... < 1297199582 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust broken http://pastebin.com/raw.php?i=CxAYXwkA < 1297199644 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: maybe figuring out how to do this as a zipper would be less confusing ;D < 1297199651 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :why is the command called 'hg' if the software is called mercurial anyway < 1297199658 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :chemical symbol for mercury < 1297199659 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: lessee you could do something like rotate s = case viewl s of a :< r -> r |> a < 1297199668 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1297199672 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i feel like i lost nerd points there < 1297199672 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297199676 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust flyingleap >(+)*40>->+(>[(>)*6(+)*3[-]>(-)*3[+]>[(-)*128[-]>+])*20 < 1297199684 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: rotate s | a :< r <- viewl s -> r |> a < 1297199685 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :pops off left, appends to right < 1297199687 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: CONFUSION SET TO MAXIMUM < 1297199704 0 :iconmaster!~rooms@dsl-72-18-49-91.bbr0.brdtny.empacc.net JOIN :#esoteric < 1297199706 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: shouldn't it pop off right, append to left, i generally think of movement as going left to right :D < 1297199744 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: well you'd be running the leftmost IP next wouldn't you? so you'd pop that off. < 1297199759 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sicilian_defence http://pastebin.com/raw.php?i=2eubcLyw < 1297199771 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: surely i'd run the ip just to the right < 1297199780 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :and then at the end go back to the leftmost ip < 1297199784 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :[a,b,c,d] -> a b c d a b c d ... < 1297199802 0 :iconmaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has came up with around 5,000 commands for Onecode! Yay repition. < 1297199806 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: why do you use +. < 1297199808 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: um the point is after you run a, the new list will be [b, c, d, a] < 1297199818 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: right < 1297199821 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :and? < 1297199834 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :to do that you pop a off the left and append it to the right. < 1297199834 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: ++ wouldn't leave the flag at 0 for two cycles < 1297199841 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it has to be two cycles? < 1297199849 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i totally forgot that < 1297199854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297199857 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :or else it changed and i didn't know < 1297199857 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297199864 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: where, in the first line or the others? < 1297199869 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :the others < 1297199874 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ais answered my question though < 1297199878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: how does that differ from chainmail? use of the flag rather than a separate cell for locking? < 1297199880 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hm right < 1297199897 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but, otoh, I rarely want to pop < 1297199904 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: usually I'd just want to look at the current one, and then at the end rotate it < 1297199941 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes, that's all. Just checking I haven't broken something (I'm still trying to limit the time it waits) < 1297199978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: it loses to NOPs and to defence programs < 1297199980 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it seems broken < 1297200020 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_death_to_no_ops: 16.9 < 1297200020 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_broken: 2.1 < 1297200031 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: so what's "head" on a seq? < 1297200032 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_sicilian_defence: 0.0 < 1297200032 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_flyingleap: 1.1 < 1297200049 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :headS s | a Seq.:< _ <- Seq.viewl s = a? < 1297200078 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: the a in a :< r ? < 1297200087 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: so (headS s | a Seq.:< _ <- Seq.viewl s = a) < 1297200109 0 :iconmaster!unknown@unknown.invalid QUIT :Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi < 1297200128 0 :iconmaster!~rooms@dsl-72-18-49-91.bbr0.brdtny.empacc.net JOIN :#esoteric < 1297200131 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297200172 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :aw the scoreboard got cut off? < 1297200195 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: mind you i don't know whether a zipper (i.e. two lists) would be less efficient in practice. it does have the need to reverse everything each time you get to the end... < 1297200209 0 :iconmaster!unknown@unknown.invalid QUIT :Client Quit < 1297200228 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP :: (IP -> IP) -> Shiro () < 1297200229 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP f = modify $ \st -> < 1297200229 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : case Seq.viewl (ips st) of < 1297200229 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : ip Seq.:< ips -> st{ ips = f ip Seq.|> ips } < 1297200229 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :"yikes" < 1297200229 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but fingertrees are probably pretty heavyweight < 1297200236 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :WHY IS THE REPORT TAKING SO LONG TO FINISH WRITING < 1297200238 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :they are? < 1297200261 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :"the Yi text editor specializes finger trees to finger strings for efficient storage of buffer text" < 1297200264 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: can't be that heavy-weight :-D < 1297200274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: myndzi's spamming test programs in PM < 1297200285 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: well heavier than lists < 1297200291 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sicilian_defence http://pastebin.com/raw.php?i=HHuDwWmq < 1297200293 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :data FingerTree a < 1297200294 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : = Empty < 1297200294 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : | Single a < 1297200294 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : | Deep {-# UNPACK #-} !Int !(Digit a) (FingerTree (Node a)) !(Digit a) < 1297200299 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: doesn't seem excessively heavy at least < 1297200299 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_sicilian_defence: 0.0 < 1297200307 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i should just get the local EXE or something < 1297200308 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i want to know if flyingleap beat wiggle3 ever. < 1297200314 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :viewl :: Seq a -> ViewL a < 1297200314 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :viewl (Seq xs) = case viewLTree xs of < 1297200314 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : Nothing2 -> EmptyL < 1297200314 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : Just2 (Elem x) xs' -> x :< Seq xs' < 1297200329 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :(|>) :: Seq a -> a -> Seq a < 1297200329 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Seq xs |> x = Seq (xs `snocTree` Elem x) < 1297200333 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: viewl and (|>) look simple enough < 1297200358 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Nobody's commented on how awesome my new concise report format is :( < 1297200366 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I noticed, it's awesome < 1297200376 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: sicilian defence seems to be suiciding, but I can't see why < 1297200391 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :link? < 1297200410 0 :myndzi!unknown@unknown.invalid NICK :myndzi\ < 1297200433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/in_egobot/report.txt < 1297200444 0 :myndzi\!unknown@unknown.invalid PRIVMSG #esoteric :ah sorry i may have overwritten that < 1297200456 0 :myndzi\!unknown@unknown.invalid PRIVMSG #esoteric :i thought i already nuke this one off but had to retry < 1297200458 0 :myndzi\!unknown@unknown.invalid NICK :myndzi < 1297200549 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP :: (IP -> IP) -> Shiro () < 1297200549 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP f = modifyIPs $ \is -> < 1297200549 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : case Seq.viewl is of < 1297200549 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : ip Seq.:< is' -> is' Seq.|> f ip < 1297200555 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: is that correct? it's suspiciously close to your "rotate" < 1297200594 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: well you'd always want to rotate after you've finished with an IP < 1297200616 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: modifyCurrentIP can happen without the IP's tick finishing... < 1297200630 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: is it impossible to just change the head of this queue? < 1297200632 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :without rotating? < 1297200643 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: of course not, use <| instead < 1297200656 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: what do you mean? < 1297200676 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ip Seq.:< is' -> f ip Seq.<| is' < 1297200715 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: how slow's that :P < 1297200732 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: should be about the same as rotating? < 1297200746 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: okay < 1297200759 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ideally i would process the ip and rotate simultaneously right? < 1297200765 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297200771 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust antiwiggle3 (.)*48(>[>>>>>>>>(-)*128])*22 < 1297200775 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: that's not really possible with my code < 1297200793 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_antiwiggle3: 13.6 < 1297200812 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: well there's nothing preventing you from popping the ip, doing whatever it needs to do, and then appending afterwards. < 1297200829 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: who says i pop :) < 1297200836 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wow...it didn't work :P < 1297200872 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: well since the view work such that if you even _look_ at the head, you also get the tail, it seems inefficient not to remember the tail... < 1297200876 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: TELL ME WHY IT DIDN'T WORKED < 1297200878 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*works < 1297200882 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Darn, my mind-bogglingly slow rushes have been pushed back down by legit programs :P < 1297200889 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yeah, but my code is not structured like this at all < 1297200929 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sicilian_defence http://pastebin.com/raw.php?i=jKHD8KvG < 1297200951 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does one space take a tick in stringmode? < 1297200955 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ok i am reading the help but having trouble.. how do i just, like, search for files that have existed with a matching file name through all revisions? < 1297200963 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: wiggle3 leaves a trail behind as it moves < 1297200966 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Yes < 1297200980 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: >_< < 1297200982 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you need to ignore cells with value + or - 1 < 1297200984 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Wrong answer, man :P < 1297201000 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: This kind of twiddling is the main reason why t is not so simple :-) < 1297201034 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust antiwiggle3 (.)*48(>[+[--[>>>>>>>>(-)*128]]])*21 < 1297201039 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: hm you _could_ store the queue in left view form, then you would always have quick access to the ip and could change it in the same form. then rotate would be a separate thing. < 1297201055 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: wouldn't that essentially be the zipper solutio < 1297201056 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :n < 1297201064 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no < 1297201087 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: oh, i missed that stupid + at the end of the decoy search :/ < 1297201105 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: OK, I'll have to make toNextIns behave differently with string mode. < 1297201111 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: rotate (ip :< is') = viewl (is' |> ip) < 1297201112 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, egobot seems to have run one program then stopped < 1297201113 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is weird < 1297201120 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: A space counts as an instruction, *unless* the previous instruction (delta-wise) is also a space. < 1297201125 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust suicide < < 1297201140 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :again, one program then stopped < 1297201142 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :something seems broken < 1297201146 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust antiwiggle3 (.)*48(>[-[>>>>>>>>(-)*128]])*22 < 1297201192 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I think we broke EgoBot < 1297201199 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :D: < 1297201200 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :IMPOSSIBLE < 1297201215 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: and then just modifyCurrentIP f = modifyIPs $ \(ip :< is') -> f ip :< is' < 1297201220 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :top reports that egojoust is running < 1297201235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :breakdown.txt doesn't < 1297201237 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep ego < 1297201243 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it normally updates quite quickly while egojoust is running < 1297201245 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That wasn't smart :P < 1297201258 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sandboxed, surely? < 1297201264 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ps isn't. < 1297201268 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: well i guess it's a _tiny_ bit of zipping, just one element < 1297201270 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 7247 0.0 0.0 3776 164 ? TN Feb07 0:00 ../report ../egojoust ../cache Deewiant_monorail.bfjoust Lymia_evo_1.bfjoust Patashu_rushpolarity.bfjoust Vorpal_shudder.bfjoust ais523_defend7.bfjoust ais523_large_decoy_attack.bfjoust ais523_stupid_defender_clearer.bfjoust ais523_tripstridewire.bfjoust < 1297201282 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: do I even need finger trees at that point? :P < 1297201287 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Feb07? < 1297201298 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bf ++++++++>++++++<[>[>+>+<<-]>>[<<+>>-]<-]. < 1297201330 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yes, the system seems overloaded, so let's throw more shit at it. < 1297201347 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm wondering if it's stuck in a loop or a quadratic algo or something < 1297201356 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :well, just checking whether it's ego or just the bf joust interp < 1297201364 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ACTION didn't break it! < 1297201410 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i just want to search for old programs :( < 1297201414 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :why is it so hard < 1297201421 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :fu hg < 1297201423 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: um the finger trees are to get the efficient appending of an element at the end < 1297201447 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I think I might just use a zipper until Deewiant adds tenbillionthreads.b98 to Fungicide < 1297201450 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Or is that what fork.b98 is? < 1297201451 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: running a suicide program like mine or yours causes it to go almost instantly, and then get stuck < 1297201456 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that's what it is :-) < 1297201457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep ego < 1297201458 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 8915 0.0 0.0 9500 184 ? S Jan20 0:00 /bin/bash ./egobot \ 5000 15704 0.0 0.0 45960 980 ? S 20:10 0:00 su - egobot \ 5000 20832 0.0 0.0 33884 556 ? S Feb06 0:01 socat TCP4:irc.freenode.net:6667 EXEC:./multibot EgoBot egobot egobot.log \ 5000 20834 0.0 0.0 < 1297201466 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How many threads? :P < 1297201478 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think 64K at most < 1297201481 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Can't remember < 1297201485 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :See the web page :-P < 1297201512 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunately I can't check what's going on right now as I've gotta go >_> < 1297201542 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: *Main> let foo = replicate 64 0 < 1297201543 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :*Main> foldr seq () (reverse foo) < 1297201543 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :() < 1297201544 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Ran instantly. < 1297201545 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Err. < 1297201550 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :*Main> let foo = replicate 64000 0 < 1297201551 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :That is. < 1297201553 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :(Copied the wrong line) < 1297201563 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: tl;dr I'm sure zippers will be fine :P < 1297201612 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: O KAY. if you want a zipper, rotate ([ip], r) = (reverse r, [ip]); rotate ((ip:l), r) = (l, ip:r) . i think. < 1297201616 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust suicide < < 1297201623 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep ego < 1297201624 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 8915 0.0 0.0 9500 184 ? S Jan20 0:00 /bin/bash ./egobot \ 5000 15704 0.0 0.0 45960 980 ? S 20:10 0:00 su - egobot \ 5000 20832 0.0 0.0 33884 556 ? S Feb06 0:01 socat TCP4:irc.freenode.net:6667 EXEC:./multibot EgoBot egobot egobot.log \ 5000 20834 0.0 0.0 14468 332 ? < 1297201628 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: well yes :P < 1297201635 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: erm < 1297201640 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: isn't it [a],a,[a] < 1297201642 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :not [a],a < 1297201680 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: you don't need to store the ip separately from both lists but ok < 1297201699 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: true. < 1297201798 0 :pikhq_!~pikhq@71-219-212-26.clsp.qwest.net JOIN :#esoteric < 1297201800 0 :pikhq!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297201811 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: in fact it becomes more awkward if you split it: rotate (l, ip, []) | (ip':r') <- reverse l = ([ip], ip', r'); rotate (l, ip, ip':r) = (ip:l, ip', r) < 1297201817 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders what started oerjan saying "O KAY" < 1297201819 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ew < 1297201843 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :because you need to extract the head at once < 1297201889 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :maybe ([], ip', r'++[ip]) is better for the first one < 1297201952 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: give hackego root permissions and we'll gix it while you're gone < 1297201956 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :*fix < 1297201976 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess my pair version above has the intuitively wrong order < 1297201993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep ego < 1297201996 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 1148 0.5 0.1 8908 1244 ? S 22:14 0:00 /bin/bash PRIVMSG/tr_60.cmd PRIVMSG #esoteric `run ps aux | grep ego \ 5000 1173 0.0 0.0 8908 536 ? S 22:14 0:00 /bin/bash PRIVMSG/tr_60.cmd PRIVMSG #esoteric `run ps aux | grep ego \ 5000 1176 0.0 0.0 8912 508 ? S 22:14 < 1297202008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :/something/ is happening, at least < 1297202016 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :those numbres are different < 1297202039 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep ego < 1297202040 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 1496 0.0 0.1 8908 1244 ? S 22:15 0:00 /bin/bash PRIVMSG/tr_60.cmd PRIVMSG #esoteric `run ps aux | grep ego \ 5000 1576 0.0 0.0 8908 536 ? S 22:15 0:00 /bin/bash PRIVMSG/tr_60.cmd PRIVMSG #esoteric `run ps aux | grep ego \ 5000 1580 0.0 0.0 8912 508 ? S 22:15 < 1297202045 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dragon_variation http://pastebin.com/raw.php?i=GjATANq4 < 1297202051 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: BTW, Mycology takes about 8-9 seconds for me right now, which is mostly spent in reading, i and o testing, and bounds shrinking. < 1297202061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, the grep is finding itself < 1297202069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep e\go < 1297202070 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 1653 0.5 0.0 3640 388 ? SN 22:15 0:00 ../../../slox/slox 25 ../report ../egojoust ../cache Deewiant_farmhand.bfjoust Deewiant_maglev.bfjoust Deewiant_monorail.bfjoust Deewiant_sloth.bfjoust Deewiant_steamroller.bfjoust Deewiant_train2.bfjoust Gregor_mind_bogglingly_slow_rush.bfjoust < 1297202071 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :A pretty respectable speed if you ask me considering I've optimised it exactly twice :P < 1297202076 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Now make it 1000x faster and it'll be competitive < 1297202087 0 :nescience!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297202098 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so it is running a report < 1297202101 0 :poiuy_qwert!~poiuy_qwe@CPE001f5b00390f-CM001225d878d0.cpe.net.cable.rogers.com JOIN :#esoteric < 1297202109 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :we just don't know which report :/ < 1297202113 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Eh, if it took 1/100th of the time, it'd be just about the same as cfunge :P < 1297202118 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :What's the diagnosis? It ego being slow or broken? < 1297202126 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it's caught in an infinite loop < 1297202128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep e\go < 1297202128 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: You have to compare against cfunge without fingerprints, not with < 1297202129 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 1653 0.5 0.0 3640 388 ? SN 22:15 0:00 ../../../slox/slox 25 ../report ../egojoust ../cache Deewiant_farmhand.bfjoust Deewiant_maglev.bfjoust Deewiant_monorail.bfjoust Deewiant_sloth.bfjoust Deewiant_steamroller.bfjoust Deewiant_train2.bfjoust Gregor_mind_bogglingly_slow_rush.bfjoust < 1297202138 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i concur with ais523 < 1297202140 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I was. OK, 0.08 vs 0.03, but come on. < 1297202146 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Really I don't expect to go below 1 to 2 seconds on Mycology. < 1297202159 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep e\go | grep -v report < 1297202160 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 1684 14.1 0.7 11984 8216 ? TN 22:15 0:15 ../egojoust Deewiant_farmhand.bfjoust impomatic_dragon_variation.bfjoust \ 1740149 2616 0.0 0.0 4324 904 ? SN 22:17 0:00 grep /bin/grep ego \ 5000 8915 0.0 0.0 9500 184 ? S Jan20 0:00 /bin/bash ./egobot \ 5000 15704 < 1297202160 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm pretty sure my loop stops just short of infinite. Not guilty! < 1297202162 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Because Mycology does nothing intensive, frankly. And reading fungespace takes time unless you cheat. < 1297202166 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: (with a fixed area, say.) < 1297202171 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant: Really I don't expect to go below 1 to 2 seconds on Mycology. <-- aha, you don't aim as high as me then < 1297202175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: it's dragon_variation that seems to be the issue < 1297202177 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I aim higer. < 1297202179 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :*higher. < 1297202181 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to beat your ass on Fungicide :P < 1297202184 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :could you replace it with a suicide for the time being < 1297202190 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to see if it helps? < 1297202194 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, well right. But that doesn't represent real world use cases < 1297202195 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :too bad we can't `kill < 1297202195 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: On my machine cfunge is occasionally below 0.01 :-P < 1297202201 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Nor does Mycology. < 1297202203 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: fungot does. < 1297202204 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: basically it fnord and recursively. but i just don't get what call/ cc... :) the drawback of always reminding me of how to bugger the tests to go to the display from the data it works on my machine < 1297202209 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then at least we'll know where the problem is < 1297202210 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :fungot's startup time is nearly irrelevant, you might note. < 1297202210 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: magic johnson? ( random-integer 2)) < 1297202214 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, and cfunge does decently on fungot iirc < 1297202214 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: hi gnomon :) hi bbls! < 1297202223 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, anyway the fungicide stuff is outdated for cfunge afaik < 1297202227 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But I will beat it. Or at least equalise it. < 1297202232 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :I don't care, I'm going to beat you anyway :P < 1297202239 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, sure. why would I care < 1297202247 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh and yeah, will implement your algorithm tomorrow < 1297202249 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Because you'll have to optimise. < 1297202252 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it looks quite interesting < 1297202257 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, what? < 1297202264 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Otherwise I'll have taken your crown! < 1297202264 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I'm not competing with you < 1297202269 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Suuuure < 1297202270 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: oh so you're blaming me! Oh well, I'm used to being in trouble for something... :-) < 1297202280 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Hey ais523, what's the name of the best Funge interpreter ever. < 1297202285 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, no, ccbi2 still beats cfunge due to it's insane stuff with various boxes and such. < 1297202285 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: it may be egobot's fault, choking in something in your program < 1297202286 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :HINT: The answer is Shiro < 1297202288 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: http://pastebin.com/raw.php?i=GjATANq4 <- no infinite loops :-P < 1297202296 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, that is what you have to beat to take the crown. < 1297202301 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, or even beat jitfunge < 1297202301 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so think of killing the program as a way of debugging egobot < 1297202303 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I don't see what's so interesting about my wrapper, anyway < 1297202309 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :It's just the loop, made loopless < 1297202321 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, indeed. But it saves thinking just looking at it :P < 1297202333 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, you are using BSD license right? < 1297202335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: aha, egobot unrolls repetitions with unmatched [ or ] < 1297202336 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: tl;dr Obviously, there is a function that will tell us how many iterations the loop will take. < 1297202338 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :or is it some other one? < 1297202345 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: The loop is just the subtraction of delta from the coordinates. < 1297202347 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is obviously inefficient, but that's what's killing it, almost certainly < 1297202351 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: So this is obviously a minus-multiplication. < 1297202353 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Done. < 1297202355 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, yes indeed that function was the key to thus < 1297202356 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :this* < 1297202369 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :(telling us how many iterations) < 1297202369 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: The function is public domain or whatever, you can't copyright that algo. < 1297202371 0 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1297202373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would be nice if you'd unbreak it... < 1297202377 0 :kar8nga!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297202383 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :ais523: egobot unrolls % < 1297202388 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :impomaticccccccccccccccccccccccccccc < 1297202390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: yep, but also ([)* < 1297202394 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what did he do? < 1297202398 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : ais523: http://pastebin.com/raw.php?i=GjATANq4 <- no infinite loops :-P < 1297202401 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: View source on that page. < 1297202404 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: It's HTML. < 1297202405 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: submitted a program that's perfectly fine, but that egojoust chokes on < 1297202406 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: oh :-( It really is my fault! < 1297202410 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: Your program is starting with < < 1297202413 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :because of ", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ < 1297202540 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sicilian_defence < < 1297202553 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I know it does because I often use it in that way, to copy a file there and then download it elsewhere using the command-line tools. < 1297202553 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aha, it's running now < 1297202556 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: modifyIPs :: (([IP],[IP]) -> ([IP],[IP])) -> Shiro () < 1297202558 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: impressive type < 1297202561 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :`run echo a > b; sleep 2; echo c > b; < 1297202561 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :`run echo d > b < 1297202562 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :No output. < 1297202565 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :lets see what that does < 1297202570 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :No output. < 1297202574 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :`cat b < 1297202578 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :d < 1297202587 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :`rm b < 1297202587 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh so it doesn't run them side by side < 1297202588 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :No output. < 1297202599 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :quintopia, since it uses hg to track the file system < 1297202605 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I wanted to see if that gave a collision < 1297202610 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: rotate :: ([a],a) -> ([a],a) < 1297202610 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :rotate ([ip],r) = (reverse r, [ip]) < 1297202611 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : Occurs check: cannot construct the infinite type: a = [a] < 1297202613 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : When generalising the type(s) for `rotate' < 1297202619 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: ais523_antiwiggle3.bfjoust vs jix_wiggle3.bfjoust: <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< < 1297202622 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :`quote < 1297202622 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :`quote < 1297202622 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :`quote < 1297202628 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :103) So, I'm inside a bottle which is being carried by a robot. < 1297202629 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :57) ??? Are the cocks actually just implanted dildos? Or are there monster dildos and cocks? Or are both the dildos and cocks monster? < 1297202629 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :290) gah, why does lose keep winning? < 1297202639 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: and quintopia_antiwiggle3? < 1297202647 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, why were you saying that. < 1297202654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hasn't processed yet < 1297202657 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I am trying to think of a context and cannot. < 1297202658 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297202676 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_antiwiggle3: 14.4 < 1297202676 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_sicilian_defence: 0.0 < 1297202676 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_sicilian_defence: 0.0 < 1297202676 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_suicide: 0.0 < 1297202676 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/projects/hackbot/fshg/index.cgi/shortlog/07a7084dc9fc <-- heh the a, b one is missing < 1297202677 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_suicide: 0.0 < 1297202677 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dragon_variation: 0.0 < 1297202677 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i don't really think the handling of -1 is necessary < 1297202677 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :google's logo today scares me < 1297202678 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_antiwiggle3: 18.0 < 1297202678 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dragon_variation: 0.0 < 1297202680 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :(requires js) < 1297202684 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :HELLO EGOBOT < 1297202699 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : *cough* *splutter* *hack* < 1297202702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: jix_wiggle3.bfjoust vs quintopia_antiwiggle3.bfjoust: >>>>>>>>>>>>>>>>>>>>> >>><<<<<<<<<<<<<<<<<> >>><<<<<<<<<<<<<<<<<> >>>>>>>>>>>>>>>>>>>>> quintopia_antiwiggle3.bfjoust wins < 1297202711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not a perfect victory like mine is, but still a victory < 1297202719 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1297202728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because you don't allow for polarity reversal on the decoy < 1297202735 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ohhhhhh < 1297202744 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mine's a modification of yours that does < 1297202749 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :right, that's how it could be made -1 < 1297202756 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan your code is WRONGGG < 1297202761 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297202762 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :no < 1297202763 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :my type is wrong < 1297202764 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297202795 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: An IP advances at the end of its tick, but only moves to the next instruction at the start of its next tick, right? < 1297202795 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so now the only problem is the scoreboard getting cut off on line 33 < 1297202804 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : I am trying to think of a context and cannot. <-- you could grep logs. You might not want to. < 1297202808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust suicide < < 1297202819 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Blargh... I forget < 1297202821 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_suicide: 0.0 < 1297202827 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : Gregor, why were you saying that. I am trying to think of a context and cannot. < 1297202835 0 :nescience!~myndzi@m610e36d0.tmodns.net JOIN :#esoteric < 1297202846 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :The context is Gracenotes releasing an illegal copy of a film about monster cock dildos. < 1297202846 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :my phone hates irc I guess < 1297202849 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : so now the only problem is the scoreboard getting cut off on line 33 <-- why did that happen < 1297202854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :we'll have to wait for Gregor to fix that, I suppose < 1297202855 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Or something :-P < 1297202857 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : oerjan: rotate :: ([a],a) -> ([a],a) <-- you mean rotate :: ([a],[a]) -> ([a],[a]) < 1297202858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: my guess is some sort of timeout < 1297202863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on bytes output, perhaps < 1297202864 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: MAYBE I DO < 1297202873 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why are there so many? < 1297202876 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :elliott@elliott-MacBookAir:~/mycology$ ~/Code/shiro/shiro mycology.b98 < 1297202877 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :shiro: Shiro/Monad.hs:81:32-60: Non-exhaustive patterns in lambda < 1297202882 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the hill was expanded < 1297202887 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why < 1297202897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to make it more interesting, when it fills up with decent programs < 1297202898 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297202901 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: your patterns aren't exhausted yet! whip them some more < 1297202920 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust shudder (++-)*1000000 < 1297202946 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hmm (.)*48(>[-[++[>>>>>[>(+)*3[-]+]]]])*22 < 1297202963 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP :: (IP -> IP) -> Shiro () < 1297202964 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP f = modifyIPs $ \(ip:xs, r) -> (f ip : xs, r) < 1297202971 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Somehow, I have ended up with an empty list of IPs. < 1297202974 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it seems to run too slow < 1297202975 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: < 1297202980 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :rotate :: ([a],[a]) -> ([a],[a]) < 1297202981 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :rotate ([ip],r) = (reverse r, [ip]) < 1297202981 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :rotate ((ip:xs), r) = (xs, ip:r) < 1297202983 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: when r is empty, this fails < 1297202986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: it has lots of programs to run against, don't be impatient! < 1297202990 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: consider the case where there's only one IP, ([ip],[]) < 1297202992 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, might have to shrink it to avoid combinatorial explosion < 1297202998 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: rotate ([ip],[]) = ([],[ip]) < 1297203001 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes but I mean this current size of the board is too large < 1297203003 0 :impomatic!unknown@unknown.invalid QUIT :Quit: ChatZilla 0.9.86 [Firefox 3.5.16/20101130074636] < 1297203005 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: meaning that you can't take the current ip any more < 1297203007 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, when it comes to speed < 1297203012 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: or am i doin it rong < 1297203015 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : google's logo today scares me <-- try the handle on the right < 1297203020 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: SCARES < 1297203021 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i don't think it unrolls + and - < 1297203025 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think the issue is that the board never shrinks because it's so large that it crashes before cleaning up the old programs < 1297203027 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :*Vorpal < 1297203047 0 :impomatic!~chatzilla@86.241.112.87.dyn.plus.net JOIN :#esoteric < 1297203049 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that doesn't sound right. < 1297203063 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: it's an error, I think < 1297203091 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :`addquote The context is Gracenotes releasing an illegal copy of a film about monster cock dildos. < 1297203095 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: but it should clean up old programs after the crash regardless, if i read the script right < 1297203095 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :300) The context is Gracenotes releasing an illegal copy of a film about monster cock dildos. < 1297203102 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_hmm: 14.0 < 1297203103 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_shudder: 23.2 < 1297203107 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(what do you mean the quote is without context, it's right in there!) < 1297203108 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: perhaps < 1297203112 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it depends on what causes the crash < 1297203131 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it cleaned up some, at least, and crashed on line 34 this time < 1297203213 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sicilian_defence http://www.lichttuete.com/temp/a1.txt < 1297203224 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :http://www.lichttuete.com/ < 1297203227 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :impomatic turned German overnight. < 1297203242 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : google's logo today scares me <-- try the handle on the right <-- it's cool < 1297203248 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :lol german is such a funny language, maybe it's just because i'm pronouncing that page in a nazi voice < 1297203255 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: i didn't think of that. try rotate ([ip],r) = (reverse r++[ip], []) instead < 1297203256 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :`quote 75 < 1297203261 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :LICHTTÜTEN VERLEIHEN JEDEM *ABEND*!!!! < 1297203272 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but dude, how much time did they spend on it < 1297203274 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so hmm does beat wiggle3 and almost nothing else. needs more decoys ... < 1297203298 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, German is the funniest language ever. < 1297203301 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: UNDEF: the empty string wrapped around the edge of space is empty < 1297203305 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm unique. < 1297203308 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hmm >(+)*23(-)*24(>[-[++[>>>>>[>(+)*3[-]+]]]])*22 < 1297203316 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Actually that's probably a bug isn't it. < 1297203319 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: That's another of those that I think actually should be 1 space < 1297203328 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :75) ehird: every set can be well-ordered. corollary: every set s has the same diagram used from famous program talisman with fnord windows to cascade, someone i would never capitalize " i" < 1297203329 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yeah. I can special-case that, I suppose :-P < 1297203331 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: I.e. it should be GOOD/BAD but I haven't bothered < 1297203335 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :You can say anything in an angry voice and it'll sound like you want to kill someone and beat their children to death with a rusty hammer. < 1297203364 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust attack7 (>)*5(+)*40<(-)*40(>)*4(>[+[+[+[+[-----[-[-[-[-](-)*122[-.]]]]]]]]])*21 < 1297203370 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I can't wait until you make absolute bounds GOOD/BAD, just to make Vorpal cry. < 1297203379 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :*exact bounds < 1297203379 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Absolute bounds? < 1297203381 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_sicilian_defence: 18.7 < 1297203382 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_hmm: 10.6 < 1297203386 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Exact bounds. < 1297203386 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Aren't they already? < 1297203388 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: i.e. shrinking. < 1297203396 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh right, they are, Vorpal just doesn't care :P < 1297203407 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: The # thing, then. < 1297203411 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dragon_variation http://www.lichttuete.com/temp/a2.txt < 1297203412 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: # across left edge hits easternmost cell in file < 1297203412 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: # across left edge hits easternmost cell on line < 1297203414 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :/w/win 2 < 1297203429 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :interesting. the decoys weren't enough, so i do worse because now i don't beat tripwires < 1297203438 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant: The # thing, then. <-- I oppose since I believe the other behaviour is equally correct. < 1297203449 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dragon_variation: 34.7 < 1297203450 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_attack7: 35.0 < 1297203452 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Is not. < 1297203459 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, why < 1297203460 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ais523_attack7.bfjoust vs myndzi_careless.bfjoust: <>>>>>>>>>><<<<<<<<<< <>>>>>>>>>>><<<<<<<<< <>>>>>>>>>>><<<<<<<<< <>>>>>>>>>><<<<<<<<<< Tie < 1297203462 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It's only justifiable with the implementation detail of rectangle bounds. < 1297203464 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: heh, I'm amused at that one < 1297203470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's quite a precarious draw < 1297203471 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: From a Lahey-space point of view, # has only one behaviour, and it's that one. < 1297203473 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defective http://www.lichttuete.com/temp/a3.txt < 1297203478 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :looks like my program favours longer tapes, there < 1297203489 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hmm >(+)*23(-)*24(>[-[++[>>>>>[>(+)*3[[-]]+]]]])*22 < 1297203497 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: UNDEF: the empty string wrapped around the edge of space contains 1 character(s) (hopefully spaces) < 1297203502 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Fix't (it was actually a trivial bug in my code). < 1297203516 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, shouldn't it contain a space? < 1297203535 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yes, it contains one space. < 1297203540 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297203561 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_hmm: 11.2 < 1297203561 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_defective: 31.6 < 1297203563 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust self_aware_brainfuck http://www.lichttuete.com/temp/a4.txt < 1297203577 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, what did fbbi do wrt # and edge < 1297203581 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_self_aware_brainfuck: 27.5 < 1297203609 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lolwtf < 1297203612 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, 48 programs on the hill now < 1297203617 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sieg_heil http://www.lichttuete.com/temp/a5.txt < 1297203629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: sometimes report.txt cuts off around line 33; also, the size of the hill seems to change at random < 1297203648 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_sieg_heil: 22.2 < 1297203665 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: The size is 47 + all programs submitted before it had time to finish, so 48 unless you submit fifty at once :P < 1297203673 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I also noticed that sometimes files are saved and sometimes they are deleted, and sometimes they aren't saved. < 1297203679 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's the way it's always worked, btw, just with a different lowerbound. < 1297203680 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : elliott_, what did fbbi do wrt # and edge < 1297203683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: indeed < 1297203688 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Probably go into an infinite loop. < 1297203692 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, haha :D < 1297203696 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :And then segfault, continually. < 1297203702 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297203722 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I believe it's official that everyone who isn't me hates http://codu.org/tmp/jungle-2011-02-08-1.ogg X-P < 1297203757 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: How do I know? I have not listened to that file yet so I don't know. < 1297203758 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nop . < 1297203762 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, I will check it < 1297203772 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: i need to hear superturing. y u no link. < 1297203779 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, do you like it? < 1297203788 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: that is amazing < 1297203790 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I think it's a nice start :P < 1297203792 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : I believe it's official that everyone who isn't me hates http://codu.org/tmp/jungle-2011-02-08-1.ogg X-P <-- cool < 1297203798 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, awesome start < 1297203807 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: HAVE YOUR MOFO LINK http://codu.org/music/e/superturing/superturing.ogg < 1297203809 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, a bit short yeah < 1297203819 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well it is just a start :P < 1297203826 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust spawn_of_evil http://www.lichttuete.com/temp/a6.txt < 1297203828 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric ::D :D :D < 1297203849 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I reaaaaally need to replace the trombone on that >_> < 1297203871 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, can we wait for the previous ones to finish? < 1297203882 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Vorpal_nop: 7.8 < 1297203883 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_spawn_of_evil: 33.3 < 1297203886 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust in_the_dark_of_night http://www.lichttuete.com/temp/a7.txt < 1297203907 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :technically he did wait < 1297203909 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: were you working on all those while egobot was down? < 1297203914 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :That's it for now... I daren't submit a8 or a9 :-( < 1297203934 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_in_the_dark_of_night: 29.5 < 1297203937 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hmm where do I put a new IP < 1297203939 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, they're all the submissions that I messed up by submitting HTML! < 1297203942 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I want to insert an element in the zipper-queue before the current one < 1297203946 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: cons to the second list? < 1297203949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: aha < 1297203953 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: yeah < 1297203974 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, defend10 is shooting back up the leaderboard < 1297203978 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, that website looks very familiar! XD < 1297203984 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Apart from the two which kill Egobot... (which I'm expecting to do well) < 1297203987 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, that is "http://www.lichttuete.com/" < 1297203994 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Cloned IPs get the same storage offset, right? < 1297204008 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right. < 1297204012 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure, anyway. < 1297204051 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>>>[>(+)*20[[-]]+]]]](+)*9)*22 < 1297204064 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'm slowly translating it to various languages. Started with German because it covers quite a few counties :-) < 1297204065 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, some fingerprints copy their IP specific data on clone. But not all < 1297204070 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 16.9 < 1297204073 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: You're kidding me. < 1297204074 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, just something to considering when doing fingerprints later on < 1297204078 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, no I'm not < 1297204083 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Wonderful! < 1297204096 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>>>[>(+)*5[[-]]+]]]](+)*5)*22 < 1297204097 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Good thing my fingerprint mechanism is SO ELEGANT that I can just make it part of the class. < 1297204104 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ACTION → sleep < 1297204104 0 :Phantom_Hoover!unknown@unknown.invalid PART #esoteric :? < 1297204109 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, yeah better get that right from the start :P < 1297204112 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Going to test concurrent execution with 2 IPs. < 1297204112 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Assuming that instructions without any particular concurrency-related behaviour, such as ^>v<#, take one tick. < 1297204112 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Will continue to produce textual output, so strings must work correctly where concurrency is concerned: "a b" should take 5 ticks, 'a should take 1. < 1297204114 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :[HANG] < 1297204115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: is that your day job? < 1297204117 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 10.7 < 1297204129 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Actually it's pretty extensible. < 1297204142 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>>>[>(+)*20[[-]]+]]]](+)*5)*22 < 1297204144 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Since I plan to generate the instances with Template Haskell I can easily add in new bits to flip. < 1297204155 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, in particular I think HRTI reset it's data. But not completely sure. < 1297204157 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 12.0 < 1297204159 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I do remember some did at least < 1297204167 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What does it mean if concurrent testing hangs? :P < 1297204182 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, how will do you MODE? Will you at all? < 1297204184 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: You keep rerunning the same IP, maybe? One of them goes to a >< < 1297204190 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: What does MODE do? < 1297204193 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>>>[>(+)*20[[-]]+]]]]+)*22 < 1297204194 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes. Only takes a couple of hours per day though so I spend the rest of the day messing with old computers ;-) < 1297204200 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: modifyIPs $ \(xs,ys) -> (xs, newIP:ys) < 1297204209 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :rotate ([ip],r) = (reverse r ++ [ip], []) < 1297204211 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :So it turns into < 1297204214 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :([newIP,ip], []) < 1297204219 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :And then possibly < 1297204222 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, it's feral. It adds mode where stuff behave differently. Like making > < ^ v "strafe" IP instead of turn it < 1297204223 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 4.5 < 1297204225 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :([ip], [newIP]) < 1297204229 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :And so on. < 1297204230 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :So that looks fine. < 1297204238 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I'm pretty sure ccbi implements it < 1297204241 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Lesse if I just broke everything. < 1297204243 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it is catseye btw < 1297204249 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust suicide < < 1297204255 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I plan to have some sort of feral mechanism for overloading core instructions. < 1297204258 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: thought so. r is the set ip's already visited in this cycle. < 1297204263 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_suicide: 0.0 < 1297204266 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: And hooking into the interpreter loop. < 1297204272 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: right. so that's correct. < 1297204275 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>>>[>(+)*20[[-]]+]]]](+)*13>[-[++[>>>>>[>(+)*20[[-]]+]]]](-)*13)*11 < 1297204275 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, and isn't there one fingerprint that turn the stack into a double-ended queue < 1297204277 0 :pikhq_!unknown@unknown.invalid NICK :pikhq < 1297204279 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries printing the current ip < 1297204279 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, yes I think there is < 1297204281 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Seriously? < 1297204284 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, yes < 1297204291 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'll just do that the inefficient way, because fuck that :P < 1297204293 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I don't implement it though. But CCBI does < 1297204293 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 17.3 < 1297204295 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*+of < 1297204296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: it leaves the old report up while the new one generates? < 1297204302 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297204304 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Do you implement MVRS? < 1297204308 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: That was the plan, but it now seems to leave the old report up forever :P < 1297204315 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, you *know* the answer to that one < 1297204317 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Haven't done it < 1297204320 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: "Yes"? < 1297204329 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, oh I thought you said MKRY :P < 1297204331 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It shouldn't be too much trouble though < 1297204340 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Do you/will you implement MKRY? < 1297204344 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :How much can my bfjoust program expand to without crashing Egobot? I want to try something... < 1297204344 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :I can clarify the spec if you would like :D < 1297204345 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No :-P < 1297204350 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Why not < 1297204356 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :It'd take like 5 lines < 1297204358 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's a new level of pointlessness < 1297204374 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: As opposed to writing pages and pages of efficient wrapping code for an obscure esoteric language with almost no users < 1297204376 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And it's really just a troll aimed at Mike :-P < 1297204399 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Hey, I'm the one who defended RC/Funge :P < 1297204411 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: note that ()* with matching parentheses doesn't expand < 1297204424 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think that sort of trolling nowadays is in bad taste < 1297204427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :At least figuring out the AABB stuff was a fun mental exercise < 1297204432 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I agree < 1297204434 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust suicide_again < < 1297204442 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, AABB? < 1297204453 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: did anything change? < 1297204455 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_suicide_again: 0.0 < 1297204466 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Axis-aligned bounding box. < 1297204469 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Doesn't seem so. < 1297204470 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah < 1297204473 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Bleh, borklebork. < 1297204474 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So is figuring out whether "3 to 15" is inclusive or exclusive on each end. < 1297204487 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: it must go to war with the Allied-aligned bounding box! < 1297204489 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: And whether that one instruction pushes eeeeeeeeeeeeeeee or eheheehhhhhehe. < 1297204491 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: No, that's something that can be left to an RNG < 1297204501 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, this is why you write (3,15] or such < 1297204502 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Hah :-D < 1297204505 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :if that is what you mean < 1297204517 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Because MKRY was designed to be clear and unambiguous! < 1297204518 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, "meh" < 1297204532 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust lol_that_script_didnt_parse < < 1297204541 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_lol_that_script_didnt_parse: 0.0 < 1297204550 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I think that sort of trolling nowadays is in bad taste < 1297204552 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test []->>>>>>>>>([-])*21 < 1297204552 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :There we go. < 1297204564 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a10.txt < 1297204584 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :ais523: *shrug* I've never had any problem with Mike at all. :p < 1297204596 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 8.4 < 1297204619 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, yay it no longer blanks the scoreboard when running < 1297204621 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor++ < 1297204627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep e\go | grep -v report < 1297204629 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 10296 0.0 0.1 45960 1440 ? S 22:46 0:00 su - egobot \ 5000 11850 0.0 0.1 9516 1532 ? S 22:57 0:00 /bin/bash PRIVMSG/tr_21.cmd PRIVMSG #esoteric !bfjoust egodeath http://www.lichttuete.com/temp/a10.txt \ 5000 11861 0.0 0.1 9532 1616 ? S 22:57 0:00 /bin/bash < 1297204650 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yay, I forgot to do all the things I need to do < 1297204650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep e\go | grep -v report | grep -v PRIVMSG < 1297204651 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 10296 0.0 0.1 45960 1440 ? S 22:46 0:00 su - egobot \ 5000 11890 21.0 1.2 20176 12612 ? RN 22:57 0:17 ../egojoust Deewiant_maglev.bfjoust impomatic_egodeath.bfjoust \ 1208341 12162 0.0 0.0 4324 904 ? SN 22:58 0:00 grep /bin/grep ego \ 5000 20832 0.0 0.0 33884 < 1297204665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, egodeath really does seem to give it problems < 1297204666 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, nice but somewhat verbose status report < 1297204672 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test < < 1297204674 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a pity, because I want to write that sort of program too < 1297204683 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Which ones < 1297204689 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep PRIVMSG < 1297204692 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 11850 0.0 0.1 9516 1532 ? S 22:57 0:00 /bin/bash PRIVMSG/tr_21.cmd PRIVMSG #esoteric !bfjoust egodeath http://www.lichttuete.com/temp/a10.txt \ 5000 11861 0.0 0.1 9532 1616 ? S 22:57 0:00 /bin/bash scmds/bfjoust bfjoust egodeath http://www.lichttuete.com/temp/a10.txt PRIVMSG < 1297204696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe I can figure out a way to patch the interp < 1297204697 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297204698 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Thingsy things < 1297204711 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath < < 1297204718 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol I have avoided that kind of expansion because it's too evil < 1297204721 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, won't help when running < 1297204726 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 0.0 < 1297204727 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_test: 0.0 < 1297204727 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 0.0 < 1297204728 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep -i porn < 1297204733 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297204736 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, that seems wrong < 1297204741 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION whistles innocently < 1297204745 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :how could it score 0.0 (the original one) < 1297204748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`run ps aux | grep e\go | grep -v report | grep -v PRIVMSG < 1297204749 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 12576 0.0 0.1 8908 1244 ? S 23:00 0:00 /bin/bash PRIVMSG/tr_60.cmd PRIVMSG #esoteric `run ps aux | grep -i porn \ 5000 12595 0.0 0.0 8908 536 ? S 23:00 0:00 /bin/bash PRIVMSG/tr_60.cmd PRIVMSG #esoteric `run ps aux | grep -i porn \ 5000 12598 0.0 0.0 8912 508 ? < 1297204750 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :5000 10296 0.0 0.1 45960 1440 ? S 22:46 0:00 su - egobot \ 5000 11890 19.9 1.2 20176 12708 ? TN 22:57 0:36 ../egojoust Deewiant_maglev.bfjoust impomatic_egodeath.bfjoust \ 5000 12251 17.1 1.2 20176 12584 ? RN 22:59 0:13 ../egojoust Deewiant_maglev.bfjoust impomatic_egodeath.bfjoust < 1297204753 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking earlier you could add an instruction like < 1297204754 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297204754 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: cache effects < 1297204761 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what? < 1297204773 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :"if zero break loop" < 1297204782 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :If you run it twice with the same name, it'll switch partway through and go crazy X_X < 1297204790 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :nescience, like "goto" in brainfuck XD < 1297204791 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :so that you don't need to do ridiculous nested [] expansions < 1297204806 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, ouch < 1297204807 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a10.txt < 1297204815 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :I think I fixed my program :-) < 1297204817 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :except it'd only goto the appropriate ] < 1297204820 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, let it run to end? < 1297204820 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: :D < 1297204827 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: omg you could make a program that wins on half < 1297204830 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :and one that wins on the other half < 1297204831 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :and swap it < 1297204836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: that was the sort of use I envisaged when I added % to the lang < 1297204838 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :nescience: The point of BF Joust is to stay close to Brainfuck < 1297204840 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on the basis that interps could optimise it < 1297204841 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :nescience: Not doing that leads to FYB :P < 1297204844 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, somewhat tricky to get timing right < 1297204850 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, but sure could be done < 1297204856 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :alternatel evaluate % loops without expansion < 1297204862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: you can actually produce arbitrary control flow by making 2^n copies of your program < 1297204866 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: The IP's location after t, and the location that the created IP will start at, are the same, yes? < 1297204877 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Good night < 1297204878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it seems egodeath is still killing egobot, though < 1297204886 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, they can't optimise it very well when you need to interleave turns < 1297204886 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : alternatel evaluate % loops without expansion < 1297204887 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :lance did thaaat < 1297204888 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297204889 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Used ( [ { something } ] something )%xxxx and hopefully it doesn't kill egobot < 1297204892 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :anyway it would be close to brainfuck though < 1297204893 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Er, no? One reverses, one doesn't? < 1297204902 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ...oh :-D < 1297204904 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: egojoust unrolls all %-loops < 1297204911 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it may be patchable not to < 1297204911 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oh that was the guy I was explaining it to I think < 1297204912 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lance < 1297204927 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :it dedfinitely is doable < 1297204932 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I worked it out before < 1297204937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my original bf joust interp expanded % loops lazily < 1297204951 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :nescience: that was the guy? < 1297204965 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :lance was the name of my bf joust interpreter, but egojoust got finished first, with the features i invented for lance < 1297204970 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I remember explaining it to someone who used it < 1297204983 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: try changing the 10000 to 100, to see if it helps < 1297204984 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: basic concurrency seems to work < 1297204985 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :BAD: reflected IP didn't copy stack < 1297204985 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :PCahrielndt IIPP:: IIDD 0 < 1297204985 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1297204985 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :BAD: parent IP executed prior to child IP < 1297204985 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :baADD: tBaAkDe:s ]l edsose stnh'atn w5o rtki cakts a < 1297204986 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :lask1eap B < 1297204988 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oh, maybe I am confused. it sounded familiar like a name < 1297204988 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ah, I guess I'd can't get egodeath to work then :-/ < 1297204988 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :: < 1297204990 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :GOO)OGO:elliott@elliott-MacBookAir:~/mycology$ < 1297204993 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: For your entertainment ^ < 1297204999 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: I know, I'm upset for the same reason, as I wanted to do something much like that < 1297204999 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Wait'll you get to TRDS < 1297205005 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : baADD: tBaAkDe:s ]l edsose stnh'atn w5o rtki cakts a < 1297205007 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :awesome < 1297205029 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I seen this sort of things too (though not this exact one) < 1297205034 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Whoo boy :P < 1297205035 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : lask1eap B < 1297205038 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :like flask but not lask < 1297205039 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's only two threads outputting, that's not that bad < 1297205064 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : impomatic: I know, I'm upset for the same reason, as I wanted to do something much like that <-- get Gregor to fix it? < 1297205071 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : let newIP = < 1297205071 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : ip{ ipNum = maxIPNum + 1 < 1297205071 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : , ray = Ray (pos + reflection delta) (reflection delta) } < 1297205071 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : modify $ \fs -> fs{ maxIPNumber = maxIPNum + 1 } < 1297205073 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, or send him a patch! < 1297205073 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's far from a trivial fix < 1297205073 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric : modifyIPs $ \(xs,ys) -> (xs, newIP:ys) < 1297205076 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it'd make more sense to send a patch < 1297205078 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I SEE NOTHING WRONG < 1297205080 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Or, wai < 1297205081 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :*wait < 1297205086 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Is (pos + reflection delta) wrong there? < 1297205095 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1297205098 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Apart from it being pos - delta >_< < 1297205104 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, aren't you doing the fork bomb literal spec variant? < 1297205106 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Cool, reflection is just negate now < 1297205118 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: TRDS would be easy with the time travel monad. :P < 1297205124 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a10.txt changed to 100 < 1297205127 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, :D < 1297205146 0 :amca!~amca@CPE-121-208-84-154.cqzr1.cha.bigpond.net.au JOIN :#esoteric < 1297205169 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: at least it's running now < 1297205173 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Not that I know of. < 1297205179 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: That's why I move the IP on spawn. < 1297205181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's tying with defend7, etc, so there's probably a logic error somewhere < 1297205184 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 8.4 < 1297205185 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 8.4 < 1297205189 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, YOU MUST FOLLOW SPEC! < 1297205190 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1297205210 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I use a lot of ( {} ) - maybe I can replace most of them with () () < 1297205216 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I've long since realised that Mycology is Deewiant's sneaky tool to make everyone think the spec says what he wants it to say :P < 1297205226 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Shh! < 1297205235 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Test suite my ass < 1297205238 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, hah :P < 1297205241 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: yep, it's probably best to use () () if there are no square brackets, and ({}) if there are < 1297205253 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and (a{b}c)%n == (a)*nb(c)*n < 1297205272 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, in part you are right in fact. In part it is a good test suite. Besides he did the sensible thing in many cases. < 1297205276 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :(though not all) < 1297205297 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :To be fair, when he does differently to the spec it's because the spec is downright useless. < 1297205304 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Although I still think that form feeds should be read into fungespace. < 1297205328 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I think form feed handling is more consistent this way < 1297205336 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But the spec doesn't even begin to say that. < 1297205338 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, since for unefunge \n is skipped < 1297205359 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Again, I'd prefer it only disagree with the spec when taking the spec's side would result in an absolutely useless language :P < 1297205360 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, for befunge form feed should be skipped since form feed is for trefunge what \n is for befunge < 1297205369 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Again, I'd prefer it only disagree with the spec when taking the spec's side would result in an absolutely useless language :P < 1297205382 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott_, I read what you said and repeating it won't help < 1297205394 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Again, I'd prefer it only disagree with the spec when taking the spec's side would result in an absolutely useless language :PAgain, I'd prefer it only disagree with the spec when taking the spec's side would result in an absolutely useless language :PAgain, I'd prefer it only disagree with the spec when taking the spec's side would result in an absolutely useless language :P < 1297205396 0 :elliott_!unknown@unknown.invalid PRIVMSG #esoteric :Whee < 1297205397 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott_: Your _ annoys me < 1297205407 0 :elliott_!unknown@unknown.invalid NICK :elliott__ < 1297205409 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Is that better? < 1297205418 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, besides it started with rc/funge incrementing the z coord in befunge mode! < 1297205419 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Actually it is a bit < 1297205421 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :on form feed < 1297205425 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: :-D < 1297205469 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297205475 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, anyway do you handle the truncation-instead-of-overflow thing for & correctly yet? < 1297205486 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Not yet. < 1297205510 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, you might want to do it base-agnostic. Then you can reuse it when implementing the fingerprint BASE < 1297205520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :$ ./egojoust defend7.bj impomatic_egodeath.bj 21 1 < 1297205521 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :realloc: Cannot allocate memory < 1297205522 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Reuse all 5 lines? < 1297205527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that's with %100, not %10000 < 1297205530 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, oh right. Not C :P < 1297205547 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 42.9 < 1297205559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: aha, that looks much better < 1297205561 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what did you fix? < 1297205582 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I blame oerjan for this < 1297205602 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: Stop making things that beat monorail but lose to steamroller < 1297205611 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Seriously though... when you spawn the new IP, you spawn it one delta backwards, right? < 1297205617 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :*one of your delta < 1297205620 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :With its delta negated. < 1297205628 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, I'd say so < 1297205633 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: And then it goes to the next instruction (toNextIns, not advance) on its first tick? < 1297205637 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :i.e. skips over spaces. < 1297205652 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Presumably < 1297205663 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Increased the count to 300 which should wait long enough for some opponents some of the time. Need it higher really, not sure how high I can go. Also got rid of as many ( {} ) % n as possible < 1297205673 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, I assumed there was a logic fix there too < 1297205679 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So, uh, "reflected IP didn't copy stack" ... wait < 1297205680 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :WAIT < 1297205685 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :The stack is per-IP, isn't it? < 1297205688 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Stop the presses!! < 1297205692 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :ACTION EPIC FUCKING FACEPALM < 1297205693 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is < 1297205701 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Is the stack-stack per-IP? < 1297205703 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is < 1297205703 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297205708 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: :D < 1297205711 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Am I retarded? < 1297205714 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is < 1297205718 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it am. < 1297205739 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Stop laughing. < 1297205747 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ahahahahahahahahahahahahaha.... < 1297205750 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :sorry can't stop < 1297205753 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :X-D < 1297205756 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: *ehehehehhehehhhehehe < 1297205762 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I thought that was in poor taste < 1297205763 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no I'm not him < 1297205774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: it's mocking you mocking Mike < 1297205780 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Nice excuse :P < 1297205789 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Mike used commas, not periods < 1297205791 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 41.7 < 1297205796 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Both < 1297205801 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Mostly commas < 1297205803 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :But commas more often after (e|h)^n, yes. < 1297205832 0 :sixdej1!~sixdej@cpe-67-250-52-223.nyc.res.rr.com JOIN :#esoteric < 1297205832 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297205912 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 42.6 < 1297205920 0 :Mathnerd314!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297205946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend11 http://sprunge.us/gdOE < 1297205948 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297205948 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Shiro/Monad.hs:127:0: < 1297205948 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `IP' < 1297205948 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : against inferred type `FungeState' < 1297205948 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : When using functional dependencies to combine < 1297205948 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : MonadState s (StateT s m), < 1297205949 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : arising from the dependency `m -> s' < 1297205951 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :That's what I like to hear! < 1297206014 0 :sixdej!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297206030 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: breakdown.txt's got all confused, somehow < 1297206061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it's writing in the middle of the file < 1297206064 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :seems to be running, though < 1297206107 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Hmmm... I never noticed breakdown.txt before! < 1297206117 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: All concurrency tests passed. < 1297206117 0 :sixdej1!unknown@unknown.invalid NICK :sixdej < 1297206120 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: It's new. < 1297206123 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: Now do TRDS! < 1297206126 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: FUCK YEA, THAT WAS ACTUALLY PRETTY EASY -- NO < 1297206128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and apparently broken in a really odd way < 1297206137 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So, I have one single BAD now (o doesn't do text mode yet). < 1297206147 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: The rest are all GOOD, or UNDEFs that you agree with. < 1297206163 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :real 0m1.783s < 1297206163 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1297206163 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 42.6 < 1297206163 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend11: 5.8 < 1297206170 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: GUESS WHY IT'S SO FAST < 1297206173 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297206179 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: ghc -O2 instead of ghci? :-D < 1297206180 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :-- TODO: @ for multiple IPs < 1297206180 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :doCharIns '@' = io exitSuccess < 1297206183 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ^ < 1297206186 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Nope, I always use -O2. < 1297206187 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ha :-D < 1297206235 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 43.5 < 1297206239 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297206274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, defend9's shot up the leaderboard < 1297206299 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 47.0 < 1297206302 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's even overtaken defend10 < 1297206308 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Most of impomatic's stuff appears to lose to it < 1297206310 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :where's the leaderboard? < 1297206325 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297206334 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/report.txt < 1297206346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I guess the new programs are starting to be all too predictable again < 1297206384 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 43.7 < 1297206388 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1297206433 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297206444 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :where did mine go :( < 1297206466 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dumdum (>(+..)*254)*100 < 1297206490 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I pass all concurrency tests and don't fail afterwards, woo < 1297206502 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :EgoBot is ignoring me :( < 1297206503 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :All you need is TRDS < 1297206507 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :About to test, using ROMA, whether t copies the parent IP's loaded fingerprint semantics to the child IP. < 1297206508 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :This is unmentioned in the specification, and thus is UNDEF. < 1297206510 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What should I aim for < 1297206510 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 46.4 < 1297206512 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for coppro_dumdum: 19.0 < 1297206533 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: ccbi mycology.b98 < 1297206541 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Not biased I see < 1297206548 0 :Mathnerd314!~mathnerd3@128.198.97.174 JOIN :#esoteric < 1297206550 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: IVXLCDM didn't reflect: child IP has ROMA loaded < 1297206552 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Agreed :P < 1297206552 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: You asked for my "should aim for" on an UNDEF < 1297206553 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297206559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend11 http://sprunge.us/CBFF < 1297206562 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: There is no unbiased answer to such a question < 1297206571 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: CCBI could fail to live up to your perfect expectations, I guess < 1297206586 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: Sure, but you can't complain about bias whether I answer with ccbi or not < 1297206600 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Shaddap :P < 1297206612 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Okay hm. < 1297206626 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Should I add text mode support to o or start with cleanup and fingerprints < 1297206627 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 44.6 < 1297206648 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: Go for TRDS if you want to do the least work < 1297206659 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend11: 5.3 < 1297206661 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What kind of definition of "work" are you using here < 1297206667 0 :Sgeo!~Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1297206686 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: I mean that you'll give up on Befunge-98 if you start doing it < 1297206694 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297206711 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust egodeath http://www.lichttuete.com/temp/a11.txt < 1297206712 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I do love how tiny the original TRDS spec is compared to the implementation guide. < 1297206719 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Time travel, no big deal, we all know how to do that right? < 1297206731 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The guide doesn't actually add that much, it mostly restates a bunch of the original < 1297206741 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: And hey -- this is my third day of constant work on it. This is *unprecedented* project commitment for me. < 1297206766 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hence I'm pushing you towards TRDS, to prevent the fourth < 1297206775 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Do you not like Shiro? :-P < 1297206790 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm just testing you :-D < 1297206805 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'll try TRDS, but not before I get everything else done :p < 1297206805 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_egodeath: 45.5 < 1297206824 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust control http://www.lichttuete.com/temp/a12.txt < 1297206833 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Do you implement text-mode IO in a more clever way than just preprocessing the binary mode output? < 1297206838 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I want to know whether to feel bad about doing it like that. < 1297206862 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't think there is another way < 1297206874 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :By "everything else", do you mean all other fingerprints? :-D < 1297206884 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Because if so, that should take a while < 1297206928 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_control: 24.5 < 1297206974 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Pretty much, yes. < 1297206983 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I can't imagine there's any fingerprints more difficult to implement than MVRS and TRDS. < 1297206984 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend11 http://sprunge.us/aTNI < 1297206997 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend11: 0.0 < 1297207001 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1297207020 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: IFFI? ;-) < 1297207033 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Vorpal did IFFI and he won't do TRDS :-P < 1297207036 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend11 http://sprunge.us/WXfE < 1297207044 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: Aye, but for Shiro in particular < 1297207060 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: First, implement INTERCAL in Haskell. Second, ... < 1297207065 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297207074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: IPMD, potentially < 1297207084 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :What's IPMD < 1297207093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Switching between unefunge/befunge/trefunge at runtime < 1297207093 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Interestingly Phucked Multiple-Dimensionality? < 1297207098 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Hey, I was right. < 1297207103 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :...I wasn't even trying to be right. < 1297207104 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"IP dimension modes" < 1297207111 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but I got it right :P < 1297207114 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep < 1297207125 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Welp, I don't plan to implement 3D/1D/etc. soon. < 1297207133 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Probably before TRDS though :-P < 1297207159 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Ideally I'll get runtime N-dimensionality without non-negligible overhead < 1297207160 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :CCBI2's architecture makes IPMD enough of a pain that I probably won't do it < 1297207172 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Switching sounds like a bitch though. < 1297207190 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It'd have to copy over all of Funge-Space to a different structure whenever the dimensionality is switched < 1297207192 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend11: 14.0 < 1297207197 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which is just a bit silly < 1297207213 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Rc/Funge-98 gets by because it always uses a 3D funge-space < 1297207218 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1297207228 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I'll just always use an infinite-dimensional fungespace. < 1297207232 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :[1,2,0,0,0,0,0,0,0,... < 1297207238 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :(That's a coordinate.) < 1297207252 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, ooh yes you MUST do IFFI or you haven't taken the crown from cfunge :P < 1297207255 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :as you said < 1297207263 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I'd rather take the crown from CCBI :-P < 1297207268 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Or at least be throne buddies. < 1297207298 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :OK, time to do a bit of cleanup, and then start on fingerprints. < 1297207302 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dont_wait http://www.lichttuete.com/temp/a12.txt < 1297207319 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :MACR may be tricky as well < 1297207368 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297207369 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Mini-Funge I doubt I'll do :P < 1297207378 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That too < 1297207391 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But yeah, that's not very relevant especially given the two conflicting specs < 1297207398 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Eh? < 1297207405 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For Mini-Funge < 1297207419 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :"S ('Shelled') pushes a 0 on the stack if the Perl language is already loaded (e.g. the interpreter is written in Perl). It pushes a 1 on the stack otherwise, indicating that the Perl language will be shelled when needed." < 1297207422 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :That is the most braindead... < 1297207435 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why's that < 1297207440 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Because it's irrelevant? < 1297207450 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It tells you how fast it is to call to Perl < 1297207461 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You might want to do less of it if S is 1 < 1297207463 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Who cares about performance :P < 1297207468 0 :poiuy_qwert!~poiuy_qwe@CPE001b115db0ae-CM0018c0c24ffc.cpe.net.cable.rogers.com JOIN :#esoteric < 1297207471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Everybody < 1297207484 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :ORTH... RAGE < 1297207495 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What's wrong with ORTH? :-D < 1297207498 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I love how it fails to specify what the Orthogonal instructions do, you know, in case there's AMBIGUITY. < 1297207505 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, that :-D < 1297207506 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dont_wait: 46.8 < 1297207508 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just dig up the ORTH spec < 1297207510 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Er < 1297207511 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :>>> Z ? ramp if zero < 1297207511 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :WHAT THE FUCK IS RAMP < 1297207512 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Orthogonal* < 1297207517 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's # < 1297207556 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Does any fingerprint store global state independent of IPs? < 1297207562 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1297207566 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297207567 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :e.g.? < 1297207576 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1297207590 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :REFC < 1297207606 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :SUBR < 1297207608 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :TIME < 1297207609 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :TRDS < 1297207618 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: FML < 1297207627 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :New fingerprint: < 1297207628 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :HATE < 1297207629 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dont_wait http://www.lichttuete.com/temp/a12.txt < 1297207629 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :TRDS shouldn't've been a surprise, at least ;-) < 1297207653 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :A-Z all take on random Funge-98 meanings. Every other instruction gets remapped so that it has a 1/10 chance of going to the start of program execution, < 1297207664 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :TRDS actually adds four fields to my FungeState struct < 1297207665 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :and repeating the program as if all operations that take two arguments took them in the wrong order, < 1297207678 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :and as if every vector popped was negated. < 1297207683 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, three, if the tracer's compiled in < 1297207690 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : version (tracer) ulong tick = 0; < 1297207691 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : else version (TRDS) ulong tick = 0; < 1297207704 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :When program execution completes or the program goes into any kind of infinite loop, the instruction reflects in the present, and the stack generated by the re-run is pushed to the stack stack. < 1297207710 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :(ANY kind of infinite loop.) < 1297207726 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: When will it be implemented < 1297207733 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Never < 1297207737 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Why < 1297207743 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Is it because you're lame? < 1297207744 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not very useful < 1297207751 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You forgot "requires halting oracle" < 1297207759 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Or is that no problem for CBBI < 1297207769 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I actually didn't read the last two lines at all < 1297207781 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297207790 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and then there's the IO stuff that adds state < 1297207794 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FILE, for instance < 1297207809 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, FILE handles *may* be local to an IP < 1297207814 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :X-D < 1297207814 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it isn't really specced < 1297207819 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :True < 1297207823 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to clean up my code and then integrate my fingerprint code. < 1297207826 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But that doesn't seem like useful behaviour < 1297207849 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what to split interpreter into < 1297207850 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I planned a DS9K implementation of FILE in efunge. Adding tagged funge space values. So you can't just create that handle anyhow < 1297207852 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Interpreter and CoreInstructions? < 1297207873 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, basically passing the whole FILE data required along with the value < 1297207890 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, would you hate that? < 1297207897 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, would mycology survive it? < 1297207909 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't understand what you mean < 1297207914 0 :yorick!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297207916 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :A typed funge-space, instead of everything being a cell? < 1297207920 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yep < 1297207924 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dont_wait: 46.6 < 1297207931 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't think that's valid < 1297207931 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: That disobeys the spec. < 1297207933 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Any questions? < 1297207939 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, not the FILE spec < 1297207948 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: No, but it wouldn't be a Funge-98 implementation. < 1297207969 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, but FILE is of course feral in this model! < 1297207973 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I guess he could argue that his FILE is feral and messes up all other instructions < 1297207979 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, quite :P < 1297207988 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Feral != breaks the spec < 1297207991 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :anyway it is too much work to do it that way < 1297207994 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Feral == obeys the spec but breaks all kinds of sanity < 1297207997 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, feral *might* break the spec < 1297208008 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Really? So FNGR is just feral, not broken? < 1297208010 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I don't think so. < 1297208011 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, it is perfectly legal for it. But only when in use < 1297208012 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1297208016 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :MODE is similar < 1297208025 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, correct since it is now defined to enter a separate mode < 1297208032 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :MODE changes how just about every instruction works < 1297208037 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297208054 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And that's even a Cat's Eye fingerprint, so you can't make too strong an argument against it ;-) < 1297208058 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :How many fingerprints did HsFunge implement? < 1297208064 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :None, I believe < 1297208067 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe NULL and ROMA or so < 1297208075 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Ha, Shiro is going to be like ten times better < 1297208081 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How fast did it run Mycology? :-P < 1297208089 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Okay, scratch that < 1297208094 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dont_wait http://www.lichttuete.com/temp/a12.txt < 1297208107 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I'm scratching it < 1297208123 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :HRTI MODE MODU NULL ORTH PERL REFC ROMA TOYS BASE CPLI DATE DIRF EVAR FILE FING FIXP FPDP FPSP FRTH IIPC IMAP INDV SETS STRN SUBR TIME JSTR < 1297208136 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: "None" < 1297208141 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :$ wc -l Fingerprints.hs < 1297208141 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :1376 Fingerprints.hs < 1297208145 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I thought it was none :-P < 1297208147 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How fast did HsFunge pass mycology? Like, without fingerprints :P < 1297208151 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Fingerprints.hs? Pfft < 1297208155 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I see he doesn't use my amazing system < 1297208164 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't see a way of disabling fingerprints < 1297208167 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :$ ./Main --help < 1297208167 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Main: --help: openFile: does not exist (No such file or directory) < 1297208174 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway I argue that doing 0,1,2 and such for normal values but then doing surprises like {0,} for a file handle is perfectly okay. If funge code tries to output or increment or anything then the first member of the tuple gets modified. But the whole tuple is copied, written with p, fetched with g and so on < 1297208192 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: With fingerprints, then? < 1297208194 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, might give all open files the value 0 this way < 1297208196 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, :D < 1297208205 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Main: mycology.b98: hGetContents: invalid argument (Invalid or incomplete multibyte or wide character) < 1297208209 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Guess it doesn't run it at all < 1297208217 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe it will with a recompile from 6.12 < 1297208217 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Designed for older GHC < 1297208223 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Try 6.8 < 1297208230 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's built in 2010-05 < 1297208230 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You need a pre-Unicode IO system < 1297208238 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, why don't you your self < 1297208244 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yourself* < 1297208245 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Umm, because he's the one who wants to test HsFunge < 1297208247 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297208250 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1297208252 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I want to know the answer < 1297208254 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :But he's the one doing it < 1297208256 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :s/ $// < 1297208256 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, :P < 1297208265 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dont_wait: 49.1 < 1297208271 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: congratulations < 1297208284 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: I thought handles defaulted to latin1? < 1297208295 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Nope, UTF-8 < 1297208306 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Try hSetBinaryMode fileHandle True < 1297208310 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Or s/openFile/openBinaryFile/ < 1297208313 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric ::t readBinaryFile < 1297208314 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: `readBinaryFile' < 1297208318 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :You might have to make it manually open the file. < 1297208322 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :If it uses readFile. < 1297208329 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :runFile file = readFile file >>= runString < 1297208348 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: runFile file = do fh <- openBinaryFile file; poop <- hGetContents fh; runString poop < 1297208352 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :That's a bit unfair, since it loads lazily < 1297208359 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: runFile file = do fh <- openBinaryFile file; poop <- hGetContents fh; print poop; runString poop < 1297208360 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :There < 1297208364 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :readFile loads lazily < 1297208369 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, right < 1297208372 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :The first then < 1297208379 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: thanks :-) It was supposed to score worse than egodeath though to prove egodeath is effective :-( < 1297208441 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :runFile file = withBinaryFile file ReadMode (hGetContents >=> runString) < 1297208453 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Deewiant "Fancy McFancyPants" Deewiant < 1297208463 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, wtf is >=> < 1297208468 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric ::t (>=>) < 1297208469 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a (m :: * -> *) b c. (Monad m) => (a -> m b) -> (b -> m c) -> a -> m c < 1297208475 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :One of the 2398723498723947239479234 functor-applicative-or-monad combinators. < 1297208479 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, :D < 1297208487 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: 2.3 seconds and it crashes in the FING test < 1297208491 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: One exists for every purpose except the one thing you're trying to accomplish now. < 1297208493 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, I believe that count was a bit on the low side < 1297208496 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Gut Fingerprints.hs :P < 1297208511 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :4.5 seconds after removing *.tmp < 1297208549 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How is it faster than me. < 1297208558 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does it shrink bounds? < 1297208562 0 :Ilari_antrcomp!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1297208562 0 :Ilari!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1297208568 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No fingerprints: 4.12 seconds < 1297208573 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : Deewiant: Does it shrink bounds? < 1297208577 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, does >=> have some descriptive name? I'm still not that good at figuring out what stuff does from the type signature alone < 1297208588 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's noticeable lag between BAD: form feed reflects and BAD: after spacing top-left corner, y should report greatest point as ( 182 910 ), not ( 181 910 ) < 1297208601 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: (someMonadicFunction >=> someMonadicFunctionTakingTheFirstOne'sResult) inputToFirstOne < 1297208607 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :--> result of second function < 1297208620 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Good, so it's shit and Shiro is 10x better < 1297208622 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It also says That the greatest point, relative to that point, is ( 181 910 ) BAD: should have been ( 183 911 ) < 1297208629 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Ha ha ha < 1297208630 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :It's SHIT < 1297208634 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Worst shit in the history of: shit < 1297208636 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: # across left edge skips easternmost cell in file, tut-tut < 1297208638 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, I get "not in scope" for >=> locally < 1297208643 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric ::i (>=>) < 1297208643 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: import Control.Monad < 1297208647 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, aha < 1297208652 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: God < 1297208656 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's like someone decided < 1297208658 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :HEY I'MMA MAKE THE WORST FUNGE < 1297208660 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :AND THEN DID IT < 1297208660 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :SHIRO < 1297208661 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust Nyarlathotep http://www.lichttuete.com/temp/a12.txt < 1297208662 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :SHIRO IS WHAT YOU NEED < 1297208662 0 :augur!~augur@pool-173-73-128-87.washdc.east.verizon.net JOIN :#esoteric < 1297208664 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :FOREVER SHIRO < 1297208668 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust dont_wait < < 1297208699 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, dont_wait was good < 1297208701 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, why remote it < 1297208721 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the name was rubbish, just renaming it ;-) < 1297208735 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, also is "Nyarlathotep" a pharaoh or something? < 1297208741 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it sounds like it might be < 1297208756 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :A friend of Cthulhu :-) < 1297208760 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297208769 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Having an Egyptian-sounding name does not one a pharaoh make < 1297208844 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Totally does < 1297208845 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hopscotch (>[(>[([>[-]])*31])*31])*31 < 1297208875 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :this is hard to mess about with on a phone! < 1297208879 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Strangely enough Nyarlathotep is known as the Black Pharaoh in one of the books :-) < 1297208918 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Woo, Shiro is becoming a real program < 1297208922 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They all have a billion names so I'm hardly surprised < 1297208923 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :i.e. main is moving out of Interpreter.hs < 1297208924 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, it *sounds* very Egyptian < 1297208933 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I'm even giving it < 1297208934 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :wait for it < 1297208936 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :COMMAND LINE ARGUMENTS < 1297208938 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :HOLY SHIT < 1297208954 0 :Ilari!~user@2002:5870:38d7::1 JOIN :#esoteric < 1297208956 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, fix the y stuff then! < 1297208958 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :night → < 1297208965 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It does the environment. < 1297208968 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_Nyarlathotep: 49.1 < 1297208968 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_dont_wait: 0.0 < 1297208969 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott__, tell me when you put it in version control < 1297208971 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :It'll do arguments after this cleanup is through. < 1297208972 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_hopscotch: 20.7 < 1297208974 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :night! < 1297208975 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: That won't happen until 1.0. < 1297208976 0 :Ilari_antrcomp!~user@2002:5870:38d7:0:20e:a6ff:fe6f:2288 JOIN :#esoteric < 1297208981 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I'm like Deewiant in that respect :P < 1297208982 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1297208999 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I didn't version control CCBI until 1.0.4a < 1297208999 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: you aren't registered < 1297209003 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hopscotch (>[(>[([>[[-]]+])*31])*31])*31 < 1297209015 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I didn't save old zips so I don't have anything older < 1297209018 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for nescience_hopscotch: 28.0 < 1297209082 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: DING DING DING NEW DEPENDENCY < 1297209169 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: Does http://tar.us.to:1234/forks.b98 work? < 1297209182 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Let me finish moving Main out first :P < 1297209186 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm scared though. < 1297209207 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How long will it take with a slow-ish t? < 1297209209 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust hound_of_tindalos (-)*999999(>)*9([-]>)*21 < 1297209222 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott__: If that takes long, good luck with Fungicide :-D < 1297209236 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Spent: 21 ticks < 1297209236 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Encountered: 292 instructions < 1297209256 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, that should work then. < 1297209269 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Let me get a command-line first :P < 1297209318 0 :joo!~joo@unaffiliated/joo JOIN :#esoteric < 1297209322 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for impomatic_hound_of_tindalos: 17.3 < 1297209427 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Module imports form a cycle for modules: < 1297209427 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Instructions (./Shiro/Instructions.hs) < 1297209427 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Interpreter < 1297209427 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Interpreter (./Shiro/Interpreter.hs) < 1297209427 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Instructions < 1297209429 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Gah, that isn't allowed? < 1297209446 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You need .hs-boot files < 1297209451 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or preferably, a lack of cycles < 1297209459 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What should I name the file containing functions the interpreter uses, like nextPos, wrap, advance, reflect, but not the actual interpret function? < 1297209466 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Utils < 1297209470 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: >_< < 1297209471 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Okay. < 1297209580 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yay, I have an actual circular dependency.