< 1297209617 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well done < 1297209728 0 :impomatic!unknown@unknown.invalid QUIT :Quit: ChatZilla 0.9.86 [Firefox 3.5.16/20101130074636] < 1297209746 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :$ ./shiro forks.b98 < 1297209746 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Hello, from Concurrent Befunge! < 1297209747 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :shiro: Shiro/Monad.hs:82:35-63: Non-exhaustive patterns in lambda < 1297209751 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: No comment. < 1297209755 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297209774 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP :: (IP -> IP) -> Shiro () < 1297209774 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :modifyCurrentIP f = modifyIPList $ \(ip:xs, r) -> (f ip : xs, r) < 1297209778 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1297209796 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : (ips,_) <- gets ipList < 1297209796 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : when (null ips) $ io exitSuccess < 1297209801 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does any fingerprint kill an IP? < 1297209804 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Or can I put that into the @ code? < 1297209836 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't think any can kill them as such, but TRDS and IIPC do things that you might want to implement by moving IPs out of the list < 1297209848 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Mmm. Well, whatever. < 1297209850 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :elliott@elliott-MacBookAir:~/Code/shiro$ ./shiro forks.b98 < 1297209850 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Hello, from Concurrent Befunge! < 1297209850 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :elliott@elliott-MacBookAir:~/Code/shiro$ < 1297209852 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yep. < 1297209859 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Aye. < 1297209896 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Nice, GHC's compiles are nondeterministic. < 1297209899 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :i.e. recompiling == different hash. < 1297209942 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :elliott@elliott-MacBookAir:~/Code/shiro$ ./shiro shiro < 1297209942 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Stack space overflow: current size 8388608 bytes. < 1297209942 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Use `+RTS -Ksize -RTS' to increase it. < 1297209947 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :That's not good. :p < 1297209963 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Memory use profiling time < 1297210010 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Naw. < 1297210015 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :I'll wait until that happens on an actual program. < 1297210024 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :COST CENTRE MODULE %time %alloc < 1297210024 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :doNextIns Shiro.Interpreter 100.0 7.3 < 1297210024 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :--trace of forks.b98. < 1297210029 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Strangely even coreIns is 0%. < 1297210119 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, and on Mycology: < 1297210123 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :COST CENTRE MODULE %time %alloc < 1297210123 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :insertFS Shiro.FungeSpace 85.8 91.5 < 1297210123 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :modifyIPList Shiro.Monad 3.1 3.5 < 1297210124 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :!@ Shiro.FungeSpace 3.1 0.1 < 1297210124 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :coreIns Shiro.Interpreter 3.1 1.2 < 1297210124 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :doNextIns Shiro.Interpreter 1.1 0.8 < 1297210130 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :tl;dr if I didn't recalculate bounds, I would be a freaking speed demon. < 1297210135 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297210185 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : mergeByteString Shiro.FungeSpace 367 685207 0.6 1.0 9.2 5.0 < 1297210186 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric : insertFS Shiro.FungeSpace 374 75489 8.7 4.0 8.7 4.0 < 1297210237 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: OK, time to start implementing fingerprints. < 1297210254 0 :elliott__!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I did _not_ expect to get this far. Especially not in three days. < 1297210255 0 :elliott__!unknown@unknown.invalid NICK :elliott < 1297210259 0 :elliott!unknown@unknown.invalid QUIT :Changing host < 1297210259 0 :elliott!~elliott@unaffiliated/elliott JOIN :#esoteric < 1297210334 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Time to integrate fptest.hs. < 1297210343 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Say, would you like a file that causes an internal error in GHC 6.12.3? < 1297210354 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not in particular, but the GHC devs probably would < 1297210354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's a very short file. < 1297210367 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'd have to test it with 7.0 to make a bug report and that sounds like a pain :P < 1297210384 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No you wouldn't :-P < 1297210392 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You can just report it against 6.12.3 and somebody else will < 1297210395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[1 of 1] Compiling Main ( fptest.hs.ghcinternalerror.hs, interpreted ) < 1297210395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ghc: panic! (the 'impossible' happened) < 1297210395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : (GHC version 6.12.3 for x86_64-unknown-linux): < 1297210395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : TcTyFuns.flattenType: synonym family in a rank-n type < 1297210395 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug < 1297210396 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> < 1297210405 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"Impossible happened" bugs tend to get attention anyway < 1297210413 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's a rather odd definition of impossible, since you can just code that directly :-) < 1297210415 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297210420 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Although given that description, it's probably just unimplemented and thus known < 1297210426 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1297210438 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It was a pretty crazy thing to do, anyway :P < 1297210439 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Still, there might not be a ticket tracking it < 1297210444 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, yeah, I'll do it later :P < 1297210518 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :{-# LANGUAGE TypeFamilies, ExistentialQuantification, FlexibleContexts, DeriveDataTypeable, StandaloneDeriving #-} < 1297210521 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION cracks knuckles < 1297210591 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : type FPIPState fp < 1297210592 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : fpInitialIPState :: fp -> FPIPState fp < 1297210596 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm just going to clone all fingerprint state for now :-P < 1297210636 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : fpHandles :: fp -> [FPIns] < 1297210638 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Augh, that name irks me. < 1297210894 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What do you call it when one module is more elegant than the rest of your program? < 1297210993 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't call it anything < 1297211005 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You call it "oh yeah, this is the one I drafted up separately". < 1297211142 0 :joo!unknown@unknown.invalid PRIVMSG #esoteric :racism < 1297211172 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Bedtime < 1297211178 0 :cheater-!~cheater@g228061071.adsl.alicedsl.de JOIN :#esoteric < 1297211359 0 :cheater00!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297211536 0 :myndzi!unknown@unknown.invalid NICK :myndzi\ < 1297211548 0 :myndzi\!unknown@unknown.invalid NICK :myndzi < 1297211592 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :think i broke bfjoust again? :| < 1297211621 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :nm < 1297211624 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it just caught up < 1297211696 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust careless >+++++>+++++>----->----->+>->>>((>[(-)*126(-.)*3)*22(])*22)*22 < 1297211733 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_careless: 59.1 < 1297211948 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :joo: indeed < 1297212229 0 :Mathnerd314!unknown@unknown.invalid QUIT :Ping timeout: 250 seconds < 1297212370 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :holy crap < 1297212372 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :nice score < 1297212376 0 :cal153!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1297212384 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ACTION bows < 1297212385 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297212392 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :straight to the ... TOP < 1297212426 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>[>(+)*20[[-]]+]]]](+)*13>[-[++[>>>>>[>(+)*20[[-]]+]]]](-)*13)*11 < 1297212439 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :owait < 1297212448 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 12.9 < 1297212449 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's wrong >_> < 1297212457 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>[>(+)*20[[-]]+]]]](+)*13>[-[++[>>>[>(+)*20[[-]]+]]]](-)*13)*11 < 1297212482 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 12.7 < 1297212488 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :lul < 1297212507 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust juggernaut_bitch (.)*48(>[-[++[>>>>>[>(+)*20[[-]]+]]]](+)*13>[-[++[>>>>>[>(+)*20[[-]]+]]]](-)*13)*11 < 1297212526 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_juggernaut_bitch: 14.2 < 1297212640 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i have a fun idea but i don't really want to flesh it out < 1297212722 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :which is < 1297212733 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Observation: pizzicato and harpsichord are not the same. < 1297212741 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :orly < 1297212755 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: wat. vivaldi could have told you that :P < 1297212798 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :next thing you're gonna tell me harps and pizzicato don't sound the same! and banjos and pizzicato! < 1297212832 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to recover a passage that I added insufficient tension to by adding a harpsichord, which worked well but I'm kind of against because it would be a 30-second harpsichord solo inexplicably, so I was hoping I could "port" it to pizzicato (which I do have, but isn't playing there) and although it obviously wouldn't be the same, it would have sufficient effect. < 1297212833 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust tag http://24.19.39.178/tag < 1297212834 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It did not. < 1297212877 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: 30-second harpischord solo... come on. Yes. < 1297212882 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_tag: 3.6 < 1297212885 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Do it. < 1297212886 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297212891 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i must have done something terribly wrong < 1297212904 0 :copumpkin!unknown@unknown.invalid QUIT :Quit: Computer has gone to sleep. < 1297212914 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: By "solo" I do not mean "playing alone", I mean "primary instrument" :P < 1297212926 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: And my concerns with the solo was that the instrument appears nowhere else :P < 1297213001 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i have no idea what is wrong with it though, and that's why i didn't want to flesh it out :P < 1297213003 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :confusing! < 1297213016 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :lol it beats two of impomatic's though < 1297213053 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i should have used a simpler/better attack perhaps, but since it's supposed to set off the tripwire on defend-style programs that wouldn't work well < 1297213055 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :o well < 1297213058 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust tag < < 1297213067 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_tag: 0.0 < 1297213117 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Just make it go completely harpischord out of nowhere for 30 seconds with nothing else. < 1297213122 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And then back to normal like nothing happened. < 1297213137 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1297213146 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :and the harpsichord should be played ragtime < 1297213158 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ragtime is VERY TENSION < 1297213163 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :talk about spam, he's got like 7 programs on there that are almost the same damn thing D: < 1297213169 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: he < 1297213171 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: 'snot happening :P < 1297213171 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297213175 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :impomatic < 1297213178 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: It is, yes. < 1297213209 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: you share knowledge tension gregor and then < 1297213220 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: VERY TENSION < 1297213247 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Ha ha your language sucks < 1297213266 0 :nescience!unknown@unknown.invalid QUIT :Quit: -a- < 1297213275 0 :myndzi!unknown@unknown.invalid NICK :nescience < 1297213292 0 :hagb4rd!unknown@unknown.invalid QUIT :Quit: hagb4rd < 1297213303 0 :sixdej!unknown@unknown.invalid PART #esoteric :? < 1297213520 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You know what's awesome? < 1297213528 0 :Mathnerd314!~mathnerd3@dsl.6.28.53.206.cos.dyn.pcisys.net JOIN :#esoteric < 1297213557 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :sex < 1297213614 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Module imports form a cycle for modules: < 1297213614 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Fingerprint (Shiro/Fingerprint.hs) < 1297213614 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Monad Shiro.FungeSpace Shiro.IP < 1297213614 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Monad (./Shiro/Monad.hs) < 1297213615 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Fingerprint[boot] < 1297213617 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.IP Shiro.FungeSpace < 1297213618 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.IP (./Shiro/IP.hs) < 1297213621 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Fingerprint < 1297213623 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.FungeSpace (./Shiro/FungeSpace.hs) < 1297213625 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.IP < 1297213626 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Failed, modules loaded: Shiro.Value, Shiro.Stack. < 1297213629 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Mutually recursive modules despite just writing an hs-boot file to stop that. < 1297213659 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>+>-)*2(+)*20>(-)*20>+>->++>([(..-)*20[+]]>)*20 < 1297213681 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 25.4 < 1297213693 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :a slight improvement i think... < 1297213712 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh, no, my mistake. < 1297213738 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'd just like to share this compiler error with you all: http://hpaste.org/43798/aaaargh < 1297213772 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>+>-)*2(+)*20>>+>->++>([(..-)*20[+]]>)*20 < 1297213802 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 22.8 < 1297213802 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>+>-)*2>(+)*20>>+>->++>([(..-)*20[+]]>)*20 < 1297213878 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 24.5 < 1297214030 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>+>-)*2>>>+>->++>([(..-)*20[+]]>)*20 < 1297214062 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 26.2 < 1297214074 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1297214108 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>+>-)*2>(+)*39>(-)*39>+>->++>([(..-)*20[+]]>)*20 < 1297214204 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 24.3 < 1297214329 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>+>-)*2>>>>>++<-<+<(+)*39<(-)*39>>>>([(..-)*20[+]]>)*20 < 1297214371 0 :nescience!unknown@unknown.invalid NICK :myndzi < 1297214380 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 20.2 < 1297214489 0 :cal153!~cal@c-24-4-207-72.hsd1.ca.comcast.net JOIN :#esoteric < 1297214503 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail >>>>>>>>++++>---->([(..-)*20[+]]>)*20 < 1297214535 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 16.8 < 1297214573 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail >->+>>>>>>++++>---->([(..-)*20[+]]>)*20 < 1297214617 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 22.8 < 1297214695 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*2>>>>++++>---->([(..-)*20[+]]>)*20 < 1297214723 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 26.0 < 1297214743 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowrush >(+)*19>(-)*19(>++++++>------)*1>+>->->+(>[[-(+)*22[-]]+>[+(-)*22[+]]->]+)*21 < 1297214758 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*3>>++++>---->([(..-)*20[+]]>)*20 < 1297214787 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I should try making some that target specific programs < 1297214793 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's the linky? < 1297214808 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/in_egobot/ < 1297214823 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 28.2 < 1297214823 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_slowrush: 47.9 < 1297214832 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :hmmm < 1297214840 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :apparently more decoys = higher score < 1297214841 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :huh, it put them both in the breakdown,txt < 1297214843 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :soooooo < 1297214848 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yeah it does that < 1297214856 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :confusing, i wanted a report of that program < 1297214857 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1297214871 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*3>>++++>---->([(..-)*20[+]]+>)*20 < 1297214881 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Bleh, I'd have to actually read the code for this < 1297214885 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :all programs currently available go in the breakdown.txt < 1297214897 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the entire tournament < 1297214900 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i mean, it was processing both our programs at once < 1297214905 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 27.8 < 1297214907 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and making breakdown.txt for both of them at the same time < 1297214911 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :because both were currently available < 1297214913 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :instead of only one of them vs everything on the hill < 1297214943 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it would have to run two separate reports then! < 1297214967 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :eh, i know WHY i was just complaining that you ruined my report ;) < 1297214977 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The harpsichord solo is in fact 38 seconds long :P < 1297214984 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :no i didn't! you get to see how we compare! < 1297215042 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*3>>++++>---->([(..-)*20[+]]+>[(..-)*20[+]]->)*10 < 1297215079 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Now remove other instruments < 1297215086 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: NEVER < 1297215097 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: is it unwise to leave a gap in the decoy chain like that? < 1297215097 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: This is dirge-for-accordion-plus-harpsichord-now btw :P < 1297215107 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: You forgot the organ. < 1297215111 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :doesn't really matter < 1297215117 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Organs can suck my organ < 1297215118 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 25.6 < 1297215121 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it was to throw something off surely < 1297215124 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll suck YO-- wait. < 1297215130 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297215146 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :slowrush beats wiggle now < 1297215165 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i didn't want to get in an optimize war with him so i let him have #1 way back < 1297215171 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :but now there's no excuse to let him keep beating me < 1297215171 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :;p < 1297215179 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*3>->++++>---->([(..-)*20[+]]+>[(..-)*20[+]]->)*10 < 1297215185 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :we'll find out.... < 1297215223 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 26.2 < 1297215236 0 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1297215240 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :score improves slightly! < 1297215256 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: answer: leave no gaps near homebase < 1297215268 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :that's not really true necessarily < 1297215289 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it's true for the current hill < 1297215303 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :you don't know why your score improved, it likely has very little to do with decoys < 1297215306 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust >>>(-)*10000 < 1297215306 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297215314 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust i_will_defend_not_my_flag_to_the_death >>>(-)*10000 < 1297215332 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's as likely to be a timing difference as anything else < 1297215335 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :for such a small increase < 1297215339 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297215341 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :also i've been testing programs in private < 1297215348 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :so as not to spam the channel < 1297215350 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This is actually the start of a good strategy :P < 1297215353 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: no do it in-channel < 1297215355 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :we like to see < 1297215365 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :decoys have never really made a huge difference in score < 1297215367 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_i_will_defend_not_my_flag_to_the_death: 2.9 < 1297215369 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i don't want to do that because then no one knows whena program is currently running < 1297215371 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i mean, tweaking the decoys < 1297215388 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :unless you are doing it specifically to target some program and it nets you a win over that program that is worth it < 1297215410 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :well, i wouldn't know < 1297215416 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i'm new to this form of procrastination < 1297215417 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :having a gap in the middle of the decoys is pretty meaningless, it's about the same as having one less decoy at the end < 1297215417 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle (k,a) -> Map k a -> Map k a < 1297215417 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Graph delEdge :: DynGraph gr => Edge -> gr a b -> gr a b < 1297215417 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Array.IArray (//) :: (IArray a e, Ix i) => a i e -> [(i, e)] -> a i e < 1297215418 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Graph.Inductive.Graph insNode :: DynGraph gr => LNode a -> gr a b -> gr a b < 1297215426 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it's as deadly as any other procrastination < 1297215439 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :since most programs will either not care about the placement of the decoys or they'll just skip blank places fairly quickly < 1297215475 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You know what's awesome? < 1297215476 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Bricks. < 1297215479 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Bricks are awesome. < 1297215495 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :They taste EXACTLY LIKE BRICKS. < 1297215545 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :anyway, i was gonna put slowermonorail back like i had it... < 1297215573 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*3>->++++>---->([(..-)*20[+]]>)*20 < 1297215586 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :or close to, anyways < 1297215607 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 25.4 < 1297215616 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :bah < 1297215645 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297215650 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that wasn't the right one < 1297215663 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust slowermonorail (>->+)*3>->++++>---->([(..-)*20[+]]+>)*20 < 1297215693 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_slowermonorail: 26.3 < 1297215710 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :better < 1297215716 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :CARRY ON < 1297215719 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/tmp/dirge-for-you.ogg EPIC HARPSICHORD SOLO < 1297215752 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: shudder still does far better than it has a right to :/ < 1297215806 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: you said it was a solo! :P < 1297215823 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric : elliott: By "solo" I do not mean "playing alone", I mean "primary instrument" :P < 1297215903 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :this is...not really what solo means? solo means ... a cadenza :P (it may also mean a single instrument from a given section playing, ya, but...not as commonly) < 1297215922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: make it a solo. < 1297215931 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: shh. < 1297215935 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: I dunno, guitar solos usually have other instruments too :P < 1297215941 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But this ... is not a solo, yeah. < 1297215955 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I will kill you both. < 1297215956 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :With fire. < 1297215985 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i will kill you back with SAX AND VIOLINS < 1297216078 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Holy shit, this might actually work. < 1297216082 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SEXYMAXIMUM < 1297216086 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Aww man, and it might not. < 1297216125 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297216145 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust butter (>[(-.)*500-(-.)*500(+.)*500+(+.)*500])*30 < 1297216179 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I predict low score. < 1297216188 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it only has one purpose ;) < 1297216188 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_butter: 19.7 < 1297216213 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i didn't expect it to score that high, but it did what it was supposed to! < 1297216223 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: thanks for augmenting the hill. it seems to encourage variety and multilateral strategies. < 1297216235 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :what was it supposed to do? < 1297216249 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: No, I think that the fact that people suddenly started paying attention encourages variety and multilateral strategies. < 1297216250 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :myndzi_butter.bfjoust vs quintopia_one_o_them_shudder_thangs.bfjoust: < 1297216251 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< < 1297216251 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :myndzi_butter.bfjoust wins < 1297216264 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :myndzi_butter.bfjoust vs quintopia_one_o_them_shudder_thangs.bfjoust: < 1297216264 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< < 1297216264 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :myndzi_butter.bfjoust wins < 1297216270 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :eh, the other one too < 1297216272 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :didn't copy to clipboard < 1297216279 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :anyway, i didn't bother to think about the timing < 1297216283 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :maybe i'll make it a little more robust < 1297216286 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: of course. and people care more because the hill is bigger >_> < 1297216291 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: the other one is identical < 1297216303 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i meant to copy its name though < 1297216312 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's not identical in appearance, but identical in functionality, yeah < 1297216325 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: ping < 1297216355 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1297216373 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the only difference iirc, is he used "1000000" while I used "384000"...but any constant over 384000/3 results in a program behaving identically < 1297216396 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtle_rescue_squad (.)*1000(>)*9(>[[-]..>>[-]..]) < 1297216396 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :like i said < 1297216403 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :different in appearance but not function < 1297216410 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Errr, that's borked X-D < 1297216419 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtle_rescue_squad: 0.0 < 1297216424 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297216427 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust butter (>[(-.)*128-(-.)*128(+.)*128+(+.)*128>])*30 < 1297216431 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtle_rescue_squad (.)*1000(>)*9(>[[-]..>>[-]..])*1000 < 1297216433 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Whoops < 1297216435 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: any program that uses offset clears also beats shudders < 1297216446 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_butter: 33.9 < 1297216449 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i almost get positive points < 1297216450 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtle_rescue_squad: 21.3 < 1297216458 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: because they feature [blahblah[-]] < 1297216465 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t readBase < 1297216466 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: `readBase' < 1297216486 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t foldl (\x y -> (x*256)+y) < 1297216488 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall b. (Num b) => b -> [b] -> b < 1297216488 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :how about a decoy just for lulz < 1297216489 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t foldl (\x y -> (x*256)+y) 0 < 1297216490 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall b. (Num b) => [b] -> b < 1297216494 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtle_rescue_squad (.)*1000(>)*9(>[[-]..>(>[-])*20])*21 < 1297216504 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: love the name < 1297216512 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtle_rescue_squad: 18.2 < 1297216518 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well, that's worse ... < 1297216521 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust butter -->+++++>+++++>----->----->+>->>(>[(-.)*128-(-.)*128(+.)*128+(+.)*128>])*30 < 1297216530 0 :augur!unknown@unknown.invalid NICK :augur[afk] < 1297216552 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_butter: 39.9 < 1297216556 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :hoho < 1297216556 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtle_rescue_squad (>+>-<<)*250(>)*9(>[[-]..>>[-]..])*1000 < 1297216557 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1297216566 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :positive points! < 1297216568 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :who'dathunk that'd work so well < 1297216570 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Why do I keep putting *1000 on something which by definition can't happen more than *20 ... < 1297216578 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i woulda thunk :) < 1297216588 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtle_rescue_squad: 19.0 < 1297216593 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's not all that different in some ways from careless < 1297216595 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Bleh, still worse X-P < 1297216612 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yeah it's pretty much a slowrush < 1297216616 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and i made it beat careless too < 1297216622 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1297216622 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :nah, it doesn't really loop like slowrush does < 1297216633 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297216635 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :but it's a rush < 1297216637 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's slow < 1297216643 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's not all that slow < 1297216646 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtle_rescue_squad -(>)*5(>+>-<<)*250(>)*4(>[[-]..>>[-]..])*21 < 1297216651 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it always advances < 1297216661 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and it has a fixed loop cycle < 1297216665 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtle_rescue_squad: 21.7 < 1297216668 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: What's the maximum tape cell value in BF Joust? < 1297216670 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i could probably make the loop cycle smaller too < 1297216675 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :a very long fixed loop cycle < 1297216680 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: 255, it's 8-bit < 1297216686 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i wonder what happens if i do < 1297216687 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust butter -->+++++>+++++>----->----->+>->>(>[(-.)*128(+.)*128>])*30 < 1297216702 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_butter: 32.8 < 1297216707 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :mk < 1297216715 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust die_hard >>>>>((-)*127[(+)*10]<)*4(--+)*10000 < 1297216725 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :fuck < 1297216729 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :just as i clicked it < 1297216745 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297216755 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust butter -->+++++>+++++>----->----->+>->>(>[(-.)*128(.-)*128>])*30 < 1297216816 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::1:4: < 1297216817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : My brain just exploded. < 1297216817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : I can't handle pattern bindings for existential or GADT data constructors. < 1297216817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Instead, use a case-expression, or do-notation, to unpack the constructor. < 1297216817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : In the binding group for < 1297216817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : FP foo < 1297216819 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : In a pattern binding: FP foo = fingerprints Map.! 1314212940 < 1297216821 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm glad I use a compiler whose brain can explode. < 1297216833 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(And that is still literate after this.) < 1297216837 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :right, well, it's going back the way it was :P < 1297216843 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_butter: 35.6 < 1297216843 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_die_hard: 1.7 < 1297216847 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i don't feel like optimizing its timing against shudder < 1297216847 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :1.7???? < 1297216849 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but that was awesome < 1297216854 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :why didn't that work < 1297216860 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust butter -->+++++>+++++>----->----->+>->>(>[(-.)*128-(-.)*128(+.)*128+(+.)*128>])*30 < 1297216861 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :someone link me to breakdown :P < 1297216862 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1297216863 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fuck you :D < 1297216866 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :OWNED < 1297216875 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for myndzi_butter: 38.8 < 1297216876 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :got you back ;) < 1297216921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust die_hard >>>>>((-)*127(-)*30<)*4(--+)*10000 < 1297216926 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :my damn test program is still on there haha < 1297216929 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i have no idea why < 1297216941 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :everyone else seems to be able to nuke their programs but nooo not me < 1297216958 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :mycroftiv: Probably it has a problem with \ < 1297216968 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ahhh, maybe so < 1297216975 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :can you manually remove it? < 1297216982 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust die\really\hard >>>>>((-)*127(-)*30<)*4(--+)*10000 < 1297216984 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>:D < 1297216992 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::rolleyes: < 1297216992 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_die_hard: 1.7 < 1297217005 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust \ < < 1297217010 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i'm at least a bit happier now that the shudder isn't my top performer < 1297217030 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :even though i don't have any great performers :P < 1297217062 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :.. !bfjoust in_egobot/.hg/dirstate lolz< < 1297217071 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Inferred type is less polymorphic than expected < 1297217071 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Quantified type variable `fp' escapes < 1297217071 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : When checking an existential match that binds < 1297217071 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : x :: fp < 1297217072 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1297217077 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_die\really\hard: 1.9 < 1297217077 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_\: 0.0 < 1297217083 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297217094 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust in_egobot \\\\\\\\\\\\\\\\\\\\\\\\\\ //////////////////////////////////////////////\\\\\\\\\/////// < 1297217099 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1297217100 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :at least they didn't make it on < 1297217104 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1297217107 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :darn :D < 1297217108 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :'cause UFAIL < 1297217121 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust \ [>[-]+] < 1297217145 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Heh, I accidentally explicitly ALLOWED \ instead of disallowing it :P < 1297217151 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :nice. < 1297217155 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :gotta love that! < 1297217161 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :be sure about / too < 1297217168 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_in_egobot: 7.0 < 1297217168 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_\: 11.6 < 1297217188 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: is it possible to make a program that never draws against itself in any configuration (although it obviously has to draw itself across all configs)? < 1297217196 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wow it works < 1297217199 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test\o\rama < < 1297217200 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :amazeinene < 1297217211 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: no because -- and ++ are testd < 1297217213 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*tested < 1297217215 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_test_o_rama: 0.0 < 1297217218 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :programs don't play themselves < 1297217234 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: sure they do, if you submit them twice with different names < 1297217241 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i don't understand your reasoning < 1297217249 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :that's not "themselves" though < 1297217255 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :that's "a copy" :P < 1297217261 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: program vs self = draw < 1297217273 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: WHY < 1297217276 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :anyway, i don't know; there isn't anything like pspace in corewars < 1297217280 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: because mathematics! < 1297217284 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and everything executes simultaneously < 1297217294 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :so i would have to say it probably can't happen < 1297217302 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :there's no way to make program logic diverge < 1297217319 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it seems intuitive that it shouldn't happen, but i don't know how to prove it can't happen < 1297217329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think ais523 sketch-proofed it at one point. < 1297217332 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i'm not interested in proving it ;) < 1297217337 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*proved < 1297217353 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i guess it would be something like < 1297217358 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :if they finish differently < 1297217367 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :there must be a first step where they did something different < 1297217399 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :but they are in identical states up to that point, so that can't happen < 1297217407 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :maybe you could take advantage of the fact that every other tape length they can operate on the same cell < 1297217418 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :no i don't think so < 1297217425 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :not really sure how that would make a difference though < 1297217435 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i mean, you could have them react differently, but they'd both react differently the same < 1297217435 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297217498 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :couldn't you prove it by pointing out that you could swap the programs and they would have the same behavior in every configuration? < 1297217502 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :unrelatedly: is it allowed to create anagol problems where the output is not deterministically determined by the input, or does the server only allow the checker to checker "did i get exactly this output back?" < 1297217513 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :since they are the same, nothing would change, but if you could make it not a draw in any one configuration, then the side that won would change < 1297217528 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :that can't happen since because they have the same code, swapping them won't affect anything < 1297217595 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: there are no checkers < 1297217599 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :only predefined input output pairs < 1297217636 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :surely there is at least a checker that checks that you got the right output from each input? < 1297217649 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :otherwise a human has to do it < 1297217672 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: it just checks that the output was the input. it's internal to the anagol code. < 1297217675 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :erm. < 1297217678 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it literally just runs it with the input < 1297217681 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and checks the output < 1297217683 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :what else could it do? < 1297217725 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's still a checker < 1297217734 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :not really < 1297217776 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :if you say it's not, then you are arguing that unit tests don't check anything either...seeing as how that is how most unit tests function < 1297217807 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Well, I don't see how it's something you can give a name other than "the only thing possible". < 1297217814 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What should it do, check that the outputs match iff one is rot13'd? < 1297217844 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it's certainly not the only thing possible. it's just the simplest thing possible. < 1297217891 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :for instance, you could have a program that checked that a sequence of bits was highly likely to be distributed uniformly at random, but that would be a more complex checker. < 1297217905 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that wouldn't be a golf checker < 1297217919 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's what i was asking :P < 1297217938 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :whether anagol allowed arbitrary check algorithms or not < 1297217947 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :since they are conceivable, i had to ask < 1297218080 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sweet, I have NO FUCKING IDEA how ( behaves in the face of multithreading. < 1297218553 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: you see clifford stoll's ted talk? < 1297218564 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Nope < 1297218625 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t replicateM < 1297218625 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall (m :: * -> *) a. (Monad m) => Int -> m a -> m [a] < 1297218862 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Note-to-logreading-self-to-ask-Deewiant: Does ) ever reflect? When? < 1297218868 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1297218869 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No, it never does. < 1297218948 0 :nddrylliog!~nddryllio@dhcp-83-219-104-237.customers.tvtnet.ch JOIN :#esoteric < 1297218955 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: ) should have reflected trying to unload nonexistent fingerprint 0 < 1297218957 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure that's true! < 1297218961 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"The corresponding ) "Unload Semantics" instruction unloads the semantics for a given fingerprint from any or all of the instructions A to Z (even if that fingerprint had never been loaded before). It pops a count and builds a fingerprint in exactly the same way." < 1297218962 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But okay... < 1297218986 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hi nddrylliog, i'm implementing funge-98 < 1297219004 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ohai! I will collapse soon. but good news :D has anyone implemented it yet? < 1297219010 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :collapse? < 1297219027 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog is secretly a house of cards. < 1297219030 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :also, yes; although, it took eight to nine years from its creation to the first time anyone implemented it correctly < 1297219032 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and that's not for lack of trying < 1297219078 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Now I don't know whether fingerprint instructions are per-IP or not. *sigh* TODO: Ask Deewiant. < 1297219101 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Shouldn't you be asking cpressey? < 1297219103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Totals grouped by language (dominant language first): < 1297219103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :haskell: 762 (100.00%) < 1297219103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Man, it's grown a lot today. < 1297219106 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It was, what, 400 lines before? < 1297219118 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Deewiant is the one who wrote the first compliant implementation, the only comprehensive and correct test suite... < 1297219128 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and cpressey himself responds to most Funge-98 questions with "Hell if I know". < 1297219182 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I misread you as saying that you will be the first to make a correct implementation < 1297219193 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No. There are... four, I believe. < 1297219202 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :CCBI, RC/Funge, cfunge, and efunge. < 1297219206 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION should learn to math < 1297219207 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: http://www.youtube.com/watch?v=Gj8IA6xOpSk < 1297219211 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :PyFunge isn't bad either, I think. < 1297219217 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh, wait. < 1297219218 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, "collapse" is just today's pretty word for "pass out" < 1297219219 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :HsFunge. < 1297219221 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Is compliant. < 1297219237 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: Surprisingly literate for someone on the verge of passing out. < 1297219295 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :elliott, surprisingly, and according to my various sleep schedules fuckedupery experiments, literacy isn't the first thing that goes out < 1297219310 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: Maybe you should stop fuckeduperying your sleep schedule :P < 1297219353 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog is turning into me! < 1297219374 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1297219375 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No he isn't. < 1297219394 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :elliott, oh no, it's the perfect recipe to spice up an otherwise boring life - the downside is that restraint is actually the first thing to go, which means I'll have to avoid whichever friends of mine were present tonight, I think < 1297219416 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I get the feeling that you're really happy nddrylliog :P < 1297219438 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION pukes on IE < 1297219454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :...Dude, why do you even come into contact with IE? < 1297219458 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You have absolutely no reason to. < 1297219459 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I can see how one could think that. I'm surprisingly drugfree though < 1297219466 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :farmingdale.edu doesn't work in Chrome < 1297219468 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: It was what some of us call sarcasm. < 1297219475 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :And I have no idea why < 1297219482 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: If you transferred to a real university that problem would disappear :P < 1297219490 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: http://www.farmingdale.edu/ works for me. < 1297219495 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also, Cybertown, when I want to visit < 1297219506 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Fails without www. because, you know, your college sucks. < 1297219518 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"FARMINGDALE STATE NAMED FIFTH MOST SAFE COLLEGE IN THE UNITED STATES BY THE DAILY BEAST" ;; well that's an achievement. < 1297219521 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FIFTH safest! < 1297219559 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Even www.farmingdale.edu doesn't work for me in Chrome < 1297219575 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, failed to load the first time (blank page) in chrome, reloaded, now everything's fine < 1297219577 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Ctrl-Shift-R made it work < 1297219587 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Bizarre < 1297219601 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :well apart from the fact that some people actually put the idea of naming a school with an anagram of "farming deal" into practice < 1297219618 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog, it's the name of the area < 1297219623 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: writing this has made me reach a stunning conclusion. < 1297219626 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Haskell is awesome. < 1297219629 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I know: i'm shocked too. < 1297219639 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :elliott, Atomo is written in Haskell < 1297219651 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Starting to regret taking Sgeo off ignore. < 1297219673 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :eeep < 1297219709 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :elliott, if Haskell is the only mainstream language that has learned *anything* from dependent types it's well enough to qualify for "awesome" as far as I'm concerned < 1297219762 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: Haha, I have some Dynamic in this (basically opaque runtime values that you can cast to another type and if the type is the type they started with, it succeeds, otherwise it fails and you get to handle that) because the type system wasn't quite enough to encode what I wanted < 1297219779 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(For fingerprints, the Funge-98 library/language-extension mechanism. And yes, there are many.) < 1297219783 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Possibly dozens.) < 1297219793 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :^source < 1297219793 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 < 1297219796 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :End goal is to be able to run ^ :P < 1297219861 0 :augur[afk]!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297219922 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :ah, Dynamic typing in Haskell, wonderful < 1297219927 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :what will be your next goal? static typing in Ruby? < 1297219951 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: :-D < 1297219962 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog: The great thing about Haskell is that it subsumes things like dynamic typing and imperative programming. < 1297219991 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And it can even "embed" them: although my implementation uses Data.Dynamic, outside of the internals, everything else sees it as strongly typed. < 1297220010 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :man, it's a felony to use words such as "subsume" at 4:13 in the "morning" < 1297220035 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*3:13 < 1297220037 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Darn Swiss. < 1297220045 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :oh my god, "subsumer" is actually a french verb as well < 1297220051 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297220053 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Darn French. < 1297220055 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :"to take as a premise" < 1297220059 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :awww. < 1297220076 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :I just saw Primer. Anyone *hasn't* seen it yet? < 1297220113 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I haven't! But it's on my Fiction Backlog. < 1297220124 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :nddrylliog, I haven't < 1297220191 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :ha! I would've thought that there would be a cult devoted to it on #esoteric < 1297220198 0 :nddrylliog!unknown@unknown.invalid PRIVMSG #esoteric :Sons, I'm disappoint < 1297220228 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I doubt I will ever beat CCBI2 on Fungicide... < 1297220241 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Have any of you people in here played Yomi card game? < 1297220246 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Mostly because wrapping in axis-aligned bounding boxes by solving Diophantines doesn't sound like my idea of fun. < 1297220253 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OK, it does, but it doesn't sound like my idea of something I could actually implement. < 1297220438 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: http://www.phlamethrower.co.uk/riscos/sdcreate.php Dude, run RISC OS on your Pandora. < 1297220442 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ANYWAY < 1297220444 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm sleeping now. -> < 1297220447 0 :elliott!unknown@unknown.invalid QUIT :Quit: Leaving < 1297220909 0 :amca!unknown@unknown.invalid QUIT :Quit: Farewell < 1297221048 0 :augur[afk]!~augur@129.2.129.34 JOIN :#esoteric < 1297221290 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://lonelydino.com/cache/347.png The real subtext behind all Dinosaur Comics. < 1297221386 0 :nddrylliog!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297221607 0 :ndd!~ndd@dhcp-83-219-104-237.customers.tvtnet.ch JOIN :#esoteric < 1297221625 0 :ndd!unknown@unknown.invalid NICK :nddrylliog < 1297222071 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: hey, instead of always putting the last bfj breakdown in a single file, can you generate a breakdown digest for each program? and you could still cache them and update only the lines that need updating and this is way too much to ask of you innit? < 1297222099 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's doable, I just don't want to :P < 1297222105 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The difficulty is just that it's all cached. < 1297222238 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :okay fine, how about at least making it output to PROGNAME_brkdn.txt and don't worry about updating them when they get out of date? is that easy? < 1297222265 0 :azaq23!unknown@unknown.invalid QUIT :Quit: Leaving. < 1297222275 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that would at least get rid of the issue of having your program results disappearing as soon as someone else adds another program < 1297222369 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'll do that ... uhh, tomorrow? Doing something else right now and don't want to context switch :P < 1297224263 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :in the future you can add more cache to your working memory, and be able to do context switches without invalidating and mental cache lines < 1297224263 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :*any < 1297224292 0 :myndzi!unknown@unknown.invalid QUIT :*.net *.split < 1297224293 0 :Mannerisky!unknown@unknown.invalid QUIT :*.net *.split < 1297224293 0 :miekko!unknown@unknown.invalid QUIT :*.net *.split < 1297224293 0 :Herobrine!unknown@unknown.invalid QUIT :*.net *.split < 1297224294 0 :dbc!unknown@unknown.invalid QUIT :*.net *.split < 1297224295 0 :aloril!unknown@unknown.invalid QUIT :*.net *.split < 1297224295 0 :coppro!unknown@unknown.invalid QUIT :*.net *.split < 1297224296 0 :SimonRC!unknown@unknown.invalid QUIT :*.net *.split < 1297224296 0 :rodgort!unknown@unknown.invalid QUIT :*.net *.split < 1297224296 0 :mtve!unknown@unknown.invalid QUIT :*.net *.split < 1297224297 0 :cal153!unknown@unknown.invalid QUIT :*.net *.split < 1297224297 0 :poiuy_qwert!unknown@unknown.invalid QUIT :*.net *.split < 1297224297 0 :pikhq!unknown@unknown.invalid QUIT :*.net *.split < 1297224297 0 :tswett!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :olsner!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :lifthrasiir!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :shachaf!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :Gregor!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :Ilari_antrcomp!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :Zuu!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :variable!unknown@unknown.invalid QUIT :*.net *.split < 1297224298 0 :Slereah!unknown@unknown.invalid QUIT :*.net *.split < 1297224345 0 :cal153!~cal@c-24-4-207-72.hsd1.ca.comcast.net JOIN :#esoteric < 1297224345 0 :Ilari_antrcomp!~user@2002:5870:38d7:0:20e:a6ff:fe6f:2288 JOIN :#esoteric < 1297224345 0 :poiuy_qwert!~poiuy_qwe@CPE001b115db0ae-CM0018c0c24ffc.cpe.net.cable.rogers.com JOIN :#esoteric < 1297224345 0 :pikhq!~pikhq@71-219-212-26.clsp.qwest.net JOIN :#esoteric < 1297224345 0 :aloril!~aloril@84.249.126.153 JOIN :#esoteric < 1297224345 0 :myndzi!myndzi@c-24-19-39-178.hsd1.wa.comcast.net JOIN :#esoteric < 1297224345 0 :Zuu!zuu@unaffiliated/zuu JOIN :#esoteric < 1297224345 0 :variable!~variable@unaffiliated/variable JOIN :#esoteric < 1297224345 0 :Slereah!x@ANantes-259-1-10-216.w92-135.abo.wanadoo.fr JOIN :#esoteric < 1297224345 0 :Mannerisky!~mannerisk@71-38-55-113.frgo.qwest.net JOIN :#esoteric < 1297224345 0 :tswett!ihope@128.12.169.86 JOIN :#esoteric < 1297224345 0 :SimonRC!~sc@fof.durge.org JOIN :#esoteric < 1297224345 0 :rodgort!~rodgort@li125-242.members.linode.com JOIN :#esoteric < 1297224345 0 :coppro!~scshunt@taurine.csclub.uwaterloo.ca JOIN :#esoteric < 1297224345 0 :miekko!miekko@infa.abo.fi JOIN :#esoteric < 1297224345 0 :dbc!~daniel@130-94-161-238-dsl.hevanet.com JOIN :#esoteric < 1297224345 0 :olsner!~salparot@c83-252-161-133.bredband.comhem.se JOIN :#esoteric < 1297224345 0 :mtve!~mtve@65.98.99.53 JOIN :#esoteric < 1297224345 0 :Gregor!~Gregor@codu.org JOIN :#esoteric < 1297224345 0 :shachaf!~shachaf@208.69.183.87 JOIN :#esoteric < 1297224345 0 :Herobrine!~Herobrine@208.78.103.223 JOIN :#esoteric < 1297224345 0 :lifthrasiir!~lifthrasi@61.251.165.38 JOIN :#esoteric < 1297224345 0 :Ilari!unknown@unknown.invalid QUIT :*.net *.split < 1297224345 0 :Wamanuz5!unknown@unknown.invalid QUIT :*.net *.split < 1297224345 0 :Vorpal!unknown@unknown.invalid QUIT :*.net *.split < 1297224345 0 :fungot!unknown@unknown.invalid QUIT :*.net *.split < 1297224497 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is this working? < 1297224511 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :[message test] < 1297224549 0 :pikhq!unknown@unknown.invalid QUIT :Write error: Broken pipe < 1297224550 0 :pikhq_!~pikhq@71-219-212-26.clsp.qwest.net JOIN :#esoteric < 1297224554 0 :augur[afk]!unknown@unknown.invalid QUIT :Ping timeout: 250 seconds < 1297224562 0 :Ilari!~user@2002:5870:38d7::1 JOIN :#esoteric < 1297224562 0 :Wamanuz5!~Wamanuz@78-69-168-43-no84.tbcn.telia.com JOIN :#esoteric < 1297224562 0 :Vorpal!~AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1297224562 0 :fungot!~fungot@momus.zem.fi JOIN :#esoteric < 1297224581 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :^source < 1297224596 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 < 1297224939 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: < 1297224959 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i got split onto the smaller half i think < 1297225001 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: You did? What do you have to do about it? < 1297225118 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh nothing < 1297225120 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :For your information, I have received TIME responses from the following: nddylliog,fizzie,Sgeo,joo,sebbu,Zuu,clog,taotree,pingveno,copumpkin,Slereah,Leonidas,ineiros,variable,quintopia,Mannerisky,aloril,dbc,Deewiant,jix,poiuy_qwert,cal153,fizzie,SimonRC,olsner,miekko,mycroftiv,pikhq_,shachaf,tswett,Gregor,Gregor,lifthrasiir < 1297225128 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the split ended pretty much instantly < 1297225132 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(I did get two responses from Gregor) < 1297225382 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1297225411 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :are you gonna kick everyone that doesn't? :P < 1297225417 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1297225450 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I am just wondering why there isn't many message in here at this time?? < 1297225455 0 :pikhq_!unknown@unknown.invalid NICK :pikhq < 1297225466 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, that's why. < 1297225482 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: The split lagged me out somehow. < 1297225530 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1297225567 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: because no one is chatting. elliott left, gregor is busy, and the others haven't said anything in an hour anyway < 1297225573 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK < 1297225596 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: is one beer past the ballmer peak? < 1297225600 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :or not enough? < 1297225605 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Probably not. < 1297225747 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Do you think what I have in TeXnicard so far is good? Any suggestion? < 1297225768 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :tbh, i haven't tried to use it < 1297225786 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i could try to find someone who would want to... < 1297225794 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Have you looked at any of the source files though? < 1297225832 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1297225837 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(Without that, you probably will not be able to use it, since there is no user documentation yet) (But if you can help with making user documentation and those things, that would help good) < 1297225839 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it's not really my bag < 1297225962 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Do you try to find someone who knows how to (and want to) help with these things? < 1297226135 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Also tell me if you have any feature suggestions, in case I might not put it in the first version I will list them in the chapter titled "The Future". (I put a few things there already?) < 1297226235 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :'kay < 1297226261 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :btw, GTAIV minus car tire friction is the MOST HILARIOUS THING I'VE SEEN ALL DAY < 1297226276 0 :augur[afk]!~augur@129.2.129.34 JOIN :#esoteric < 1297226340 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: GTAIV? Is that Grand Theft Auto? Is it more difficult when friction is adjusted or removed? < 1297226367 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Or is it easier to drive your car since you can do it in any way without resistance? < 1297226499 0 :augur[afk]!unknown@unknown.invalid NICK :augur < 1297227087 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: imagine walking up to a parked car, shooting at it, and having it go flying into the nearest building, bouncing off, and flying back at you < 1297227160 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, so that's what it does. < 1297227243 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: http://www.geek.com/articles/games/grand-theft-auto-iv-without-friction-becomes-carmageddon-20110113/ < 1297227265 0 :Sgeo_!~Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1297227321 0 :Sgeo_!unknown@unknown.invalid QUIT :Client Quit < 1297227422 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I made a game once, I put in an option, that if selected, makes it the balls won't stay still! And this makes it more difficult. < 1297227522 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: If there is no friction, can you drive without gasoline in the car? < 1297227590 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :This Nickleback song is distinct from the other Nickleback song I know < 1297227606 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :How improbable. < 1297227614 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: I never heard of it. < 1297227656 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Photograph and Figured You Out < 1297227716 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: no, you can move without gas yes, but you can't drive, as that implies the ability to steer or control the car < 1297227762 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Can you save fuel by only turning it on when you want to change direction? < 1297227785 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :You can't turn without friction. :-) < 1297227795 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :...the only way you can change direction is by bouncing off of buildings < 1297227808 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :and you don't exactly get to decide where you bounce < 1297227829 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :In that case why do you need fuel? < 1297227854 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: nickelback had a couple of good songs. I am eternally amused by Animals. < 1297227880 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :According to pikhq, they only have one song < 1297227902 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: s/pikhq/most people/ < 1297227904 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Can you do some things illegal by purpose to make the police car push your car in the direction you want to move? < 1297227918 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Seriously, it's what they're known for. < 1297227935 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: interestingly, Sgeo did not name that song < 1297227972 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: the police car is also a car. it also has no ability to control. did you watch the video i linked? < 1297228023 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: No I watched no video. But of course I know the police car is also a car. But I thought somehow the computer would make it start moving the right way. < 1297228040 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :If you can use a gun, then can you also use the gun to shoot other cars to make them hit your car to move it in the direction you want? < 1297228041 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION now hears a nostalgia-inducing Eminem song < 1297228048 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Well, not nostalgia < 1297228052 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Just... memory-inducing < 1297228064 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Or can you only use the gun when not in the car? < 1297228066 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty glad I'm past that point in my life < 1297228068 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yes you can control the cars via shooting at them just right, but it's very difficult. < 1297228086 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :esp. since once you are in a car you can only shoot one direction < 1297228102 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :and the car you are in will quickly be flying through the air upside-down < 1297228104 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And you have to not run out of ammunition, I guess. < 1297228113 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm sure it was an Eminem song that sounded as though it was related to getting banned from Cybertown < 1297228136 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :At any rate, this song is surely from a point in my life where I.. might not have been such a good person < 1297228157 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :now this looks like a job for me < 1297228161 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :And I'm shutting up now. This is getting close to things I will not talk about. < 1297228163 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so everybody just follow me < 1297228174 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :cause we need a little controversy < 1297228180 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :quintopia, oh, that's the one that sounded like a Cybertown ban < 1297228183 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :cause it feels so *empty* without me < 1297228198 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Or.. not? < 1297228217 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :eminem was someone < 1297228221 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :who made more than 3 songs < 1297228518 0 :calamari!~calamari@ip70-162-184-205.ph.ph.cox.net JOIN :#esoteric < 1297228528 0 :asiekierka!~asiekierk@178235033089.elblag.vectranet.pl JOIN :#esoteric < 1297228829 0 :calamari!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1297229623 0 :calamari!~calamari@ip70-162-184-205.ph.ph.cox.net JOIN :#esoteric < 1297230369 0 :calamari!unknown@unknown.invalid QUIT :Quit: Leaving < 1297230567 0 :asiekierka!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297230696 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Can we make Binary Modular SNUSP Golf? If we use four bits for each command, there are 12 commands so we can have 4 metacommands that tell it to skip a number of spaces and go to the next row. < 1297230741 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :we could. would you want to? < 1297230819 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I might, at some time < 1297232310 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :...is that right? *pic|=(0xFF>>b)&~(0xFF>>(b+c)); < 1297233025 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1297233161 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: ? < 1297233316 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It is a C code, is it not? < 1297233367 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :From a quick glance, it looks like setting c consecutive bits in a byte, starting from the b'th, counted from MSB. < 1297233418 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Yes. I am making GF->PBM? < 1297233548 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1297233758 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297233922 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297233929 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :so its a bitmask < 1297233938 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that selects the bth through b+cth bits < 1297233941 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :got it < 1297233943 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :erm < 1297233949 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :b+c-1th < 1297234314 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Vorpal: ping <-- pong < 1297234685 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :slooooooow < 1297234844 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :bbl university < 1297235073 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric : \m/ \m/ < 1297235073 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :            `\o/´ < 1297235073 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :              | < 1297235073 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :             /`\ < 1297235074 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :           (_| |_) < 1297235125 0 :augur!~augur@208.58.6.161 JOIN :#esoteric < 1297235269 0 :GreaseMonkey!~gm@unaffiliated/greasemonkey JOIN :#esoteric < 1297235330 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I now have sent the changes I made (which includes the C codes I posted here). Is it good? < 1297236402 0 :quintopia!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297237024 0 :quintopia!~quintopia@74.117.158.92 JOIN :#esoteric < 1297237024 0 :quintopia!unknown@unknown.invalid QUIT :Changing host < 1297237024 0 :quintopia!~quintopia@unaffiliated/quintopia JOIN :#esoteric < 1297237667 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1297237713 0 :oerjan!oerjan@tyrell.nvg.ntnu.no JOIN :#esoteric < 1297237735 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1297237811 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :egobot!!!!! :( < 1297237832 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :`run ps -e | grep report < 1297237895 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the world is broken < 1297237938 0 :Mathnerd314!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297237982 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :11864 ? 00:00:00 report < 1297238140 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wooo! < 1297238238 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : I blame oerjan for this < 1297238264 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wait, you say it put the new IP in the wrong place in the queue? :( < 1297238279 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well it _should_ be trivial to fix. < 1297238341 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :what is the syntax in a regex for "not this string" < 1297238352 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :aka, match "david" but not "david bowie" < 1297238371 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :there's [^t] for "not t" < 1297238375 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :negative lookahead? < 1297238381 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :yeah oerjan < 1297238387 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well look it up < 1297238392 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297238399 0 :clog!unknown@unknown.invalid QUIT :ended < 1297238400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1297238440 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION doesn't remember that stuff < 1297238646 0 :Sgeo!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297238748 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :(?!) apparently < 1297238953 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Reboot < 1297239298 0 :oerjan!oerjan@tyrell.nvg.ntnu.no JOIN :#esoteric < 1297240146 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Dammit now _adobe_ wants a reboot too... < 1297240275 0 :GreaseMonkey!unknown@unknown.invalid QUIT :Quit: ilua < 1297240316 0 :oerjan!oerjan@tyrell.nvg.ntnu.no JOIN :#esoteric < 1297240403 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297240458 0 :poiuy_qwert!~poiuy_qwe@CPE001b115db0ae-CM0018c0c24ffc.cpe.net.cable.rogers.com JOIN :#esoteric < 1297240534 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!help < 1297240536 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . < 1297240541 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!info < 1297240541 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :EgoBot is a bot for running programs in esoteric programming languages. If you'd like to add support for your language to EgoBot, check out the source via mercurial at https://codu.org/projects/egobot/hg/ . Cheers and patches (preferably hg bundles) can be sent to Richards@codu.org , PayPal donations can be sent to AKAQuinn@hotmail.com , complaints can be sent to /dev/null < 1297240900 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :bf joust is written in _perl_? 8D < 1297240909 0 :joo!unknown@unknown.invalid QUIT : < 1297241056 0 :cheater-!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297241127 0 :cheater-!~cheater@g230231055.adsl.alicedsl.de JOIN :#esoteric < 1297241151 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: no < 1297241173 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it's an amalgam of c, perl, and shell script :P < 1297243034 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :!help languages < 1297243034 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh. < 1297243038 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :!help userinterps < 1297243038 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :userinterps: Users can add interpreters written in any of the languages in !help languages. See !help addinterp, delinterp, show | !userinterps. List interpreters added with !addinterp. < 1297243132 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :!userinterps < 1297243132 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Installed user interpreters: aol austro b1ff bc bct bfbignum brit brooklyn bypass_ignore bytes chaos chef chiqrsx9p choo cockney ctcp dc decisionengine drawl drome dubya echo eehird ehird fudd funetak google graph gregor he hello id jethro kraut num ook pansy pi pirate plot postmodern postmodern_aoler redneck reverse rimshot rot13 sadbf sfedeesh sffedeesh sffffedeesh sffffffffedeesh simpleacro slashes svedeesh swedish valspeak warez yodawg < 1297243962 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: well i meant the program that actually runs a single duel < 1297244198 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :now the other repository files aren't loading :( < 1297244273 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i cannot say i understand the program, but what is that my $tapemaxel = int(rand(20))+10; < 1297244302 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: ^ ? i thought bfjoust ran duels with all the tape lengths. < 1297244319 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!help < 1297244319 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . < 1297244345 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm EgoBot is alive but the repository is not responding. < 1297244357 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess this is an unlikely time for Gregor to be awake < 1297244435 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i had this great idea for an algorithm to parse bfjoust programs efficiently even if the contents of ()* and ({})% don't match... but there is no way i'm trying to write it in perl :D < 1297244466 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Why? < 1297244540 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: because it involves adding mismatching annotations to the data, and also because it is much easier if i can use laziness from haskell < 1297244585 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i.e. it would not be nice to do it with pure string matching, and i'm not proficient enought with the rest of perl. < 1297244596 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*enough < 1297244624 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh and of course this is also inspired by this egodeath thing < 1297244808 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm that's funny... < 1297244882 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK < 1297244888 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What is this egodeath thing? < 1297244915 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And what are the numbers you sent to me? < 1297244944 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: someone made a bf joust program that expands to such size that egobot's interpreter cannot handle it < 1297244950 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or only barely < 1297244986 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i sent you a ping request, it's for checking irc connectivity. i seem to have a problem reaching the web just now, but irc is fine... < 1297245020 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is it a DNS problem? < 1297245030 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm i also cannot open a new connection to nvg (which i'm irc'ing through) < 1297245047 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess a DNS problem would be a likely cause... < 1297245049 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What is nvg? < 1297245091 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: my old computer club from university, i'm still a member and use it for email, irc, my web page and stuff < 1297245134 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(it's a shell account) < 1297245175 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Can you connect if you know its IP address? < 1297245203 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :interesting question. let me try elliott's logs < 1297245227 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes, you are correct. must be DNS then. < 1297245309 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is it 129.241.210.70 < 1297245337 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(That is the address you are connecting from) < 1297245360 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(If the "tyrell." is removed the last octet is 67) < 1297245379 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: that's the right subnet, i recall the 129.241.*. however i don't need a new connection to that right now. < 1297245397 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i was more trying to browse the web in general. < 1297245421 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you cannot connect to https: via ip, can you? egobot's repository is https. < 1297245433 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or maybe i could try. < 1297245448 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: what is the ip for codu.org? < 1297245465 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :64.62.173.65 < 1297245523 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: ah using the ip and changing https to http worked. thank you! < 1297245904 0 :cheater-!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297246277 0 :copumpkin!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297246303 0 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1297246568 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Trying a rehibernation < 1297246751 0 :cheater-!~cheater@e181133032.adsl.alicedsl.de JOIN :#esoteric < 1297246780 0 :oerjan!oerjan@tyrell.nvg.ntnu.no JOIN :#esoteric < 1297246858 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well that didn't help any, had to use that ip to get back on irc < 1297247002 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah the repair option in the control panel worked < 1297247184 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Features for future versions of TeXnicard (not any time soon) might be: a database to keep track of cards sold, a full text search for all card sets in the game, and to be able to play the cards on the computer (in rule-enforcing programs). < 1297247269 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :My idea for making it to playing the cards on the computer, is something like Inform7 and then have it to compile into C codes, or something like that? < 1297247311 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Do you know anything of these kind of things? < 1297247369 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1297247399 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK < 1297247452 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :But do you think these might be good ideas? < 1297247548 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sounds good in principle < 1297247580 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but i'm not a very practical programmer to be asking < 1297247597 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Well, I won't do anything like this quite yet, so it doesn't really matter at this time. < 1297248248 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Did you know that Hercule Poirot is mentioned in the index of TeX: The Program? < 1297248358 0 :pingveno!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1297248429 0 :pingveno!~pingveno@c-98-246-133-8.hsd1.or.comcast.net JOIN :#esoteric < 1297248556 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :recent xkcd blag might suggest that a Raptor Hobo Badger Narwhal Doctor would be a rare thing. < 1297248596 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION couldn't fit in both Doctor and Zombie without repeating Narwhal < 1297248708 0 :iconmaster!~rooms@dsl-72-18-49-91.bbr0.brdtny.empacc.net JOIN :#esoteric < 1297248773 0 :iconmaster!unknown@unknown.invalid QUIT :Client Quit < 1297249811 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, I was sleeping, thank's for the highlight ;) < 1297249828 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :(yeah, i just woke up moments ago, and it's 12:30) < 1297250122 0 :aloril!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1297250834 0 :aloril!~aloril@dsl-tkubrasgw3-fe7ef900-153.dhcp.inet.fi JOIN :#esoteric < 1297251129 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :sebbu: What highlight? < 1297251314 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :7h20 ago < 1297251366 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I still don't know what highlight. < 1297251377 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Perhaps the CTCP TIME? < 1297251406 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That was about 7 hours, 20 minutes ago. < 1297251424 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I typed that just to see if the net split was causing any problems. < 1297251552 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: it's usually CTCP PING that is used for that (like i did) although that requires some client support to get accurate timing < 1297251642 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :basically you let the message with the PING be the time it was sent, then the message is sent back and you can subtract the times of return and sending < 1297251661 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :CTCP DING, says the microwave oven. < 1297252084 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(I sent the command to the channel, to ensure that everyone can still receive messages from the channel.) < 1297252437 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :i often get ? sec from ctcp ping < 1297253065 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sebbu: maybe your client is confused about the time format it puts in the ping message? (i don't know if it's standardized across clients; i see no reason why it should be) < 1297253095 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :no, he highlighted AFTER, for saying the people who answered < 1297253119 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sebbu: um i was referring to i often get ? sec from ctcp ping < 1297253130 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :[13:23:11] * Received a CTCP PING 1297254214 984196 from oerjan < 1297253168 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sebbu: yeah and that came back alright giving a result of 0.350 seconds < 1297253218 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :that's high, i got a third of that on google < 1297253260 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :...you don't ping google via irc do you... < 1297253285 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ctcp pings presumably have to pass through all the immediate irc servers < 1297253343 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and i'd imagine google has servers in france or something < 1297253372 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1297253514 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm tracerouting www.google.no from here gives quite a number of hops _inside_ google's network < 1297253773 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The PING format isn't very standard, no; I've seen at least both "[seconds after 1970]" and "[seconds after 1970] [microseconds]" formats. < 1297253814 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess that's the latter in mine above < 1297253841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :XChat sent "1297205009020833" while irssi did "1297255033 498239" now. < 1297253872 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well that looks just like a spacing difference < 1297253885 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The one with space doesn't necessarily 0-pad. < 1297253890 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :anyway, only the client that sent it needs to understand its format < 1297253894 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also since the bouncer sends distributes the replies to both connections, I have: < 1297253897 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :14:36 [freenode] CTCP PING reply from : -1297203852425989.-91 seconds < 1297253902 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :* Ping reply from fizzie: 1297203738.89 second(s) < 1297253942 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :...what. < 1297254038 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The replies are just messages, so they go to both (simultaneously connected) clients of the bouncer; it doesn't bother tracking which one sent the actual request. (And that'd be a bit brittle too, since you can't really tell which response corresponds to which request.) < 1297254056 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(In general, I mean. For PING you sort-of could guess.) < 1297254076 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1297254102 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is that why I got two responses from Gregor? < 1297254121 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It could well be. < 1297254305 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The multi-client thing is a bit corner-casey. If I /whois someone in one client, there's a spurious whois-reply in the other; and XChat's periodic NAMES #channel polls (presumably for the away/not-away nick coloring of the nicklist) show up in irssi too. < 1297254314 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: dammit hg repository and it's horizontal scrollbar placement... < 1297254327 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*repository browser < 1297254366 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :utterly useless < 1297255087 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1297255812 0 :oerjan!unknown@unknown.invalid QUIT :Quit: leaving < 1297256187 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297257772 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :6 °F < 1297257773 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Feels Like -1 °F < 1297257809 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The HIGH today is 11 X_X < 1297257910 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(That's -14, -18 and -12 centigrade, btw) < 1297258058 0 :copumpkin!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297258083 0 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1297258520 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :-8.5 °C here now; the five-day forecast is claiming -20 °C for Monday morning, though. < 1297258648 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :They have a "feels like" number of -18 °C for today, too; I don't really know how that gets computed. < 1297258771 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A weather station in Resolute, Nunavut, Canada is saying -42 °C now, so I guess we don't have anything to complain about. (The page lists high/low numbers from around the world.) < 1297259215 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I also don't know how you would compute "feels like" temperature; I don't know if Wikipedia has any information about that, either. < 1297259216 0 :nddrylliog!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297259257 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Wind speed and relative humidity might be what it uses as inputs, but I'm sure it's rather unscientific. < 1297259397 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's a couple of related equations at http://en.wikipedia.org/wiki/Heat_index and http://en.wikipedia.org/wiki/Wind_chill < 1297259403 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :They look pretty empirical. < 1297259578 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not quite sure how those two would be sensibly combined. < 1297259949 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"The thermometer outside the kitchen window may read 20, but then a voice on the radio announces that because of the wind, humidity and a fast-moving nonsense front it feels like 127,000 degrees below zero, that in fact the entire universe has ground to a halt because of the wind chill." < 1297259979 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1297260032 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also one weather reporting service has a proprietary "RealFeel temperature" index: "It is a unique composite of the effects of temperature, wind, humidity, sunshine intensity, cloudiness, precipitation and elevation on the human body--everything that affects how warm or cold a person feels." < 1297260091 0 :elliott!~elliott@unaffiliated/elliott JOIN :#esoteric < 1297260147 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and it is also patented. < 1297260265 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :05:19:53 This Nickleback song is distinct from the other Nickleback song I know < 1297260265 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :A priori -- no, it isn't. < 1297260292 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :05:24:43 According to pikhq, they only have one song < 1297260292 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Try 0 < 1297260297 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1297260301 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I read that as one good song < 1297260311 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yes, it is well-known that Nickelback have one song. and it's terrible < 1297260341 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :05:28:37 I'm sure it was an Eminem song that sounded as though it was related to getting banned from Cybertown < 1297260341 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if only quoting Sgeo's lines from the logs makes me the author of an unfair portrayal. < 1297260386 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :07:12:00 Vorpal: ping <-- pong < 1297260386 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :07:20:51 bbl university < 1297260386 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :... < 1297260390 0 :cheater-!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297260407 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:17:52 wait, you say it put the new IP in the wrong place in the queue? :( < 1297260407 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:18:07 well it _should_ be trivial to fix. < 1297260410 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :lol, i fixed it < 1297260447 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :09:52:54 quintopia: well i meant the program that actually runs a single duel < 1297260448 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's not perl oerjan < 1297260450 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's the old version < 1297260453 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :egojoust is in C < 1297260522 0 :cheater-!~cheater@e181133165.adsl.alicedsl.de JOIN :#esoteric < 1297260581 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The lights on my keyboard are broken they usually don't work. All of the keys work, though. < 1297260804 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :10:13:07 Can you connect if you know its IP address? < 1297260804 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :10:13:35 interesting question. let me try elliott's logs < 1297260804 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I will refrain from buying a domain then < 1297260825 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :10:17:40 zzo38: what is the ip for codu.org? < 1297260829 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :we need a dnsbot :D < 1297260831 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :dns over irc < 1297260924 0 :augur!~augur@129.2.129.34 JOIN :#esoteric < 1297261077 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297261217 0 :Sgeo!~Sgeo@137.125.187.237 JOIN :#esoteric < 1297261239 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend12 http://sprunge.us/ibGT < 1297261241 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend13 http://sprunge.us/jQfB < 1297261252 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hi ais523 < 1297261257 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi elliott < 1297261274 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION starts finishing Fingerprint support < 1297261326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was working on those last night; 12 is a mix of 7, 10, and something else, using myndzi's suggestion of multiple decoys and adapting the strategy to how the opponent seems to be behaving; and 13 is 12 but detecting defence programs and using a counter-defence strategy rather than defending if they're seen (which both me and impomatic were trying to do yesterday) < 1297261328 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm, is there an easy way to create a bunch of code lines from a template in emacs < 1297261329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297261337 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I want 26 lines exactly the same except for A-Z < 1297261352 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I normally use keyboard macros for that sort of thing < 1297261359 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but have to look up the commands to do it each time < 1297261359 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you mean emacs macros? < 1297261363 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297261364 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, just keystroke recordings < 1297261366 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Quit: This computer has gone to sleep < 1297261383 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: obligatory: in amend, you can just write a program to do it < 1297261390 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(OK, you can in Emacs too, but nobody remembers how to use elisp) < 1297261392 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if it's just A-Z, I'd make a bunch of copies of the line via copy-and-paste, and then change a column by hand < 1297261401 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297261406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perhaps using picture-mode to make the cursor go down the column < 1297261448 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend13: 59.1 < 1297261448 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend12: 47.4 < 1297261452 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not bad at all < 1297261453 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nice! < 1297261470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :amend mockup: Ctrl+E forM_ ['B'..'Z'] $ \c -> insert $ ", fpIns" ++ [c] ++ " :: Shiro ()" < 1297261498 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :arguably, using a bunch of record-fields in place of a 26-long list is a microoptimisation :) < 1297261501 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was testing on an old hill; defend13 beat all but one program (impomatic_mirage, which wins 22 out of the 42 possibilities) < 1297261517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that was without me tweaking constants to beat programs in particular < 1297261525 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :gah, I think I might have to store the relevant fp < 1297261527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I could have tweaked it to beat mirage, possibly, but it feals a bit like cheating < 1297261583 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*feels < 1297261596 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :The corresponding ) "Unload Semantics" instruction unloads the semantics for a given fingerprint from any or all of the instructions A to Z (even if that fingerprint had never been loaded before). It pops a count and builds a fingerprint in exactly the same way. < 1297261601 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Why can't it just pop the most recently loaded one >_)< < 1297261602 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*>_< < 1297261651 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it basically pops the semantics stack for every command implemented by that fingerprint < 1297261660 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is in a sense an even simpler operation < 1297261795 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, it doesn't < 1297261806 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it only pops _its_ entry < 1297261809 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, that's how Mycology/CCBI/cfunge interpret it < 1297261815 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and it only pops it if it's loaded < 1297261820 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"unloads the semantics for a given fingerprint from any or all of the instructions A to Z" < 1297261827 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :unloading another fingerprint's semantics isn't unloading the semantics < 1297261839 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I can't see any way to defend that interpretation < 1297261862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :see the section below < 1297261883 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unloading the semantics is defined as popping a semantics stack < 1297261890 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: possibly < 1297261899 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :gah, this spec is so badly written < 1297261905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on the other hand, it's possible from the spec that that stack is per-fingerprint < 1297261945 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, that's even more broken than the typical interpretation < 1297261967 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think that spec has to be interpreted as "when a fingerprint is unloaded, each of the commands implemented by that fingerprint are set to the meanings they had immediately before it was loaded" < 1297261973 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297261981 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: indeed, as far as I can tell, the pure interpretation is that every fingerprint has 26 variables < 1297261982 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so, e.g., if you load A, load B, unload A, unload B, the common commands now have A's semantics < 1297261990 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yep, oh my < 1297261991 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant! < 1297261998 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: 26 stacks, there's no ban on loading a fingerprint more than once < 1297262006 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :er, right < 1297262008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think CCBI is wrong on this, as is Mycology < 1297262014 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: unlike the "y bounds are actually useless" thing I found, this is actually a real problem :-D < 1297262019 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and not one that ruins the language, so not an ignorable one < 1297262024 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: indeed, probably cfunge too then < 1297262032 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, it wouldn't pass mycology if it did it correctly < 1297262047 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: OTOH, the actual _definition_ of the ) instruction seems marginally saner < 1297262050 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so which do we go by? < 1297262060 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(the definition doesn't _contradict_ the following, but it doesn't imply it either) < 1297262085 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I dont think they contradict each other, thus we have to take the meaning that makes them both correct < 1297262100 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is that unloading a fingerprint restores each of its commands to what they did before the fingerprint was loaded < 1297262158 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There is that one point of ): it unloads from the defined instructions "even if that fingerprint had never been loaded before". That doesn't really make sense if you read the first part so that a fingerprint is only capable of unloading its own semantics. < 1297262202 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, apparently the Java floating point infinite loop bug is not only remotely exploitable on most Java-based servers, but apparently Sun has known about it for over 10 years < 1297262206 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: arguably, it just runs the unload code anyway < 1297262210 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and the stacks are initialised with... reflects? < 1297262212 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where "apparently" means "stated without source in a Slashdot submission" < 1297262220 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And there's the save/restore thing which explicitly says it's push/pop. < 1297262231 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that's what we're going by < 1297262233 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: yep, the push/pop seems to be based on a per-fingerprint stack, though, not per-command < 1297262252 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: A source that uses a broken link as a primary source: http://www.exploringbinary.com/java-hangs-when-converting-2-2250738585072012e-308/ < 1297262256 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's nothing there that suggests the stacks are INTERCAL-style stashes rather than working more like a callstack < 1297262260 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: haha < 1297262263 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297262269 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Where did you deduce the per-fingerprint stack, though? < 1297262270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I mean, I know the bug exists, it's easy to verify < 1297262271 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, it claims it worked previously < 1297262272 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think it's ambiguous enough that I'll do the Mycology interpretation < 1297262278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sun knowing about the source for over 10 years, though... < 1297262281 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but, please, argue with Deewiant and tell me the result so I can fix my code < 1297262334 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: hmm < 1297262334 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm not going to argue, at best I'll agree to disagree; Language::Befunge is the only one that ever had a different interpretation, IIRC < 1297262342 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, it's potentially arguable that it's a global stack < 1297262349 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in which case you wouldn't need FING to shuffle fingerprints around < 1297262388 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, the literal reading implies that the fingerprint itself gets to define whether the stacks in question are per-fingerprint, per-instruction, or global < 1297262444 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I suppose all existing fingerprints do it per-instruction because they were written for per-instruction interps, apart from the RC/Funge ones (which were global) < 1297262466 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Personally, I think that "ABCD"4) only pops from the fingerprint stack if ABCD is the most recently loadedfingerprint. < 1297262468 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The fact that it does save(A); save(B); but restore(B); restore(A); does make it sound like a global single semantics stack. < 1297262469 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*loaded fingerprint. < 1297262490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: per-fingerprint stacks would do it in that order too < 1297262493 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I don't see how "unload semantics of FP" can be interpreted as "unload semantics of different FP entirely" < 1297262495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(per-command wouldn't) < 1297262507 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Shiro/Types.hs:42:12: < 1297262508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : No instance for (Show (StateT FungeState IO ())) < 1297262508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : arising from the 'deriving' clause of a data type declaration < 1297262508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : at Shiro/Types.hs:42:12-15 < 1297262508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297262509 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, yes, but I don't think per-fingerprint stacks are so very reasonable. < 1297262543 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: "even if that fingerprint had never been loaded before". < 1297262547 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, it's worth pointing out that Chris Pressey's NULL fingerprint implemented every command, and was defined as being unloadable in order to reset the semantics of every command < 1297262548 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I still think the "unloads the semantics for a given fingerprint from any or all of the instructions A to Z (even if that fingerprint had never been loaded before)" part hints that you're supposed to be able to do that. < 1297262560 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which implies per-fingerprint stacks to me, or that wouldn't work < 1297262569 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yes, and? < 1297262580 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's clearly UNDEF in that case because there's no specification of what it actually means to do that. < 1297262594 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : also, it's worth pointing out that Chris Pressey's NULL fingerprint implemented every command, and was defined as being unloadable in order to reset the semantics of every command < 1297262595 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297262596 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ^ < 1297262604 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I am aware of all this, don't ping me. :-P < 1297262618 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BUT THAT'S CLINCHING EVIDENCE < 1297262637 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Bah, are we going by what the spec clearly says or by what Mycology says < 1297262679 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Where does it say that? http://catseye.tc/projects/funge98/library/NULL.html just says "This can be loaded before loading a regular transparent fingerprint to make it act opaquely." < 1297262729 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t maybe < 1297262730 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall b a. b -> (a -> b) -> Maybe a -> b < 1297262867 0 :asiekierka!~asiekierk@178235033089.elblag.vectranet.pl JOIN :#esoteric < 1297263001 0 :boily!~boily@poste19-168.wl.t.ulaval.ca JOIN :#esoteric < 1297263176 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fpIns :: FPIns -> Shiro () < 1297263177 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fpIns ins = do < 1297263177 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : m <- gets fpInstructions < 1297263177 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : head $ Map.findWithDefault [reflect] ins m < 1297263181 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :bah < 1297263276 0 :poiuy_qwert!~poiuy_qwe@CPE001f5b00390f-CM001225d878d0.cpe.net.cable.rogers.com JOIN :#esoteric < 1297263369 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Client Quit < 1297263370 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What does Mycology expect NULL's instructions to do :P < 1297263393 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I have a strange urge to say "gets is unsafe and harmful!" here. < 1297263424 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297263432 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais has already said that about elliott's getses < 1297263448 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: And reflect, what else < 1297263457 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ...What? < 1297263460 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1297263485 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1297263493 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1297263501 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : fpRun NULL _ = return () < 1297263503 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297263521 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It's... weird listening to music that might not be appropriate for public < 1297263529 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :[aka all music] < 1297263568 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What < 1297263573 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Module imports form a cycle for modules: < 1297263573 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Fingerprints.NULL (./Shiro/Fingerprints/NULL.hs) < 1297263574 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Utils < 1297263574 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Utils (./Shiro/Utils.hs) < 1297263574 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Fingerprints < 1297263574 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Shiro.Fingerprints (./Shiro/Fingerprints.hs) < 1297263576 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : imports: Shiro.Fingerprints.NULL < 1297263578 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FUCKING < 1297263580 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GHC < 1297263582 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ARGH < 1297263626 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Got new earbuds < 1297263646 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Cost about as much as Minecraft < 1297263666 0 :copumpkin!unknown@unknown.invalid QUIT :Quit: Computer has gone to sleep. < 1297263700 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :So maybe I overpayed a little < 1297263705 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :At least I have something < 1297263711 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And you still don't own Minecraft < 1297263715 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Also, "at least I have something"? < 1297263719 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Were you previously a monk? < 1297263739 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It's easier for me to pay for stuff IRL than online < 1297263772 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Right. Monks can't get cards. Plastic is against their religion. < 1297263996 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How does Mycology decide whether ( pushes the correct fingerprint? < 1297264006 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What do you mean? < 1297264013 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Testing fingerprint NULL... < 1297264014 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: ( did not push correct fingerprint < 1297264052 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That refers to the encoding of 'NULL' < 1297264063 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :0x4e554c4c < 1297264097 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ( doesn't push the fingerprint does it < 1297264112 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Given the error message I would venture to suggest that it does < 1297264113 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Do you mean that ( reflected? < 1297264120 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :( then uses this fingerprint to locate and load a set of semantics for the instructions A to Z. If the Funge implementation cannot find the correct library for the given fingerprint, ( acts like r. If, however, the semantic library load is successful, the new fingerprint, then a 1, are pushed onto the stack (to be accepted by a subsequent ) instruction.) < 1297264122 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ohhhh < 1297264130 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Reading is... difficult... < 1297264392 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"If, however, the semantic library load is successful, the new fingerprint, then a 1, are pushed onto the stack (to be accepted by a subsequent ) instruction.)" < 1297264398 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: this implies that ) will pop a 1 -- discuss < 1297264415 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't see what there is to discuss < 1297264430 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, if you give ) a 1, it will pop it :-P < 1297264486 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I mean, it will pop a 1, and then the count < 1297264495 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, 1 is the count < 1297264499 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ohhh, I see how that works. < 1297264501 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That' freaky-deaky. < 1297264502 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*That's < 1297264566 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NULL WORKS < 1297264568 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :WOOOOOOOOOOOOOOOOOOOOOOOOO < 1297264754 0 :zzo38!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297264778 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :fingerprint ? do you try to load WSQ files ? < 1297264795 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Funge-98 fingerprints < 1297264803 0 :elliott!unknown@unknown.invalid PART #esoteric :? < 1297264807 0 :elliott!~elliott@unaffiliated/elliott JOIN :#esoteric < 1297264808 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :whoops < 1297265118 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What does "C-language integer remainder" mean, IIRC C's modulo has undefined behaviour on the relevant cases here < 1297265128 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Correct < 1297265128 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Is it literally the remainder of (a/b) as an int in C? < 1297265136 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or? < 1297265154 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember whether I went with C99 or UNDEF < 1297265158 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297265160 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@check \x y -> (rem x y) == (x - (x `div` y) * y) < 1297265160 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "*Exception: divide by zero < 1297265168 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@check \x y -> y == 0 || (rem x y) == (x - (x `div` y) * y) < 1297265169 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "Falsifiable, after 8 tests:\n-6\n7\n" < 1297265174 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@check \x y -> y == 0 || (mod x y) == (x - (x `div` y) * y) < 1297265175 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "OK, passed 500 tests." < 1297265179 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@check \x y -> y == 0 || (rem x y) == (x - (x `quot` y) * y) < 1297265180 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "OK, passed 500 tests." < 1297265191 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t quot < 1297265192 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a. (Integral a) => a -> a -> a < 1297265194 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> quot 1 2 < 1297265199 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 0 < 1297265215 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@check \x y -> quot x y == div x y < 1297265216 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "*Exception: divide by zero < 1297265222 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@check \x y -> y==0 || quot x y == div x y < 1297265223 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : "Falsifiable, after 5 tests:\n-1\n3\n" < 1297265225 0 :copumpkin!~pumpkin@unaffiliated/pumpkingod JOIN :#esoteric < 1297265264 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Who the fuck is Sam Holden < 1297265272 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297265291 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Why are we even implementing these half-written abominations >_< < 1297265341 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm considering inviting someone to this channel < 1297265366 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Don't < 1297265380 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :We're friends on Facebook, but I have no access to his wall :/ < 1297265394 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What's that got to do with #esoteric < 1297265406 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But seriously, what does U do? < 1297265416 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :There's someone else I want to introduce to this channel then < 1297265427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If it's the Sam Holden positive result one, I went with "always returns a positive result" < 1297265458 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"In the meantime, I'm working on some ideas I've had in operating systems, networking, and embedded AI." < 1297265469 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :_Embedded_ AI? < 1297265488 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> mod (-2) (-3) < 1297265489 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : -2 < 1297265496 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So... the same as the % instruction? < 1297265499 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> rem (-2) (-3) < 1297265500 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : -2 < 1297265505 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wait what. < 1297265510 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OK, I'll do ceiling of mod. < 1297265513 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Erm. < 1297265514 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Abs of mod. < 1297265519 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> mod 3 0 < 1297265520 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : *Exception: divide by zero < 1297265530 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :mod uses the sign of the divisor, rem of the dividend < 1297265540 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :C90 is undefined, C99 % uses the dividend < 1297265542 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I know that. < 1297265578 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :haskell: 2090 (100.00%) < 1297265579 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Dayum < 1297265582 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297265585 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's counting the old copies :D < 1297265590 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :haskell: 829 (100.00%) < 1297265632 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: 0a-04-R doesn't push -2 < 1297265632 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: 0a-04-U doesn't push 2 < 1297265632 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hooray < 1297265637 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You assumed C99, btw. < 1297265671 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So anyway... Does loading a fingerprint in one IP load its instructions in all IPs? I bet no. < 1297265680 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Which is hilarious considering fingerprints can have global state ... < 1297265851 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not that hilarious; you don't have to give them all access to the state just because one requested it < 1297265870 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :HILARIOUS ENOUGH. < 1297265903 0 :Sgeo_!~Sgeo@137.125.187.237 JOIN :#esoteric < 1297265943 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: IVXLCDM didn't reflect: child IP has ROMA loaded < 1297265956 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yay, it agrees with CCBI :P < 1297265992 0 :Sgeo!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297266171 0 :boily!unknown@unknown.invalid QUIT :Quit: leaving < 1297266196 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Woot < 1297266208 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Full pass on Mycology apart from text-mode o output, including MODU/ROMA test < 1297266221 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :All that's left now is oh so many fingerprints. And optimisation. And things. < 1297266302 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Do them in the order Mycology tests them; have fun with MODE < 1297266367 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But TOYS is pretty high on that list :P < 1297266368 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Earlier than TURT < 1297266392 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I suspect MODE will be more fun for you than TOYS < 1297266409 0 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486 JOIN :#esoteric < 1297266414 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :cfunge does TOYS, not MODE :-P < 1297266445 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yeaaah, I don't even do the other two modes in MODE yet :P < 1297266457 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Other two? < 1297266462 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Une, tre. < 1297266478 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I want to get my Template Haskell fingerprint shiznit (technical term) going before I do any more. < 1297266490 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :MODE doesn't do anything with une/tre < 1297266510 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Erm, what is it then? < 1297266524 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://catseye.tc/projects/funge98/library/MODE.html < 1297266529 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :x_x < 1297266537 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ah yes, _that_ thing. < 1297266543 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You may want to view source due to use of

instead of
and then sending everything as application/xhtml+xml < 1297266554 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Technical term here -- "fuck you" < 1297266558 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll do that one before TRDS :P < 1297266563 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1297266575 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I pretty much did them in the order Mycology tests them < 1297266597 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You did TOYS before the easy ones? :-P < 1297266604 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What easy ones? < 1297266610 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Like, uh, DATE. < 1297266611 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :EVAR. < 1297266616 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :TIME. < 1297266621 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I did all of Cat's Eye before moving on < 1297266646 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But at what point should I do MKRY?! < 1297266660 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :DATE is new, it wasn't around when Mycology was released < 1297266664 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You need to test it. In Mycology. < 1297266666 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Who made DATE? < 1297266668 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or was that the one that was in one Rc/Funge-98 readme but not the other < 1297266674 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I had missed it < 1297266676 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Can't remember < 1297266678 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Who made the new one? < 1297266704 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :DATE is just an Rc/Funge-98 fingerprint < 1297266747 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It may've been among the first new ones from Mike < 1297266805 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Who made the new one? < 1297266807 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1297266812 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1297266813 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Right. < 1297266816 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There is no "new one" :-P < 1297266833 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if RC/Funge will get a new update since the first one Susan made. < 1297267084 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :wtf@careless < 1297267089 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: ? < 1297267100 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/in_egobot/myndzi_careless.bfjoust < 1297267104 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :#1 on the hill < 1297267109 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just observed over email: someone sent my supervisor a Haskell program, he sent back a correction, the original author quoted the correction via email < 1297267119 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it destroyed the indentation < 1297267127 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1297267129 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yet another reason why indentation-sensitivity is a Bad Thing < 1297267151 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you mean people doing stupid things? < 1297267160 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric : Yet another reason why EMAIL is a Bad Thing < 1297267161 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what kind of email client destroys spaces? < 1297267162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: the world isn't set up to work with it < 1297267168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I'm not sure, I'll look at the headers < 1297267172 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Works for me < 1297267178 0 :elliott!unknown@unknown.invalid PART #esoteric :? < 1297267180 0 :elliott!~elliott@unaffiliated/elliott JOIN :#esoteric < 1297267188 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sending code via email in the expectation that it be modified and sent back is just weird < 1297267195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Thunderbird, by the look of it < 1297267198 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's not exactly a perfect code collaboration mechanism < 1297267201 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: that wasn't the expectation < 1297267202 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Explain why http://codu.org/eso/bfjoust/in_egobot/myndzi_careless.bfjoust is so good X-P < 1297267214 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, you could always replace all the indentation with {} blocks. < 1297267227 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: because it's using a different strategy to everything else, which is trivially easy to counter but nobody has bothered yet < 1297267233 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I value things like more readable code over email-friendliness, though. < 1297267267 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :monorail beats it so it can't be that good < 1297267291 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust beats_careless +++++ < 1297267293 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :defend13 is pretty friggin' clever/scary < 1297267309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1297267333 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wow, defend13 has comments X-D < 1297267337 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Don't comments take ticks in BF Joust? < 1297267341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought people might be interested in how it works < 1297267343 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and they don't < 1297267350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, invalid-command comments don't < 1297267363 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :header comments do, and run the risk of accidentally being executed < 1297267366 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :can someone link to report.txt? < 1297267372 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/report.txt < 1297267376 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: header comments? < 1297267381 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"is a rush-based" lol < 1297267385 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I see a - there ;) < 1297267389 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: whoops < 1297267390 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297267397 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think it makes /much/ difference at that location < 1297267404 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :try removing it, i bet it does 500 times better! < 1297267410 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Watch him fix that and suddenly it gets negative points and 11.3 score :P < 1297267417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ais523_beats_careless.bfjoust vs myndzi_careless.bfjoust: <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<< ais523_beats_careless.bfjoust wins < 1297267420 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nah, I'll leave it as-is < 1297267427 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and just fix it for defend14, when I come up with a different strategy < 1297267428 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :what's ais523_death_to_no_ops doing? < 1297267429 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_beats_careless: 13.0 < 1297267432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :EgoBot: killing no-ops < 1297267441 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : thanks < 1297267444 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I mean strategy < 1297267473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :umm, I can't remember, it was a throwaway program < 1297267478 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just a typical stupid rush < 1297267490 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :2011-02-08 23:32:05 ( ais523) !bfjoust death_to_no_ops (>)*8(>(-.)*256)*21 < 1297267490 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm glad that aiming for ONE major opponent isn't instant-hill-permanence. < 1297267503 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Also, wow, you broke 60 < 1297267506 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust all_credit_to_ais523_defend13_tweaked_tinily http://sprunge.us/eRdS < 1297267514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, right < 1297267514 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: "Broke 60"? < 1297267517 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297267518 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1297267522 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :how did you dod that :D < 1297267523 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*do < 1297267526 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :by making careless worse? < 1297267528 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't even control flow, it's basically doing a full-tape clear < 1297267531 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so it counts less against defend13? < 1297267548 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I think it's more that it pushed a bad program that beat defend13 off the hill < 1297267558 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/breakdown.txt < 1297267559 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :err < 1297267560 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it hasn't lost yet < 1297267562 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_all_credit_to_ais523_defend13_tweaked_tinily: 57.6 < 1297267565 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1297267566 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it never says loss < 1297267576 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I appear to have beaten you >_> < 1297267579 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I need to get rid of Gregor's mindbogglingly slow rushes, defense programs hate them < 1297267579 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'll make it < < 1297267582 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: and you can copy it to defend13 < 1297267584 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :if you want < 1297267587 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I just replaced the - with a space < 1297267590 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: they score completely identical points < 1297267595 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh, indeed < 1297267597 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is not surprising given how it works < 1297267600 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll get rid of it < 1297267607 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust all_credit_to_ais523_defend13_tweaked_tinily < < 1297267617 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_all_credit_to_ais523_defend13_tweaked_tinily: 0.0 < 1297267634 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, that - was in a section of code that's designed to just sit back and let the opponent do their thing < 1297267687 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :defend13 uses three separate tripwires, which I think is some sort of record < 1297267708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the first two have the same purpose, the only reason that there's two of them is in case the opponent misses tripping one of them < 1297267760 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: when bfjoust first came out, I didn't think complicated programs could work, because they'd be too slow < 1297267764 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you've proved me wrong :) < 1297267778 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :defend13 even has a (.)*128, IIRC < 1297267804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the other thing defend13 does is use a different strategy on the two polarities < 1297267809 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm tempted to write a program that targets defend13 specifically < 1297267812 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :each of which works well, but has a different weakness < 1297267815 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :by making it think it's a different kind of strategy than it is < 1297267819 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but it'd probably lose to everything else < 1297267831 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm, you can tell what polarity you have? < 1297267835 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :is it because -- and ++ are tested? < 1297267837 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, of course not < 1297267847 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you can tell which way your opponent changed your flag < 1297267848 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :via timing < 1297267854 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i just realised you meant that, yeah < 1297267864 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :defend13 actually has an offset clear detector < 1297267879 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :back when I wrote defend9, offset clears weren't very common, so I had to use much more complex tricks < 1297267899 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nowadays, though, they're all over the place, and they're the easiest way of detecting polarity I know, because nobody goes ------[-] < 1297267959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, decoybooster's doing surprisingly well, it uses a similar strategy to 3pass < 1297267964 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just a little more defensive < 1297267967 0 :Phantom_Hoover!unknown@unknown.invalid TOPIC #esoteric :Actually #bfjoust | http://208.78.103.223/esoteric/ | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1297268026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: it's #befunge too! < 1297268041 0 :Phantom_Hoover!unknown@unknown.invalid TOPIC #esoteric :Actually #bfjoust crossed with #befunge | http://208.78.103.223/esoteric/ | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1297268047 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(actually, I think #befunge, or is it ##befunge, actually exists and was used a while ago, but ended up being merged into #esoteric; there's one for BF too, IIRC) < 1297268056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and one for Feather, which AFAIK Vorpal is still idling in) < 1297268071 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :indeed, I just looked into #feather-lang < 1297268120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :theory: it's theoretically impossible to open-source a Feather interp, on the basis that the code would be obfuscated by definition < 1297268150 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297268158 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Obfuscated open-source is still open-source < 1297268162 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: < 1297268166 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: GPLv2 prohibited obfuscation < 1297268168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not by certain definitions I've seen < 1297268179 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :elliott, what? < 1297268183 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: not directly; it requires you to use the version of the source that's most convenient to edit from < 1297268183 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Re topic < 1297268187 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1297268194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so if there is non-obfuscated source, you have to provide that < 1297268209 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :THIS CHANNEL HAS TOTALLY GONE DOWNHILL I AM LEAVING AND NEVER COMING BACK < 1297268211 0 :Phantom_Hoover!unknown@unknown.invalid QUIT :Quit: Leaving < 1297268212 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise, you can distribute GPLv2 binaries as the source (ditto GPLv3) if the program was originally written in machine code < 1297268237 0 :Vonlebio!~phantomho@cpc3-sgyl21-0-0-cust116.sgyl.cable.virginmedia.com JOIN :#esoteric < 1297268245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, why is Phantom Hoover complaining about BF Joust? it's definitely an esolang < 1297268249 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :HEY GUYS I AM TOTALLY NEW HERE < 1297268298 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, the whois doesn't match Phantom Hoover, so it must be someone new < 1297268318 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :YE: < 1297268321 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :*YEP < 1297268341 0 :azaq23!unknown@unknown.invalid QUIT :Quit: Leaving. < 1297268354 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :So who is this Phantom_Hoover guy? < 1297268429 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: btw, I know how to do lazy Underload really elegantly < 1297268449 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :seen on reddit: someone finds that a load of businesses claim their phone number is 214-748-3647 due to trying to store it in MySQL < 1297268457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(which saturates silently on integer overflow) < 1297268529 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :... lolwut? < 1297268531 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: INSUFFICIENT REACTION < 1297268539 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I've been thinking about it for days < 1297268548 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I /cleared for reasons I can't remember < 1297268552 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and now have forgotten context < 1297268554 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : ais523: btw, I know how to do lazy Underload really elegantly < 1297268557 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1297268567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I found a moderately elegant way to do it, but you might have found an even better way < 1297268580 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: My way allows for output. < 1297268586 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure the only real way to handle a phone number is to normalize a string. < 1297268597 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Especially if you want to handle international numbers. < 1297268597 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does yours? < 1297268615 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not elegantly < 1297268637 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: once this implementation is semi-working, I'll fill you in on the details < 1297268639 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the inelegant way is to expand everything but : lazily (with S being semi-lazy and not executing until it reaches the front of the program) < 1297268660 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's not really proper laziness < 1297268663 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: mine involves reversing the program, which turns Underload into a strange polish notation language < 1297268668 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :which you can then evaluate normally in the normal way < 1297268669 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as you sometimes evaluate things over than S that are never used < 1297268672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: err, wow < 1297268677 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because if you see )x(, you know that the final stack starts with x, see? < 1297268684 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :whereas, in unreversed underload, you can't know that < 1297268687 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because it could be popped later < 1297268691 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so this allows for greater laziness < 1297268692 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297268700 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Your phone system ought to be able to handle +44-0131-867-5309. < 1297268707 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :! just starts a comment or whatever, ignoring output < 1297268712 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :well, comments out the next expression < 1297268713 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or rather < 1297268715 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :! takes two arguments < 1297268719 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and returns its second argument < 1297268730 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!)a()b( = b < 1297268731 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm, +44-131-867-5309 < 1297268747 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, that would indicate the UK, but I'm not sure what 0131 would reference as an area code < 1297268757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's likely to be a major city, though, due to the 01x1 pattern < 1297268763 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It's Jenny, in Edinburgh. < 1297268770 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :^ul (b)(a)*S < 1297268771 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ba < 1297268783 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: aha < 1297268788 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm, ^ is broken < 1297268799 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, the 8675309 is recognisable enough < 1297268804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why Edinburgh, though? < 1297268823 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Just a city that had 7 digit numbers. < 1297268843 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And was on Wikipedia's article on phone numbers in the UK. < 1297268859 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :I definitely didn't tell him the number. < 1297268866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :all cities in the UK have 7 digit numbers < 1297268871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apart from possibly London < 1297268884 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, or the ones with 5-digit area codes < 1297268892 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which have 6-digit numbers < 1297268908 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Not really. Area codes, it seems, can be 3, 4, 5, or 6 digits. < 1297268919 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(if you count the 0 trunk code) < 1297268936 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(London is large enough that it used to have two area codes, 0171 + 7 digits, 0181 + 7 digits; it was changed to 020 7 + 7 digits and 020 8 + 7 digits, respectively, with the 7 or 8 not really counting as part of the area code) < 1297268964 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :()(~(x)*~:^):^ < 1297268973 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's an underload program that ostensibly puts (xxxxxxxxx...) on the stack, yes? < 1297268975 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*no () < 1297268989 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think so, and it does need the () < 1297268997 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Cardiff also appears to have a 3-digit area code. 029-xxxx-xxxx. < 1297269001 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I mean, in my message < 1297269003 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : that's an underload program that ostensibly puts (xxxxxxxxx...) on the stack, yes? < 1297269005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, that must have changed recently < 1297269017 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Main> prog < 1297269017 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"S^:)^:~*)x(~()(" < 1297269018 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: oh, stack notation is not really standardised < 1297269019 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :let's see if it works < 1297269024 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I end to leave one set of parens in for stack elements < 1297269032 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Main> next prog [] < 1297269033 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("*** Exception: rabble rabble < 1297269041 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :cool, ) is broken :P < 1297269042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, ouch at not doing tr/()/)(/ when reversing the program < 1297269046 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it just looks ugly < 1297269047 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297269053 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : findprn "" = error "rabble rabble" < 1297269053 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : findprn ('(':s) = ("",s) < 1297269054 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : findprn (x:s) = (x:xs,s') where (xs,s') = findprn s < 1297269054 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :spot stupid < 1297269065 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: nah, I like to define ) as pushing up to the not-matching ( :-D < 1297269098 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: "" is the same as [], and thus is always called as your base case < 1297269119 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, no, you have a second base case < 1297269139 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, there isn't an obvious stupid in that case < 1297269147 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("*** Exception: beep < 1297269147 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1297269149 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: there is < 1297269151 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it doesn't handle nesting < 1297269161 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh right, I wasn't sure if it was meant to < 1297269227 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: fun fact: every Plunder (that's what I'm calling it) program starts, conceptually, with an infinite number of ()s < 1297269239 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(i.e. ends with an infinite number of )(s, when reversed) < 1297269247 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is Plunder actually a lang? or the name of an interp? < 1297269252 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: a language < 1297269254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, is it semantically different from Underload at all? < 1297269259 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pretty sure it is, yes < 1297269264 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure if IO is reversed or not, but it might be < 1297269277 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :actually, I think it is, in that (hello)S would produce olleh < 1297269279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that'd be a pretty minor change < 1297269281 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :becaues otherwise the infinite example wouldn't work < 1297269282 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*because < 1297269290 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes, but the whole evaluation model is different, because: < 1297269296 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(bar)S(:^):^(foo)S < 1297269299 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: this outputs oof, then hangs < 1297269321 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, what? < 1297269329 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :are programs actually evaluated back to front? < 1297269333 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes, like I said < 1297269339 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought you were reversing them < 1297269345 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so the front would be evaluated first < 1297269354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, programs are written ()-style < 1297269356 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but evaluated )(-style < 1297269361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297269371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so they're evaluated from the front, )( style < 1297269379 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1297269415 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Main> let prog = reverse "()(~(x)*~:^):^S" < 1297269420 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*Main> next prog [] < 1297269420 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("","",["x"],["^:~*)x(~"]) < 1297269420 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wait what < 1297269508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh, I think ^ is borkenified < 1297269527 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297269585 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm, ah, umm... eh? < 1297269598 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297269600 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :...ah < 1297269604 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :...but eh? < 1297269606 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh! < 1297269621 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :agh < 1297269677 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :grr < 1297269690 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'll fix it later, I'm going back to Shiro until I figure it out :P < 1297269726 0 :oerjan!oerjan@tyrell.nvg.ntnu.no JOIN :#esoteric < 1297269774 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hi oerjan < 1297269779 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :don't worry, the bug wasn't in your code :P < 1297269783 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hi elliott < 1297269788 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297269792 0 :augur!~augur@129.2.129.146 JOIN :#esoteric < 1297269813 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: context? < 1297269818 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: zipper queue < 1297269823 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297269824 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :for shiro IP list < 1297269834 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : I will refrain from buying a domain then < 1297269836 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1297269862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I should have tried writing zipper lists in Mathematica when doing the Turing machine emulators < 1297269868 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm not sure that's a very good reason :) < 1297269874 0 :augur!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297269875 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I couldn't figure out how to get it to run at a sensible speed at all, that might have helped < 1297269881 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : we need a dnsbot :D < 1297269890 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm... let's check if we have one already < 1297269904 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :we don't < 1297269906 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hackego's net is restricted < 1297269907 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!sh host www.google.com < 1297269917 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :egobot's is completely blocked :P < 1297269919 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :/usr/bin/host: /usr/lib/plash/lib/libresolv.so.2: version `GLIBC_2.9' not found (required by /usr/lib64/libkrb5.so.3) < 1297269922 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh :( < 1297269932 0 :augur!~augur@129.2.129.146 JOIN :#esoteric < 1297269949 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: man, your fingerprint stuff is nicer than mine < 1297269957 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: haha, that's an egobot bug < 1297269974 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: What do you mean < 1297269990 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: The Fingerprint mixin < 1297270004 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, sure, it's nice to use < 1297270015 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: we could probably get hackego to pass on the information from somewhere else < 1297270038 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :`run host www.google.com < 1297270039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How do you do global/per-IP state, though? With a global and...? < 1297270063 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm is it slow or just not giving any output < 1297270072 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: it says No output. < 1297270074 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :when there isn't any < 1297270075 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"Global" state is in the fingerprint's template, per-IP is just in the IP < 1297270076 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm right < 1297270086 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :`echo hi < 1297270091 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :No output. < 1297270091 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1297270094 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: so you can't add per-ip state without modifying core code? ha ha ha < 1297270100 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well then < 1297270136 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I'd rather have a single byte than N bools for the various modes :-P < 1297270172 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Mr. Microoptimise < 1297270175 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But whaddya mean < 1297270183 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What if you have more than 8 IPs < 1297270185 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :http://www.guardian.co.uk/commentisfree/2011/feb/07/tax-city-heist-of-century < 1297270205 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :14:27:47 that's not perl oerjan < 1297270206 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :14:27:50 that's the old version < 1297270206 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :14:27:53 egojoust is in C < 1297270208 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :I haven't actually been angry about something political for quite some time, but that... < 1297270217 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah i found out later once the other webpages loaded < 1297270222 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: :D < 1297270232 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vonlebio: almost as bad as that time you stole the pope's hat < 1297270238 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I mean that each IP has 5 boolean modes it can be in (12 with TRDS, IIRC) < 1297270244 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :elliott, worse! < 1297270250 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I'd rather use close to 1 bit than 1 byte for each of those < 1297270254 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh no, the evil Vonlebio is back! < 1297270276 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Right, so fingerprints can't be plugged in, they're tightly-integrated with the core. < 1297270287 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Most fingerprints can be, but not all can. < 1297270288 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, what's that? Your architecture is so crap that they take up space even if the fingerprint isn't loaded? < 1297270289 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :CUTE < 1297270292 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(I'm just mocking you.) < 1297270294 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No they don't. < 1297270303 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Eh? < 1297270312 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anything that affects the core is versioned. < 1297270329 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You can disable any fingerprint at compile time and it'll add no overhead. < 1297270332 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I mean that a program which doesn't use TRDS still gets the overhead. < 1297270340 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Being able to stop that at compile-time is irrelevant :P < 1297270344 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: now you have to add _actual_ plugin support :D < 1297270359 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: like runtime-loadable fingerprints? < 1297270364 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: yeah < 1297270383 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well yes, but that's because it's still less overhead than having something like a PerIPFingerprintState[] in each IP which is only filled in if needed < 1297270385 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: unfortunately I don't think GHC is very good at pluginy things, the closest you can get is an experience like using the FFI < 1297270390 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :shouldn't be too hard with what you have now + whatever people use for plugins these days < 1297270391 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :if that < 1297270409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: and my fingerprint system involves type classes, type families, and existential quantification, so that would suck < 1297270413 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Although I suppose it might not always be, but in any case, the overhead is negligible < 1297270420 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: um there used to be a hsplugins package or something, or the ghc api iirc, whatever lambdabot uses < 1297270425 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Well yes, but that's because it's still less overhead than having something like a PerIPFingerprintState[] in each IP which is only filled in if needed < 1297270427 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't exist in mine < 1297270429 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I use a map < 1297270438 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Same difference < 1297270440 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(OK, so accessing fingerprint state incurs the cost of a map lookup, but come on.) < 1297270442 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: No it's not. < 1297270444 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yours just uses more memory then < 1297270446 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :An empty map takes up ~no space. < 1297270451 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :An empty array takes up no space either < 1297270461 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i'm pretty sure it can't do what i need < 1297270475 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And yes, a map lookup is expensive. I'm worrying about the /array/ lookup here. :-P < 1297270482 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: iirc the hsplugins package was using Typeable to be typesafe, don't know if it supports your kind of types < 1297270490 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: looks a bit unmaintained < 1297270504 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: "ignore AnMaster, he's a performance freak" --you, 2008 < 1297270512 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :literal quote < 1297270521 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: as i implied, i don't know what they use nowadays but lambdabot obviously uses _something_ < 1297270525 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: well yes < 1297270542 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: have you ever had to use an hs-boot file before :D < 1297270546 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: The TRDS stuff is accessed quite often per tick even if you're not using TRDS < 1297270554 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Using TRDS = slow :P < 1297270559 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Having TRDS = slow < 1297270562 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: even with a Shiro.Types module I got a circular dependency < 1297270591 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If I disabled TRDS in my Fungicide rankings I'd be 50% faster or something :-P < 1297270619 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I thorte you only did that when TRDS done get loaded. < 1297270625 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: what about not enabling going back to before TRDS is loaded, like the spec allows you to? < 1297270635 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: he does that < 1297270638 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :thus why i said the above < 1297270641 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297270647 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yet it still slows the code down anyway? < 1297270663 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :maybe he thinks an if (TRDS) branch would be too expensive < 1297270710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it'd predict well < 1297270720 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: no. (1) i haven't written any proper programs with ghc yet (2) i don't think i've ever split a haskell program into several files < 1297270723 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There are if (TRDS) branches < 1297270732 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There are several per tick and per IP per tick :-P < 1297270738 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: (1) does hugs not have anything similar? (2) heh < 1297270747 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it'd only really be expensive on a GPU, where both branches of a conditional take time even though only one executes < 1297270766 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hah < 1297270767 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*heh < 1297270767 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ticks are so cheap on average that adding a bunch of branches does slow things down < 1297270771 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: hugs doesn't support mutually recursive modules. iirc it had to modify some of the libraries slightly to get around this... < 1297270803 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hm it should have an easier time than ghc adding them, with ghc there's all kinds of stage restrictions or something and stuff < 1297270817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or at least, they don't want to do multiple modules in one compiler invocation because it breaks the model of "ghc -c foo.hs -o foo.o" < 1297270819 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1297270828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: GPUs are really massively multithreaded; they'll typically run about 1000 threads in parallel, with blocks of about 32 being forced to run in exact lock-step < 1297270844 0 :Sgeo_!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297270861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and so if two threads make different choices for a branch, both threads have to go through both sets of instructions, simply ABSTAINing from executing the set they don't want < 1297270864 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: anyway what's your circular dependency? maybe it's possible to break it < 1297270945 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Shiro.Utils imports Shiro.Fingerprints to use the list of fingerprints. Shiro.Fingerprints imports Shiro.Fingerprints.BLAH. Shiro.Fingerprints.BLAH imports Shiro.Utils, to use its other helpful functions. i could split it but writing a Fingerprints.hs-boot was trivial, because it's just: < 1297270950 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: anyway i _think_ a .hs-boot file just contains type declarations for the relevant file so the other files can be compiled without having it compiled first < 1297270951 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :module Shiro.Fingerprints where < 1297270952 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :import Shiro.Types < 1297270952 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :import Data.Map (Map) < 1297270952 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fingerprints :: Map Value FP < 1297270959 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and indeed < 1297270970 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :before I had Shiro.Types, I had whole circular-dependencies on types and type classes < 1297270972 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that was nasty < 1297270982 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because hs-boot can't solve those < 1297271013 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297271123 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Ticks are so cheap on average that adding a bunch of branches does slow things down <-- how much (says profiling) < 1297271142 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember, I haven't looked at this stuff in like a year < 1297271205 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OK, I have NULL, ROMA, MODU. < 1297271209 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What next :-P (Deewiant can't answer) < 1297271214 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: implemented my O(1) wrapping function yet? < 1297271229 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, dude. I had a full day at university. I just got home < 1297271235 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Pffft < 1297271237 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Excuses < 1297271250 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and I doubt I will code more today. Probably not until the weekend. < 1297271275 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I'd like to see you having 8 - 17 every-weekday schedule :P < 1297271304 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : What next :-P (Deewiant can't answer) <-- TRDS? < 1297271310 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297271312 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I hate you all < 1297271329 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well okay. What about MODE then < 1297271333 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fffff < 1297271337 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'd suggest one that isn't feral < 1297271356 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :HRTI so your test runs will be slowed down by another second < 1297271361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perhaps one of the FFI-style ones like PERL, although that depends on how well Haskell's FFI works < 1297271382 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'd probably just shell out to perl for that, ISTR perl's C API being terrifying. < 1297271392 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not as bad as it looks < 1297271396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the major issues are the variable names < 1297271398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and function names < 1297271404 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: What's the function to evaluate a string :P < 1297271416 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, HRTI. TOYS. STRN. SOCK. SCKE. MODE. TRDS < 1297271418 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :what about that list < 1297271427 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: SOCK can't be that hard :P < 1297271430 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Is STRN hard...? < 1297271432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, you don't use Perl's C API for that, that's the wrong way round; shelling out to Perl is correct there, I think < 1297271440 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, STRN is not really no < 1297271440 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, that's what PERL does < 1297271445 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, oh wait do PERL < 1297271447 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that is fun < 1297271451 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Fun sounds scary. < 1297271487 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ENVR is tempting :P < 1297271489 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sounds nice and "easy". < 1297271494 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, revised list: HRTI, PERL, MODE, TURT, REFC. < 1297271495 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : elliott: oh, stack notation is not really standardised < 1297271497 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :NOW IT IS < 1297271501 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297271504 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but I don't like your notation! < 1297271508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it shows evaluation as a stack element, which is just weird < 1297271509 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My STRN.G detects runoff strings that haven't been terminated but would hit a zero after wrapping and tries to allocate the 16+-gigabyte-stack required < 1297271521 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: <3 < 1297271522 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ... why < 1297271529 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It's the CONFORMANT implementation. < 1297271531 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's in the name! < 1297271537 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :`addquote My STRN.G detects runoff strings that haven't been terminated but would hit a zero after wrapping and tries to allocate the 16+-gigabyte-stack required < 1297271541 0 :sebbu!unknown@unknown.invalid PRIVMSG #esoteric :16gb stack ? < 1297271560 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, STRN is rcfunge one. It is poorly enough defined that you can get away with a lot of stuff < 1297271576 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It only does that when you've compiled in expensive infinite loop checks though < 1297271577 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :301) My STRN.G detects runoff strings that haven't been terminated but would hit a zero after wrapping and tries to allocate the 16+-gigabyte-stack required < 1297271578 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: as i said previously, the intuition is that x y z -- a b c indicates a stack effect which turns the result of running program x y z into the result of running program a b c instead < 1297271580 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, do TURT < 1297271582 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it is fun < 1297271583 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I know, I know < 1297271591 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I want to go for low-hanging fruit first : < 1297271592 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*:P < 1297271606 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let's make a fingerprint EASY < 1297271610 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: and it mixes seamlessly with my lambda notation < 1297271614 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is vaguely useful, and trivially easy to implement < 1297271626 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, okay then: HRTI, REFC are the catseye ones that are low hanging < 1297271641 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, especially REFC < 1297271657 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"

This timer is not affected by 'time travel' contrivances." < 1297271662 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :cpressey predicted TRDS? < 1297271666 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or was TRDS around very early? :-) < 1297271669 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It was early < 1297271679 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe not that early, but early :-P < 1297271692 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, BF Joust ethics question: should I make a minor tweak to defend13 just to beat careless? < 1297271696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't really want to < 1297271707 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why not? < 1297271709 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :REFC seems easy enough < 1297271711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it will probably make it score differently against chaotic programs like wiggle < 1297271714 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it might even do worse < 1297271720 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: the scoring system practically mandates cheating like that < 1297271721 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I say go for it < 1297271722 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Call it defend13b then < 1297271723 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, what about FING. That one is quite easy < 1297271729 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Oh fuck off :P < 1297271733 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :REFC seems easy. < 1297271735 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, no not FNGR < 1297271737 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And lets me test my state system. < 1297271738 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :REFC is heaps of fun < 1297271744 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Eh? < 1297271744 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: FING actually is easy < 1297271747 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: also you don't _have_ to use evaluation as a stack element, i just didn't see how to give stack change notation for ^ without doing so < 1297271748 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :REFC looks easy < 1297271750 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, FING is like... 20-30 lines of C code including boilerplate? < 1297271757 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: REFC is a memory leak < 1297271761 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :careless surprises me just because I've tried to write programs that work like that before and they've done badly < 1297271765 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: MODU.hs is 27 lines long :-P < 1297271780 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :My boilerplate is quite big; haven't decided the nicest way of doing the Template Haskell magic yet < 1297271785 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yeah MODU is more than 30 lines of C code since only one of those behaviours are native to C < 1297271786 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So's Haskell < 1297271796 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: < 1297271798 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :runMODU M = binary (\x y -> if y == 0 then 0 else mod x y) < 1297271798 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :runMODU U = binary (\x y -> if y == 0 then 0 else abs (mod x y)) < 1297271798 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :runMODU R = binary (\x y -> if y == 0 then 0 else rem x y) < 1297271798 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297271808 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you said 27 lines? < 1297271812 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: abs (mod x y) can't be correct < 1297271813 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :The rest is boilerplate. < 1297271817 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Passes Mycology < 1297271826 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Only because you're lucky :-P < 1297271829 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well C code written on one line like that would be insane < 1297271841 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What should it be < 1297271856 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :The spec refers to the operation by a random person's name, I can hardly be blamed for misinterpreting it :P < 1297271858 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Consider 7 % -3 which gives -2: the correct answer is 1, not 2 < 1297271877 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!help bfjoust < 1297271878 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> 7 `mod` 3 < 1297271879 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 1 < 1297271882 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Sorry, I have no help for bfjoust! < 1297271887 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!help < 1297271888 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :runMODU U = binary (\x y -> if y == 0 then 0 else mod (abs x) (abs y)) < 1297271888 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . < 1297271891 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust < 1297271892 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297271895 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297271914 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: mod x y + (if mod x y < 0 then abs y else 0) < 1297271924 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, anyway FING is easy. Unlike REFC it needs no global state even < 1297271970 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That's not point-free < 1297271972 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it is just pop-and-push, swap, drop, duplicate for the fingerprint semantics stacks iirc < 1297271980 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Yeah, I'll do it after REFC. < 1297271993 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \x -> x + (if x < 0 then abs y else 0) -- elliott < 1297271994 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :ap (+) (flip (flip if' (abs y) . (< 0)) 0) < 1297272007 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297272024 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm that egodeath thing is still on the hill i see < 1297272029 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \x -> x + fromEnum (x < 0) * abs y -- elliott < 1297272029 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :ap (+) ((abs y *) . fromEnum . (< 0)) < 1297272033 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, only thing to remember is that you can use A-Z *or* 0-25 to refer to stacks. So you just need a normalisation function for the parameters. Trivial. < 1297272045 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :not as trivial as REFC < 1297272055 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@pl \x y -> let m = mod x y in m + fromEnum (m < 0) * abs y -- elliott < 1297272056 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :ap (ap (+) . (. (fromEnum . (< 0))) . (*) . abs) . mod < 1297272059 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, here is a test program for FING (since iirc mycology doesn't test it?) http://www.rcfunge98.com/fing.f98 < 1297272062 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's so beautiful < 1297272071 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: So shaddup and use the pointy :-P < 1297272079 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I already did, about five minutes ago < 1297272089 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : ap (ap (+) . (. (fromEnum . (< 0))) . (*) . abs) . mod <-- what < 1297272091 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I doubt it given that I gave it to you about three minutes ago < 1297272095 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :@help pl < 1297272095 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :pointless . Play with pointfree code. < 1297272098 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297272108 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :also that one was hard to read < 1297272119 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Point-free code is usually nicer than the equivalent pointy code, but not when lambdabot writes it :-P < 1297272125 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And also only if you split up your functions. < 1297272155 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(I'm inferring that Vorpal is learning Haskell from the things he's said.) < 1297272178 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So is REFC global or per-IP < 1297272184 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I just don't know lambdabot's commands. And indeed I'm not as proficient in haskell as you are. < 1297272191 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I'm pretty sure it is global < 1297272197 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yay, I can use an IntMap. < 1297272199 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That gives me a happy. < 1297272201 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: lambdabot is not very good at optimizing pointless code, e.g. there are all kinds of tricks with curry/uncurry and Arrows which it rarely if ever uses < 1297272201 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure it's UNDEF but I made it global < 1297272203 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well........ < 1297272211 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: You can use an array :-P < 1297272220 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That would involve icky reallocation and things. < 1297272225 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Never, it doesn't know about arrows < 1297272231 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Technically you could allocate more than an Int of references. < 1297272232 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Still is there any point (pun not intended) in spending several minutes extra just to make it pointfree when it takes a few seconds to write the non-pointfree code? < 1297272235 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ah. < 1297272236 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But if you do that, fuck you. < 1297272239 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It doesn't take that long. < 1297272247 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: And it makes the intention of the code nicer if done well. < 1297272251 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :?pl \(x,y) -> (y,x) < 1297272251 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :uncurry (flip (,)) < 1297272252 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Easier to read. < 1297272258 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: It knows uncurry though. < 1297272262 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Often it leads to more composable functions by noticing common substructure in code. < 1297272271 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Oh, and it avoids arbitrary parameter names :-P < 1297272285 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: You'll run out of memory before allocating that many < 1297272290 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Indeed. < 1297272300 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yes indeed. Make all of your befunge implementation point free! < 1297272307 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Some of it already is. < 1297272315 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, not good enough. :P < 1297272316 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: More important than point-free code, though, is do-less code. < 1297272326 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Do notation is to be avoided at all costs :P < 1297272332 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, why is that < 1297272339 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Unless you really have a non-trivial block of reading-and-writing imperative code, like in my instructions. < 1297272341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :naming things is one of the hard problems of computer science < 1297272349 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :point-free code avoids that issue < 1297272351 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Because it obscures intent and makes Haskell into an imperative language. < 1297272358 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Consider: < 1297272361 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pop :: Shiro Value < 1297272361 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pop = tos <* modifyStack (drop 1) < 1297272362 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I think it's sensible to use a do-block for main, which is normally generally imperative < 1297272369 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :peek :: Vector -> Shiro Value < 1297272370 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :peek k = (!@ k) <$> gets fungeSpace < 1297272382 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Compare that last one with < 1297272390 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :peek k = do fs <- gets fungeSpace; return (fs !@ k) < 1297272392 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Obscures intent. < 1297272413 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, hm < 1297272453 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, why aren't you using a monad free solution? Couldn't you just pass around a map or such. < 1297272460 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well a bit more than that < 1297272462 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but still < 1297272477 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Passing around a bunch of state is exactly what the state monad does. < 1297272497 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :If you really have to ask "why abstract away", well... < 1297272507 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Code isn't any more functional because it takes parameters and returns a tuple. < 1297272514 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's just harder to call (you have to thread state explicitly). < 1297272516 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's still stateful. < 1297272532 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well hm. So you don't use that monad for IO at all? < 1297272543 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's (StateT FungeState IO). < 1297272577 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you need to be able to do I/O in the middle of a calculation, involving the IO monad somewhere is the sensible way < 1297272581 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :

The internal list of references is considered < 1297272582 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :shared among all IP's, so a global static can be used < 1297272582 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :to store this list, so that this extension remains tame. < 1297272584 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's explicit < 1297272584 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, well yeah, but do you evaluate lazily. I mean, you only need to evaluate when you are about to do IO. The rest could be lazy. < 1297272589 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :normally, you don't, but you do to be able to implement Funge < 1297272590 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Alright < 1297272591 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Stop trolling. < 1297272604 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: It's not trolling really < 1297272607 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'm not sure you really understand what "lazy" means in that context < 1297272610 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well, no, it's Vorpaltrolling :P < 1297272613 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :He has a point that you have IO available even in many places where you don't need it < 1297272623 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's true, but they're basically inseparable. < 1297272624 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :indeed. It seems wrong. < 1297272648 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: something I've been trying to figure out: is it possible to design a monad that lets you have, say, beginWhile and endWhile as actions that repeat everything between them? < 1297272653 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes < 1297272657 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: see Cont monad < 1297272658 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought so, but wasn't sure < 1297272659 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I'm pretty sure the meaning of lazy I used is a valid meaning of that word? < 1297272665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering about making an IFFI monad < 1297272666 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: BeginWhile >>= f saves f < 1297272671 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: EndWhile calls it < 1297272673 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: You can just make a State FungeState when you don't need IO < 1297272674 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, that makes sense < 1297272676 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that's a do-while loop, though < 1297272678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :With a few helpers it shouldn't be troublesome < 1297272679 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :dunno if you can do while < 1297272686 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, I meant while not do-while < 1297272689 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It'd be a waste of time. < 1297272694 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, can you somehow capture the bits in between < 1297272696 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: It's more type-safe. :_P < 1297272697 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you might be able to with a "reverse Cont monad" < 1297272701 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :16:55:14 ais523: yes, but the whole evaluation model is different, because: < 1297272704 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :16:55:20 (bar)S(:^):^(foo)S < 1297272707 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :16:55:23 ais523: this outputs oof, then hangs < 1297272709 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'll let you know if I ever type "io $" accidentally < 1297272714 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Your code is so unsafe that my nose got dislodged :_P < 1297272726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :THE POWER OF IO < 1297272726 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :interestingly, if you think of underload as a monoid, those evaluation models become special cases... < 1297272727 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, impure < 1297272741 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Funge-98, the purest of languages. < 1297272741 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : ah, I meant while not do-while <-- couldn't you rewrite a do while loop to a while one by adding a condition before entering first time? < 1297272743 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: :D < 1297272762 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: that requires being able to do if, and elliott sort-of implied that that wasn't trivial either < 1297272764 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: like strict and lazy evaluation of LC, indeed < 1297272780 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ah. < 1297272783 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it's probably possible but I couldn't do it off-hand < 1297272791 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you probably could actually < 1297272792 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's my guess too < 1297272793 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I can sort of see it in my head < 1297272795 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but it'd be a pain < 1297272801 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wanted to add COME FROM to Haskell < 1297272811 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hahaha < 1297272814 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: basically store "isWhileBody" state, and then "blah >>= f" just remembers it < 1297272815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(don't ask "why", this is #esoteric) < 1297272816 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :when isWhileBody < 1297272827 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh right, like Maybe with Nothing < 1297272830 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, that'd work < 1297272834 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :well sort of < 1297272837 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you still go through the whole body < 1297272840 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you just don't execute any of it < 1297272846 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but that might be hard < 1297272847 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, Maybe does too < 1297272849 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :since monadic actions yield results < 1297272851 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and f takes those results... < 1297272852 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :dunno < 1297272865 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm not sure this would obey the monad laws, anyway :P < 1297272868 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm because underload lacks something which can _completely_ replace the stack, there is nothing corresponding to how lazy evaluation is canonical in LC < 1297272889 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I don't think that's true in daolrednu < 1297272897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I see, the issue is in something like do {if false; a <- monadAction; endif; return a} < 1297272898 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it's essentially an applicative language with multiple function outputs < 1297272901 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :: takes one argument and returns it twice < 1297272907 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: indeed < 1297272916 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, that clearly makes no sense, and should equally clearly be legal < 1297272925 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*illegal < 1297272935 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: or even do {if false; a <- monadAction; blah a; endif} -- even when you process it, you have to give the result of a along < 1297272938 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :even if you don't want to "use" it < 1297272941 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I mean according to the way monads work,you should be able to do that in a monad no matter what "if" and "endif" mean < 1297272958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :s/,y/, y/ < 1297272975 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: the thing is, in LC you can have one evaluation order which leads to a normal form even if another doesn't. that's not possible in underload/daolrednu, well maybe if you reduce inside subprograms, but S makes that illegal in general < 1297272992 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or so i think. < 1297273003 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yeah... even so, you _can_ handle: < 1297273008 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :()(~(a)*~:^):^ < 1297273009 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure < 1297273011 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Underlambda changes the semantics of S just to avoid that issue < 1297273019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :its the only Underload command it changes < 1297273023 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: oh < 1297273023 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : no, I mean according to the way monads work,you should be able to do that in a monad no matter what "if" and "endif" mean < 1297273024 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : s/,y/, y/ < 1297273024 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297273029 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: *it's, also < 1297273041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1297273047 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :took me a while to figure out what line you were correcting, there < 1297273051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :typo, rather than grammar fail < 1297273250 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :bbl < 1297273313 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `FPGlobalState REFC' < 1297273313 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : against inferred type `IntMap a' < 1297273313 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : NB: `FPGlobalState' is a type function, and may not be injective < 1297273316 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I love these kinds of errors < 1297273352 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Haskell's one of those langs which needs a CS degree just to understand the error messages < 1297273352 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :shiro: Shiro/Fingerprints/REFC.hs:(30,0)-(40,22): Non-exhaustive patterns in function runREFC < 1297273355 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh joy < 1297273364 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I have a CS degree now? woo! < 1297273376 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to figure out what "may not be injective" means in that concept < 1297273376 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: actually in the past few days I've triggered one internal GHC compiler error, and several "My brain just exploded."s < 1297273379 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*context < 1297273386 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: oh, it's to do with type families < 1297273388 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :which are crazy < 1297273400 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: http://ehird.blogspot.com/2010/01/computing-fib3-in-haskells-type-system.html adequately shows how crazy they are < 1297273422 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it means you cannot deduce the type t from the type FPGlobalState t < 1297273432 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: (GHC actually does say "My brain just exploded.") < 1297273449 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: if you do "let Foo x ... = blah" where Foo is a constructor of an existential < 1297273452 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or, I think, a GADT < 1297273470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| qcgadt.hs:115:7: < 1297273470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| My brain just exploded. < 1297273470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| I can't handle pattern bindings for existentially-quantified < 1297273470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :constructors. < 1297273470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| In the binding group < 1297273470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| (Rep x) = uncompressRep s < 1297273472 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| In the definition of `uncompressRep': < 1297273474 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| uncompressRep (0 : 1 : 0 : s) = let (Rep x) = uncompressRep s < 1297273475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ah, I see, I think; ghc knows you've entered the wrong type, but can't figure out what the right type is, or if it even exists < 1297273476 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :in Rep < 1297273478 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| (RList x) < 1297273480 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :| Failed, modules loaded: none. < 1297273497 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yeah probably < 1297273566 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1297273571 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i should try BF Jousting < 1297273583 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yay, REFC works. < 1297273585 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That was painless < 1297273587 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I love Haskell. < 1297273601 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: What was the next one you suggested? FING? < 1297273605 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :how to try it out? i think there's a command here for one of the bots < 1297273607 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but what was it < 1297273627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust < 1297273627 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297273629 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://www.rcfunge98.com/rcsfingers.html#FING I see Mike never did stop trying to write the shortest possible specifications < 1297273643 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: ^ < 1297273650 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1297273687 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Want to elaborate on the FING specification? :-P < 1297273698 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's not much to add < 1297273704 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think that's one of his better specs :-P < 1297273721 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :He has test cases too, you know < 1297273727 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I saw fing.b98, yeah. < 1297273743 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OK, FING is semi-non-trivial with my current fingerprint code, so I'ma skip it for now. < 1297273750 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :EVAR looks easy. < 1297273795 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just remember that EVAR has to affect y < 1297273812 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It will automatically < 1297273815 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I don't cache anything about y < 1297273820 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Does anyone actually use y as pick, btw? :-P < 1297273826 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Mycology does < 1297273830 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's a little impractical for any other use < 1297273831 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Apart from Mycology. < 1297273835 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :yeah, because y is variable-length < 1297273840 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :due to the huge mess of stuff in between < 1297273846 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :well, you have to run y first < 1297273849 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and calculate its total length < 1297273851 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :before you can pick < 1297273858 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and if you ever change env var, etc.... < 1297273858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :isn't the length of y one of the things that y returns? < 1297273861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if so, you could use that < 1297273862 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(that's etc. + ellipsis) < 1297273863 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: nope < 1297273867 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it should be < 1297273870 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it uses 0 or two 0-terminated lists < 1297273875 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so you have to scan it all < 1297273878 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :pretty much < 1297273878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297273891 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No you don't < 1297273893 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: did i mention that the (two 0)-terminated list is of 0gnirtses? < 1297273895 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SUCH FUN < 1297273895 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it isn't possible to edit a program's command-line args while it's running from outside the program, is it? < 1297273905 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :well, you could fuck with argv directly < 1297273913 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I know on some OSes, programs that change argv will change the view in top < 1297273919 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Not in any common OS. < 1297273921 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I was wondering if it was possible to go the other way < 1297273923 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but you can do: < 1297273923 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :withArgs :: [String] -> IO a -> IO aSource < 1297273924 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :withArgs args act - while executing action act, have getArgs return args. < 1297273924 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :in haskell < 1297273926 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://www.haskell.org/ghc/docs/latest/html/libraries/base/System-Environment.html < 1297273927 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hey look < 1297273927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: some BSD, I think it works < 1297273929 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :look what's not there < 1297273929 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: There's a constant number of cells prior to the size of the TOS < 1297273930 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I forget which < 1297273932 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :look at a very interesting thing that's not there < 1297273936 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: well yes < 1297273936 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :the answer is:::: < 1297273939 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Wellllll, to be fair, you can map its memory into yours and do whatever the hell you want to. < 1297273940 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ANYTHING TO WRITE TO ENVIRONMENT < 1297273962 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Redecided about EVAR?-) < 1297273969 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nope, just asking #haskell :P < 1297273977 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :also, what happened to your eyes? < 1297273994 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FOBJ's spec is hilarious < 1297273996 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://www.rcfunge98.com/rcsfingers.html#FOBJ < 1297274003 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[INCREDIBLY VAGUE SPECIFICATION] [HUGE LIST OF CLARIFICATIONS] < 1297274022 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, that's how his specs look < 1297274032 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :#3587 (provide a cross-platform way to set environment variables ... < 1297274032 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Env (package unix) provides operations to set environment variables on Linux (and probably other unices). This ticket requests adding cross-platform ... < 1297274034 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :/facepalm < 1297274037 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOODBYE PORTABILITY < 1297274048 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :[80-char description per command] [explanatory bullet points] < 1297274076 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"FPRT 0x00000000 < 1297274081 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :A ( things -- other things ) do a thing < 1297274085 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :B ( things -- other things ) do another thing < 1297274089 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :* Thing is to be done simultaneously. < 1297274097 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :* If two things are done, resulting things are modified. < 1297274103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :* Modification to things is done by doing the other thing. < 1297274108 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[500 more bullet points] < 1297274111 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(It's an SDL interface) < 1297274114 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering what this had to do with FPRT for a while < 1297274121 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Is that a real fingerprint? < 1297274123 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*"FPRT" < 1297274124 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But then I realized you used it as a generic name < 1297274126 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is < 1297274129 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ha, it is < 1297274129 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It gives printf < 1297274135 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, sprintf < 1297274155 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :#haskell is too popular, nobody sees half the questions any more :P < 1297274167 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://hackage.haskell.org/trac/ghc/ticket/3587 LOTS OF ATTENTION PAID HERE < 1297274179 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :EXEC looks painful < 1297274226 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :System.Posix.Env - Haskell - HaskellWiki < 1297274227 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :getEnvDefault is a wrapper around getEnv where the programmer can specify a fallback if the variable is not found in the environment. ... < 1297274227 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :www.haskell.org/ghc/docs/latest/html/.../System-Posix-Env.html - Cached < 1297274228 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Google title inferring fail. < 1297274270 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So does EVAR's G default to "" or reflect < 1297274454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t sepBy < 1297274455 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Not in scope: `sepBy' < 1297274470 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I like how Data.List.Split lacks "split up to N of these". < 1297274475 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sorry -- I mean hate. < 1297274475 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t break < 1297274476 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a. (a -> Bool) -> [a] -> ([a], [a]) < 1297274483 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> break (=="=") "abc=def=quux" < 1297274484 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : Couldn't match expected type `[GHC.Types.Char]' < 1297274484 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : against inferred ty... < 1297274488 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> break (=='=') "abc=def=quux" < 1297274489 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : ("abc","=def=quux") < 1297274493 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> break (=='=') "abc" < 1297274494 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : ("abc","") < 1297274646 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : So does EVAR's G default to "" or reflect < 1297274647 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant? :p < 1297274658 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Shrug < 1297274675 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :PA < 1297274675 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*PAH < 1297274754 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i wish you would stop calling tripwires 'antitripwires', it is so confusing ;p < 1297274783 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: heh; what I meant there was that the checks I were using weren't regular tripwires (+[], check to see if it becomes 0) < 1297274796 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297274796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but checking the other way round, setting a cell to 1 and then checking to see if it was still at 1 < 1297274808 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i'm also on the phone so i'm a bit distracted lol < 1297274813 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so instead of triggering on 1 value out of 256, they trigger on 255 values out of 256 < 1297274831 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Vorpal: What was the next one you suggested? FING? <-- yes < 1297274839 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it is reasonably interesting < 1297274845 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I linked test program for it above < 1297274856 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Does EVAR's G default to "" or reflect < 1297274864 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, no idea. I don't implement EVAR < 1297274867 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Bah :P < 1297274871 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll assume reflect. < 1297274877 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ask Deewiant < 1297274880 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I did < 1297274882 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :He shrugged < 1297274899 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1297274904 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, doesn't the spec say anything? < 1297274914 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's MKRY < 1297274915 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So no < 1297274921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"EVAR" 0x45564152 < 1297274921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :G (0gnirts -- 0gnirts) Get value of an environment variable < 1297274921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :N ( -- n ) Get number of environment variables < 1297274921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :P (0gnirts --) Put a value into the environemnt (form: name=value) < 1297274921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :V (n -- 0gnirts) Get n'th environmnt variable (form: name=value) < 1297274924 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Not even any bullet points < 1297274926 0 :asiekierka!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297274930 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's too old for bullet points < 1297274938 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: :-D < 1297274942 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, btw this will be useful for those that you want to do but mycology doesn't test: http://www.rcfunge98.com/diag.html < 1297274944 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"Please make your specs less ambiguous" "[bullet points]" < 1297274951 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Pretty much < 1297274967 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, note: you don't want to do all of them. Some are just silly. Like that UNIX IPC one or whatever it was < 1297274969 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You can _test_ MVRS? :-P < 1297274973 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: UNIX IPC sounds like fun. < 1297274976 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297274981 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm tempted to implement WIND. < 1297274990 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you and rcfunge eh < 1297274992 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I'll do it portably! < 1297274999 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: What about it < 1297275002 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I suspect mvrs is annoying enough to test that it'll need a separate mycomvrs < 1297275010 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I just want to implement WIND because Deewiant doesn't and won't :-P < 1297275019 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: http://www.rcfunge98.com/mvrs.f98 http://www.rcfunge98.com/mvrs2.f98 < 1297275020 0 :shachaf!unknown@unknown.invalid QUIT :Ping timeout: 272 seconds < 1297275021 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :well congrats, this is not only super complicated but also successful < 1297275021 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Former requires latter) < 1297275025 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :"SMEM" 0x534d454d SysV IPC Shared Memory < 1297275030 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you will do that one right? < 1297275034 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: ABSOLUTELY < 1297275037 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I know he uses two files < 1297275039 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :"SMPH" 0x534d5048 SysV IPC Semaphores < 1297275039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Probably. < 1297275040 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that too < 1297275046 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, from haskell? shared memory? < 1297275048 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :what the hell < 1297275054 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: So do you need to Mycology it? < 1297275055 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :thanks for commenting it well ;D < 1297275061 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: You can use libc from Haskell, dude. < 1297275064 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And other C functions. < 1297275068 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1297275072 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: And it has extensive support for pointers. < 1297275075 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :As part of the FFI. < 1297275088 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This is because Haskell is awesome. < 1297275097 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, oh interesting. Now I have an urge to write something using ioctls in haskell. < 1297275107 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Good luck :P < 1297275116 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NCRS will be fun because ncurses is half macros! < 1297275120 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FUN FUN FUN < 1297275122 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FUUUUUUUUUUN < 1297275127 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, yes indeed. Deewiant complained about that too < 1297275140 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, and I say fuck it as well. #define clear() ... < 1297275141 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yeah right < 1297275150 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I ended up writing a C wrapper, it was the least painful way < 1297275151 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ever heard about PREFIXING IDENTIFIERS? < 1297275152 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Who made NCRS < 1297275153 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :NO? < 1297275161 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :interestingly, careless beats it (and all the defend programs, really), i didn't quite expect that < 1297275163 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Be kind, curses is ancient vintage software. < 1297275164 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, wasn't it that other one. Whatever the name was < 1297275172 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Jesse van Herk < 1297275173 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: ais523 says he can fix it but he's worried that it'd be cheating < 1297275177 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh right. < 1297275179 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297275183 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i know how to fix it too < 1297275190 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i'm just surprised nobody's done it yet < 1297275197 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: curses was 1979/1980 or so < 1297275197 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :well, at least how to get a good advantage on it < 1297275202 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So it's unsurprising that the API is unprefixed :P < 1297275204 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, fixing what? < 1297275211 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: defend13 to beat careless < 1297275213 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think ais523 should do it :P < 1297275217 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :but then we'd get into a modification war so i guess i don't blame him < 1297275237 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, true but the X/Open or whatever spec for curses does allow you to use functions for those macros iirc. But I guess the identifier collision would be even worse then < 1297275238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: I tried the careless strategy before, but it didn't work then, or maybe I screwed it up somehow < 1297275267 0 :shachaf!~shachaf@208.69.183.87 JOIN :#esoteric < 1297275269 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what is it that would be cheating? < 1297275270 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it strikes me as being an interesting thing to do in defence programs, to do only a partial rather than full tape-clear in order to beat other defence programs trying to tape-clear at the same time due to expired timers < 1297275280 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: modifying defend13 just to beat careless < 1297275284 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: adding a few + commands to the start of defend13 in order to beat careless < 1297275289 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's not a defense program < 1297275295 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's a fast attack program that doesn't use loops < 1297275296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I know it isn't < 1297275306 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :oh, i misread what you meant < 1297275311 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I'm not sure how that is cheating? < 1297275313 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I think the strategy might be viable in defense programs too < 1297275318 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :probably so < 1297275320 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering about it as a defence10 variant < 1297275323 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :also what is the strategy of careless? < 1297275327 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's not very thorough however < 1297275328 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(it wouldn't work well as a variant to 7) < 1297275334 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle [a] -> Int -> Maybe a < 1297275335 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude (!!) :: [a] -> Int -> a < 1297275335 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.List (!!) :: [a] -> Int -> a < 1297275335 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.List genericIndex :: Integral a => [b] -> a -> b < 1297275338 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gah < 1297275338 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :careless doesn't care if it wins or not < 1297275342 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it just plows on ahead < 1297275342 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1297275343 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: it changes every cell that could be the flag approximately 128 times < 1297275344 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :thus the name < 1297275344 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And length will be slow < 1297275354 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it jumps out 10 cells, attacks fast then tries to finish, repeat < 1297275354 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, length for? < 1297275363 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's like the extreme opposite of an offset clear < 1297275369 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: environment < 1297275373 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ah < 1297275379 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :with a little help from a 0-check < 1297275396 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :to speed it through empty cells < 1297275407 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :that's the thing that really helped it out < 1297275415 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it beats defend because it can't be trapped < 1297275421 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and the 0-check loops it around if it fails, i guess < 1297275424 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: come on, fix defend13 :) < 1297275429 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :myndzi, wouldn't do very well against defenders? Though I guess it would do well against attack programs < 1297275432 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and it's fast enough that it can move the cell value < 1297275444 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i made it to counter defend-style programs < 1297275450 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it beats all of ais's, and a bunch of impomatic's < 1297275457 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i don't know which of impomatic's are defenders from the names though < 1297275463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it wouldn't beat attackers < 1297275466 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :since attackers are usually fast < 1297275469 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :myndzi, wouldn't beat a shudder though < 1297275469 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and it's very slow < 1297275471 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I see impomatic made a program that beat all of his other programs, and didn't do well against many others < 1297275473 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it's faster than most attackers too < 1297275485 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :shudder is stupid and i don't care if i beat it < 1297275489 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :it'll fall off the hill soon enough < 1297275508 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :myndzi, sure. But nothing wrong with simple ones < 1297275511 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i could probably make it beat them though < 1297275522 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :no, nothing wrong with simple ones, i just don't care if it doesn't beat that particular one < 1297275526 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297275529 0 :impomatic!~chatzilla@86.241.112.87.dyn.plus.net JOIN :#esoteric < 1297275532 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, hi impomatic < 1297275544 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :myndzi, that you called it stupid made it look like you disliked the simple ones < 1297275551 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Hi :-) < 1297275559 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :no, just simple ones that don't do anything < 1297275566 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :myndzi, that would be . < 1297275568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :careless is weird in that it's trivially counterable, and trivially adjustable to avoid that method of making it counterable at the cost of slowing it down slighlty < 1297275570 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: nice score from defend13 ;-) < 1297275571 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :myndzi, ;P < 1297275573 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1297275576 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :rolleyes :P < 1297275581 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I'd say that it's a valid program strategy < 1297275583 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :lol #haskell are all < 1297275589 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :WHY DO YOU WANT TO ACCESS A SPECIFIC INDEX OF THE NEIVORNMENT < 1297275590 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and i'm like < 1297275594 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it's not my fault < 1297275596 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yeah, but i don't want to call attention to it because i don't want to have to do that haha < 1297275596 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :don't blame me :( < 1297275605 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i don't want to be in another optimize war < 1297275612 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i accidentally did it in butter though < 1297275613 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, I get a lot of that too when I complain about stuff in Tango < 1297275616 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :then fixed it < 1297275616 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : oh god, it's homework isn't it? < 1297275618 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"WHY" "Because I have to" < 1297275625 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how do you do it in ccbi < 1297275629 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I've just linked them to the EVAR spec to shut them up < 1297275629 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :haha butter isn't positive anymore < 1297275633 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :but i don't care, it beats shudder programs! < 1297275636 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it isn't like you have char **environ is it? < 1297275644 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :and a surprising number of others, really < 1297275645 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: defend13 is a cross between my strategies of mathematical defence loops, myndzi's of trying multiple defense strategies in order to beat multiple styles of opponents, and yours of doing something different after a timeout < 1297275652 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: setenv / SetEnvironmentVariableA < 1297275654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I did a lot of experimenting into doing timeouts that wouldn't kill egobot, btw < 1297275655 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, wait you could do this with the FFI. char **environ < 1297275661 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, for index I meant < 1297275665 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :anyway, finally off the phone with comcast and super late for work < 1297275671 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if a loop contains no [ or ], it's best to do it as ()*9999 or whatever < 1297275677 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :good job once more ais, pretty nice work < 1297275679 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, or didn't you mean integer index? < 1297275679 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: environ / GetEnvironmentVariablesA (or whatever it's called, don't remember that one) < 1297275684 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : wow < 1297275684 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : a funge interpreter < 1297275690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if it does contain [], it's best to put it inside several nested ()* loops, as in ((([])*5)*5)*5 < 1297275703 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure offhand why egojoust finds those less problematic, but it does < 1297275728 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what if you want a single [] though... < 1297275731 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION considers referring hpc to here, decides he's mentioned #esoteric enough in #haskell < 1297275736 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :(to be clear, i didn't actually enter any programs with the idea he mentions, i just suggested it to him because it seemed up his alley ;) < 1297275766 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, how do you NORMALLY get env vars in haskell? For use in y and such < 1297275775 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: He can get them, he can't modify them < 1297275786 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : so you have legacy software in befunge that needs supported? < 1297275789 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: System.Environment < 1297275794 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what do you do when you want to execute something with a modified environment? < 1297275801 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh wait, you pass it the environment? < 1297275804 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I think the process stuff has that... maybe... < 1297275806 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :If not: You don't. < 1297275812 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :To modify: System.Posix.Env :-P < 1297275813 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: that xplat quote deserves to be added to `addquote < 1297275823 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297275824 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :`addquote so you have legacy software in befunge that needs supported? < 1297275825 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :302) so you have legacy software in befunge that needs supported? < 1297275826 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you're welcome, ais523 < 1297275832 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1297275837 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : so you have legacy software in befunge that needs supported? <-- was that... serious? < 1297275842 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Let me know when you buy a keyboard with a ` key, ais523 < 1297275844 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :by the way, i also like the use of the nonzero-check < 1297275845 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: No. < 1297275855 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, *phew* < 1297275856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: my ` key is to the left of spacebar < 1297275868 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Let me know when you buy a keyboard with a ` key, ais523 <-- " elliott: that xplat quote deserves to be added to `addquote" <-- notice the ` there? < 1297275873 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: What key in "`addquote " can't you type, then < 1297275874 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1297275900 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Woo, EVAR works < 1297275902 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: which one? or don't I understand what you mean? < 1297275906 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :every loop in BF is a nonzero-check < 1297275921 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I think he joked about you asking it to be added instead of doing it yourself < 1297275925 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1297275926 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Do you implement FORK :-D < 1297275930 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :the "reverse tripwire" < 1297275932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: it was wanting a second opinion < 1297275934 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :myndzi: ah < 1297275937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that really needs a better name < 1297275940 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :(which i like better than "anti") < 1297275944 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :inverse < 1297275945 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :perhaps < 1297275948 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :anyway, got to go < 1297275949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, inverse tripwire might do < 1297275951 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :happy fucking < 1297275952 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I don't implement much of the new stuff, in particular the system-level stuff < 1297275952 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :;p < 1297275970 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :The system-level stuff is the easy stuff :P < 1297275987 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'll do HRTI now, seems easy enough < 1297275991 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Has anyone used a Rabbit 2000? < 1297275992 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I can't imagine sysv shm being easy in haskell. < 1297275992 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In particular stuff like FORK which is hard to do cross-platform. < 1297276004 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: As easy as Haskell + constant overhead of FFI stuff. < 1297276015 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :rm < 1297276016 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :erm < 1297276019 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: As easy as C + constant overhead of FFI stuff. < 1297276024 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or linear overhead, I guess < 1297276030 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, do you know how painful sysv shm is in *C*? < 1297276039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"As easy" could be "very hard". < 1297276087 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, so the only thing that can really halt the FFI is the macroness of ncurses? < 1297276092 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :DING DING DING DEPENDENCY ADDED < 1297276097 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: That would be a pain, yes. < 1297276103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'd probably just use an ncurses binding. < 1297276111 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, seems sane < 1297276115 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle ncurses < 1297276116 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :No results found < 1297276121 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle curses < 1297276121 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :No results found < 1297276130 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : xplat: that's normal: getenv() is in the C standard, setenv() is only in POSIX < 1297276130 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : xplat: so it totally makes sense for Haskell to only export setEnv in System.Posix.env < 1297276132 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :wait, how do you search hackage with it < 1297276132 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< Stupid C < 1297276135 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: You don't < 1297276141 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Pertinent: why should a /language/ standard (for a language other than haskell) be more significant than an /operating system/ standard?) < 1297276142 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, oh. Boring. < 1297276146 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hackage < 1297276146 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :http://hackage.haskell.org < 1297276159 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: "other than haskell" < 1297276178 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ? < 1297276180 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :"hayoo", "hoogle" <-- why these lame puns. < 1297276185 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm mentioning your quote < 1297276196 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Hoogle came first < 1297276203 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hayoo came after Hoogle got popular < 1297276205 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: What about it? < 1297276213 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, that doesn't really justify the lame pun bit for either < 1297276229 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, anyway, there seem to be a handful of bindings yeah < 1297276254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: I was wondering why he thought Haskell standard > OS standard > other lang standards < 1297276256 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it seems rather specific < 1297276263 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, UI.HSCurses and UI.NCurses at least < 1297276269 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: because Haskell is defined independent of C < 1297276276 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so are several other langs? < 1297276291 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so why should C dictate Haskell's libraries? < 1297276312 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I didn't realise it was in refernce to Haskell's libraries < 1297276329 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought he was saying you should care more about what Haskell does than what Funge does in your interp < 1297276380 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gah, HRTI stuff for Haskell is Unix-specific < 1297276392 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"WINDOWS reference: !! This early version is posix-only and does not build on Windows. Support will be added in the future. !! < 1297276393 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :" < 1297276399 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you could try TERM. It could be done with just raw control codes if you want to avoid ncurses. Though that isn't very portable of course < 1297276403 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Ew. < 1297276421 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I mean, you do want to run it on old non-vt100 style terminals right? < 1297276431 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Har har har < 1297276451 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hackage clock < 1297276451 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :http://hackage.haskell.org/package/clock < 1297276452 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, this one you probably need FFI for: http://www.rcfunge98.com/rcsfingers.html#REXP < 1297276473 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, reason is that those flags are pretty much the exact ones found in the posix regexp stuff < 1297276478 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This backend provides a Haskell interface for the "posix" c-library that comes with most operating systems, and is provided by include "regex.h". This c-library probably also drives command line utilities such as sed and grep. < 1297276485 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :regex-posix < 1297276491 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ah right < 1297276494 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[["Posix" is in quotes since it is often not fully Posix compliant and may be buggy (as on OS X, where the bug also affects sed). < 1297276494 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And the c-library has what I call impossibly-slow performance, as in at least 100x slower than other regex engines.]] < 1297276520 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, that depends on implementations < 1297276534 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :-- fucking unportable Haskell libraries < 1297276535 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :import System.Posix.Clock < 1297276538 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :--HRTI.hs < 1297276549 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :thx ais523 < 1297276557 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, doesn't it provide a portable clock API? < 1297276572 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Not a high-resolution one. < 1297276580 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Well... < 1297276584 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think the time library goes down to picoseconds. < 1297276588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: what are you thanking me for, btw? < 1297276595 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, that should be enough? < 1297276616 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: well maybe < 1297276641 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: but it also has hour/minute fields < 1297276642 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so -> bitch < 1297276666 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I don't think it has to be unix time? < 1297276672 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :gah, microseconds, but the posix api is nanoseconds since second < 1297276675 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fuck this, HRTI is done later < 1297276681 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I mean I'd have to handle rollover < 1297276682 0 :Sgeo_!~Sgeo@137.125.187.237 JOIN :#esoteric < 1297276685 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, what. It is just some basic scaling factors? < 1297276694 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: I'm lazy and the API sucks anyway < 1297276701 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, which API? < 1297276711 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :POSIX :P < 1297276720 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: are you sure there's no perl API call to eval a string? :-) < 1297276749 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: no, but... you'd have to initialise a new perl interp from inside the C, and tell it to eval the string < 1297276756 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is pretty much identical to just using perl(1) < 1297276767 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Didn't you have some crazy way to pass the string to perl? < 1297276777 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I suppose perl -e 'print (expr)' isn't enough < 1297276787 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What about < 1297276791 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :perl -e 'print eval("expr")' < 1297276792 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, uh I can't find where you have to handle rollovers < 1297276795 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's mostly fizzie's, you can look it up < 1297276797 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In the source < 1297276809 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: osjidgfhgohjdpfosgnsipfdbojker < 1297276811 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the time package < 1297276812 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :provides the result < 1297276813 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :in < 1297276820 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I thought you said the POSIX one < 1297276821 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(hours,minutes,seconds-up-to-picoseconds-as-fixed-precision) < 1297276822 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1297276824 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297276827 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This was for if I wasn't using it < 1297276833 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :right < 1297276850 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, PERL is a bit complex to get right with regards to file descriptors < 1297276885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, Emacs' brainfuck-mode is so useful for BF Joust < 1297276888 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Why does that matter < 1297276888 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads cfunge code < 1297276899 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: s/Emacs'/my/ surely < 1297276906 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes, I wrote it < 1297276940 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what on earth is .txz? < 1297276944 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : I've just linked them to the EVAR spec to shut them up <-- "ok it's not homework, he's just insane" < 1297276952 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: You've asked that before. < 1297276955 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :.tar.xz. < 1297276957 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, aha < 1297276959 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: precisely! < 1297276959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :instead of trivially tweaking defend13 to beat careless, I'm detecting careless-style programs in order to beat them altogether < 1297276974 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I'm sure you don't remember everything either < 1297276987 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hey Vorpal < 1297276991 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Do you implement MKRY? < 1297276992 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I forget < 1297277007 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I don't < 1297277008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I'm sure you don't remember everything either < 1297277035 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ? < 1297277038 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's what I was trolling Vorpal for :P < 1297277041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: yep < 1297277050 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was trolling the entire conversation < 1297277051 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Anything that the Perl program writes to stdout or stderr is captured and < 1297277051 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : redirected to the Funge program's stdout. Trying to forcibly write to < 1297277051 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : stderr from within the Perl (through tricks such as 'open($my_stderr, < 1297277051 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : ">&2")') is deemed undefined behaviour and you do so at your own risk.` < 1297277056 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I don't see any need for this < 1297277065 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Where does PERL say that output to stdout works properly < 1297277079 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Where does it say that it doesn't? :-P < 1297277080 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Is it in the Cat's Eye fingerprint test suite now on rcfunge's website? < 1297277132 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it says "the result of the call" < 1297277133 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Where does it say that writing to stderr by doing open($my_stderr,">&2") doesn't work < 1297277143 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it doesn't say "the output of the call" < 1297277150 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Got a tutorial on the C perl API anywhere? < 1297277158 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perldoc perlxstut < 1297277161 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1297277167 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: In my code < 1297277188 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you use the C Perl API instead of calling it? < 1297277202 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Har har har < 1297277204 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I wasn't aware such an API existed until elliott mentioned it today < 1297277209 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1297277218 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to use it because CCBI's code looks like a mess :-P < 1297277223 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, anyway here is why you have to preserve stdout: < 1297277234 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :"The result of the call is pushed as a 0gnirts string back onto the stack." < 1297277250 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, notice that is "result of call" as in "return value", not as in "standard output" < 1297277256 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I realise. < 1297277284 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Using the FFI to talk to perl's C API to implement a Funge interpreter. Where did I go wrong? < 1297277292 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, here is what I do basically, and I think I got most of it from fizzie: perl -e "open(CFUNGE_REALERR, \">&STDERR\"); open(STDERR, \">&STDOUT\"); print CFUNGE_REALERR eval($ARGV[0])" < 1297277301 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :CFUNGE_REALERR. Enterprisey. < 1297277308 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Our first extension will be very simple. When we call the routine in the extension, it will print out a well-known message and return. < 1297277308 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Run ""h2xs -A -n Mytest"". This creates a directory named Mytest, possibly under ext/ if that directory exists in the current working directory. Several files will < 1297277308 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : be created under the Mytest dir, including MANIFEST, Makefile.PL, lib/Mytest.pm, Mytest.xs, t/Mytest.t, and Changes. < 1297277314 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No, perl, I want to do it without any automatic shit < 1297277318 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, you need to swap around file descriptors :P < 1297277327 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: this seems to be rather a guide to making perl extension modules >_< < 1297277354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Add the following to the end of Mytest.xs: < 1297277354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : int < 1297277354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : is_even(input) < 1297277354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : int input < 1297277354 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : CODE: < 1297277355 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : RETVAL = (input % 2 == 0); < 1297277356 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: it is, that's what the API's generally used for < 1297277356 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : OUTPUT: < 1297277358 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : RETVAL < 1297277362 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What the fuck. < 1297277366 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That.... I... what. < 1297277369 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's not C. < 1297277373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's preprocessed < 1297277379 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This is hideous. < 1297277381 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the actual internals of the API aren't human-consumable < 1297277385 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297277392 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This is the most hideous. < 1297277395 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hah < 1297277398 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Great. Those are the bits I need :-P < 1297277402 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: for writing two programs today that don't beat the awesome jouster i wrote last night thereby moving me up the scoreboard to 4th place without having to do anything :P < 1297277403 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Who would've thought, Perl's API is a hideous mess < 1297277403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :try perldoc perlint, I think < 1297277406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it isn't a tutorial < 1297277411 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: heh < 1297277411 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Today, my group is doing stuff with spreadsheets < 1297277415 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: The great thing is, I can claim that Perl is shelled < 1297277424 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I just have to initialise the interpreter on fingerprint load < 1297277427 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, and I thought the damn python C API was an abomination. But it pales into insignificance when compared to what you just pasted! < 1297277442 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No documentation found for "perlint". < 1297277458 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : because the actual internals of the API aren't human-consumable <-- why < 1297277460 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: also, it would appear i am your archnemesis, since you couldn't beat either of my other two "real" programs either < 1297277470 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :wait true python API does macro stuff too < 1297277474 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but that is just C macros < 1297277477 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1297277478 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: perlembed < 1297277479 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not that sort of insane stuff < 1297277480 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://search.cpan.org/~rjbs/perl-5.12.3/pod/perlembed.pod < 1297277481 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :perlembed - how to embed perl in your C program < 1297277488 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :If you have trouble compiling the scripts in this documentation, you're not alone. The cardinal rule: COMPILE THE PROGRAMS IN EXACTLY THE SAME WAY THAT YOUR PERL WAS COMPILED. (Sorry for yelling.) < 1297277490 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Yes, that's what I'd expect you to do if you're using the API :-P < 1297277490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, that's not the API at all, but on the other hand it's probably what you want < 1297277508 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle maybeToList < 1297277508 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Maybe maybeToList :: Maybe a -> [a] < 1297277508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I like how it tells me to do `perl ...`. < 1297277512 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I guess I'll have to abandon ghc --make soon. < 1297277515 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it is likely to be macro heavy still < 1297277517 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :er wait < 1297277526 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle listToMaybe < 1297277526 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Maybe listToMaybe :: [a] -> Maybe a < 1297277530 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: ^ < 1297277537 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that + drop (n-1) < 1297277552 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Welcome to five years ago? < 1297277564 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(also listToMaybe = mplus, i think) < 1297277568 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's drop n, anyway < 1297277582 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: hm right < 1297277605 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :* sproingie ponders, staticly typed Befunge. StrongFunge. < 1297277607 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NEVER LET HIM NEAR US < 1297277617 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : spoingie: we need dependently typed strongfunge < 1297277618 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh dear god < 1297277637 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why not have a statically typed funge? < 1297277646 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yay, I Have to do "PERL_SYS_INIT3(&argc,&argv,&env)" < 1297277648 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*have < 1297277652 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that sounds like funs! < 1297277656 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :plural funs < 1297277665 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :WHY DOES PERL_PARSE TAKE ARGC AND ARGV < 1297277667 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OH < 1297277668 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I SEE < 1297277670 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*lowercase < 1297277672 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: YOU invent the type checker then < 1297277673 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : spoingie: we need dependently typed strongfunge <-- awesome < 1297277682 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : what about strongly typed unlambda? < 1297277685 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : that's another big market segment, and closer to haskell's spirit < 1297277693 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: it'd need to be a funge designed to be easier to compile, I think < 1297277698 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, it will be easier to just exec perl < 1297277703 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : But Unlambda is impure!!! < 1297277703 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Clearly you mean Lazy K. < 1297277713 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that's like an INTERCAL designed to be more mainstream < 1297277723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not that there's anything wrong with that < 1297277733 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : oerjan: it'd need to be a funge designed to be easier to compile, I think <-- you just forgot a key point of befunge < 1297277737 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But that will fail if someone writes to fd 3. < 1297277739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: no, I'm aware of it < 1297277746 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I should have said fungeoid, really < 1297277766 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, 3? < 1297277773 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Or 42. < 1297277775 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I haven't decided yet. < 1297277778 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, writing comments where the only punctuation mark you can really use is ; is frustrating, and looks bizarre < 1297277789 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, but where did they get that fd from? < 1297277798 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I just invented it. < 1297277824 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I mean, don't you need to actually open a fd somehow in perl before using it < 1297277832 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :which would presumably check if it was free < 1297277839 0 :pingveno!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297277851 0 :nescience!~myndzi@m610e36d0.tmodns.net JOIN :#esoteric < 1297277877 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : ais523: yay, I Have to do "PERL_SYS_INIT3(&argc,&argv,&env)" <-- that sounds like a macro to me < 1297277882 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :$ perl 42>x; cat x < 1297277882 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :open FOOP,"<&=42"; < 1297277882 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :print FOOP "hello\n"; < 1297277882 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :close FOOP; < 1297277884 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :darn doesn't work < 1297277931 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :hey gregor < 1297277948 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I noticed from breakdown.txt that there are four results for bfjoust runs < 1297277954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :$ perl 42>x; cat x < 1297277954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :open FOOP, ">&42"; < 1297277955 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :print FOOP "hello\n"; < 1297277955 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1297277955 0 :pingveno!~pingveno@c-98-246-133-8.hsd1.or.comcast.net JOIN :#esoteric < 1297277956 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nailed it < 1297277966 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :presumably polarity switches: ++ +- -+ -- < 1297277976 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :nescience: Yes yes, and they're redundant, we know. < 1297277981 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1297277991 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: EgoBot's BF Joust hg repo seems out of date < 1297277999 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has sicilian_defence at the tip, for some reason < 1297278001 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I figured it'd run twice as fast < 1297278001 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, heh you could cut time in half by just using ++ and +- < 1297278015 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol he just acknowledged that ;) < 1297278025 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my local copy of egojoust has a command-line param to choose tapelength, and swaps polarity of one of the programs if it's negative < 1297278027 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :my $_SHIRO_FUN = sub { eval($ARGV[0]); } < 1297278027 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :open my $_SHIRO_OUT = ">&42"; < 1297278027 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :print $_SHIRO_OUT $_SHIRO_FUN->(); < 1297278034 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*OUT, " < 1297278047 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, exits silently if it's between -9 and 9, so I can just use seq -30 30 | xargs -n 1 to run a pair of programs at all lengths and polarities < 1297278058 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Srsly, just make it +- -+. < 1297278060 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, that's a nice solution < 1297278066 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, ... :P < 1297278072 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: ? < 1297278083 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: do you mean +- ++? < 1297278086 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Shouldn't it be ++ +-? < 1297278091 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :erm, right < 1297278093 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, 1) nice solution to perl code 2) "..." to +- -+ < 1297278095 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :++ +- < 1297278099 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: DUMBASS oh burn < 1297278101 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1297278107 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :f u < 1297278120 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I LIKE THE PART WHERE SYSTEM.PROCESS SUCKS < 1297278123 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :+- -+ are the same < 1297278125 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Now what's this about a repo being out of date? < 1297278129 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :efb < 1297278135 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :phonetyping blol < 1297278142 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I just pulled and updated; apparently "hg tip" lists summary: Adding/updating impomatic_sicilian_defence.bfjoust < 1297278144 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Can your pipe thing handle fd 42 < 1297278145 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :cold fingers too < 1297278150 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that definitely isn't the most recent program submitted < 1297278160 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Beats me < 1297278172 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: That's pretty bizarre ... don't care to fix it right now :P < 1297278175 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"perl api from haskell" -- NO RELEVANT RESULTS < 1297278181 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I think you broke it when doing the new hill < 1297278201 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Probably < 1297278227 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, use the C FFI to call fork() ? < 1297278230 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You know what, fuck Perl. < 1297278235 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, not sure what the hell that would do to haskell though < 1297278241 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: That would... yeah, no. < 1297278264 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :elliott, but since it's C FFI is so wonderful (according to one E. Hird) I'm sure it will handle it < 1297278265 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BOOL! < 1297278266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's got to be worth a try < 1297278268 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BOOL looks fucking easy. < 1297278273 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm doing Bool. < 1297278283 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, fork() in Haskell code is the kind of thing that would make GHC's runtime hate you, I think < 1297278284 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The mathy ones are easy in general < 1297278290 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FIXP, FPSP, FPDP, etc. < 1297278298 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297278313 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well FIXP has a snag. Does haskell have long double? < 1297278337 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why does FIXP need long double < 1297278368 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Bleh, repo went all corruptomatic. < 1297278369 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well you could do sin() fixed point :P < 1297278394 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Repull? < 1297278411 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Aren't doubles accurate enough for that? (I haven't bothered looking at the details) < 1297278413 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :What repo? < 1297278417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in_egobot < 1297278432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: it's not too hard, use the Taylor series < 1297278433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: doing so < 1297278441 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that looks better, ty < 1297278477 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, "meh" < 1297278508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Haskell has long double, it's called Double. < 1297278517 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Erm. < 1297278521 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wait, long double. < 1297278526 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle Bool -> Bool -> Bool < 1297278527 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude (&&) :: Bool -> Bool -> Bool < 1297278527 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Prelude (||) :: Bool -> Bool -> Bool < 1297278527 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Bool (&&) :: Bool -> Bool -> Bool < 1297278535 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I meant xor, stupid search. < 1297278547 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"xor" < 1297278555 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle xor < 1297278555 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Bits xor :: Bits a => a -> a -> a < 1297278559 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Say what you mean < 1297278564 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I meant boolean xor. < 1297278570 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: (!=) < 1297278575 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*/= < 1297278580 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Bleh < 1297278594 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I like how BOOL's N is just ! from the core. < 1297278638 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Nope, it's one's complement < 1297278649 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :...based on what < 1297278651 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you're doing BOOL you want the Data.Bits stuff < 1297278658 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :THEN WHY IS IT CALLED BOOL < 1297278658 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Based on how it works < 1297278667 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :IT'S NOT BOOL, IT'S BITW < 1297278766 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::t fmap < 1297278767 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :forall a b (f :: * -> *). (Functor f) => (a -> b) -> f a -> f b < 1297278768 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :/win/win 3 < 1297278981 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Dude! Deewiant! Mycology doesn't test BOOL! < 1297278986 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Unforgivable! < 1297279017 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh well, it passes Mike's test :P < 1297279152 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :defend14 is running locally, I wonder how well it'll do? < 1297279162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I added a few extra strategies for it to detect and lock in place, or counter differently < 1297279210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's going kind-of slowly; it doesn't /quite/ break egojoust, but it's pretty complex < 1297279230 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: In the year 3000, all BF Joust programs will be at least 3000 lines long, with the top competitors at about 17,000 lines of carefully tweaked code developed by teams. Then someone will come along and submit >[[-]>+] and it'll beat them all. < 1297279241 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1297279256 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :don't you mean >+[[-]>+]? < 1297279259 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :er, yes < 1297279263 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Funny since that code moves one step to the --- damn, ais523 got it first :P < 1297279264 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I was going for defend1, but forgot it < 1297279268 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :[+right and then quits] < 1297279272 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: THAT'S JUST HOW BAD THEY ARE < 1297279294 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't thing >+[[-]>+] can win unless the opponent suicides < 1297279302 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it puts a helpful + there so that tripwire-avoiders can also kill it < 1297279325 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :however.... < 1297279326 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust muphry >+[[-]>+ < 1297279328 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1297279329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust muphry >+[[-]>+] < 1297279356 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_muphry: 7.8 < 1297279356 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_muphry: 7.8 < 1297279389 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust flyingleap >>>>>>>>>>>>>>>+[>[[-]]+] < 1297279401 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :7.8 both times, classic < 1297279409 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for quintopia_flyingleap: 1.6 < 1297279413 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :lul < 1297279434 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust bungee >+>>>>>>>>>>>>>>+[>[[-]]+] < 1297279443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure how well my mindbogglingly slow rush detector will work < 1297279450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(or whether it'll actually win after detecting it) < 1297279455 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_bungee: 3.1 < 1297279461 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust bungee >+>>>>>>>>>>>>>>+[[-]>+] < 1297279472 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>-(>)*16((-)*5[-]>+(+)*5[+]>+)*13 < 1297279482 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_bungee: 2.9 < 1297279498 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 0.8 < 1297279501 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's not a proper offset clear elliott. what are you doing. < 1297279508 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297279512 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :why did it do _so_ badly? < 1297279522 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(-)*5[-] < 1297279527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's like... the opposite of an offset clear < 1297279532 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh, duh :D < 1297279548 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it would have been hilarious if that worked < 1297279557 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, it looks rather like it goes off the end of the tape quite readily < 1297279558 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>-(>)*16((-)*5[+]>+(+)*5[-]>+)*13 < 1297279561 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: thus the name < 1297279564 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(derived from "leap of faith") < 1297279567 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(inspired by "flyingleap") < 1297279571 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 1.0 < 1297279583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in particularly, the *13 at the end is higher than it needs to be for no reason at all < 1297279589 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the idea is that you die on short tape, but on long tape, you skip all of the decoys < 1297279592 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :er, is it? < 1297279594 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's a mistake then < 1297279595 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you may as well stop and do a proper clear if you happen to reach the 30th cell < 1297279599 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The tape length is 20-30 < 1297279602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: *10-30 < 1297279608 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Darn < 1297279620 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: So yeah, the (>)*16 is a good way to lower your score < 1297279625 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :apparently faith gets you nowhere < 1297279627 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1297279630 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oh, it's actually >>*13 < 1297279633 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1297279660 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, it's intruiging why defend9 is doing a lot better than it used to < 1297279665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perhaps people have stopped trying to counter it < 1297279672 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>-(>)*15((-)*5[+]>+(+)*5[-]>+)*5(-)*100[-] < 1297279688 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 1.1 < 1297279688 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and I'm curious as to whether tripstridewire will ever fall off altogether, or just stay near the bottom indefinitely) < 1297279694 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :1.1! < 1297279696 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's a win in my book < 1297279716 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>-(>)*6((-)*5[+]>+(+)*5[-]>+)*10(-)*100[-] < 1297279722 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: taller_towers also beats that one for some reason < 1297279723 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :off-by-ones are my main bug i think usually < 1297279738 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 18.3 < 1297279743 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1297279752 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1297279753 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :lol I was thinking about trying to add some extra >s to careless < 1297279759 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :you took out the fall-off code < 1297279760 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :to skip a few decoys < 1297279763 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :18.3! < 1297279764 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that's not bad < 1297279781 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>-(>)*6((-)*5[++][+]>+(+)*5[--][-]>+)*10(-)*100[-] < 1297279782 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtles_can_fly_but_slowly ((>++>--)*4<<<<)*1000(>)*8-[[+>(+)*128..>(-)*128..-]+] < 1297279786 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: best name ever < 1297279787 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the thing is, adding extra >s gains you as much in skipping decoys as it loses in falling off the tape < 1297279796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unless the opponent is leaving a decoy trail, and that's rare nowadays < 1297279797 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :why do all the good players use boring names? < 1297279799 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :course it's not bad. fast rushers with offset clears do not bad. there is no faith anymore. < 1297279801 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1297279802 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and all the bad players use awesome names < 1297279805 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :what's up with that < 1297279810 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :nescience: i'm counting on you to start using some of this good name juice < 1297279813 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I was just curious what would happen < 1297279817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I will point out that it falls off the end of the tape quite aerly < 1297279824 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :what, I like my names < 1297279834 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I like good words and simple names < 1297279838 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297279841 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :you all suck < 1297279846 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I like impomatic's names < 1297279850 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :also non table breaking < 1297279857 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I prefer mine to be descriptive so I can easily remember what they did < 1297279861 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 1.5 < 1297279862 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtles_can_fly_but_slowly: 0.0 < 1297279866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and some are fun, like "decoybooster" < 1297279870 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :... wow, really, that bad? < 1297279873 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i was looking up chess openings last night, trying to figure out what the sicilian opening had to do with bf joust... < 1297279890 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: you repeatedly go right eight times, then left four < 1297279897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not entirely sure what that's meant to accomplish, but it won't help much < 1297279899 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Oh, hahahah, I can totally count X-D < 1297279904 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>->+>-->++(>)*3((-)*10[+]>+(+)*10[-]>+)*10(-)*100[-] < 1297279925 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 19.5 < 1297279936 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :19.5! < 1297279938 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in_egobot/ais523_defend13.bfjoust vs defend14.bj: 11 (standard): Tie (left loss: flag fell; right loss: flag fell)! < 1297279939 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :maybe I should rename all my programs that are good to have epic names :P < 1297279940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, that's rare < 1297279943 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :decoys are back < 1297279944 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :seriously < 1297279945 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :decoys < 1297279948 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :they're what's for dinner < 1297279951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although makes sense, because they both detect each other as defence programs and go symmetrically from there < 1297279965 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>->+>-->++>---->+>--((-)*10[+]>+(+)*10[-]>+)*10(-)*100[-] < 1297279996 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 19.8 < 1297280012 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : ... wow, really, that bad? <-- this is not Discworld you know < 1297280020 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust turtles_can_fly_but_slowly ((>++>--)*4<<<<<<<<)*250(>)*8-[[+>[+]..>[-]..-]+] < 1297280023 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :19.8 < 1297280027 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: do you think this can work :D < 1297280034 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i really think everybody forgot that decoys exist < 1297280041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, looks like 14 is too clever for its own good < 1297280044 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I probably won't submit it < 1297280048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it wouldn't do too well < 1297280049 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_turtles_can_fly_but_slowly: 1.5 < 1297280050 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>->+>-->++>---->+>--((-)*10[+]>+(+)*10[-]>+)*20(-)*100[-] < 1297280055 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297280057 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OK, no more flying turtles :P < 1297280058 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i don't understand how turtle_rescue_squad hung on so long :P < 1297280087 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 19.7 < 1297280088 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean forgot < 1297280100 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :I have decoys in every program I wrote? < 1297280104 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :i just realised that mine doesn't work for tape length >20 or so < 1297280104 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but eh < 1297280105 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :well < 1297280106 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :doesn't wor kas well < 1297280107 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so < 1297280111 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :constant tweaking time < 1297280116 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>->+>-->++>---->+>--((-)*10[+]>+(+)*10[-]>+)*17(-)*100[-] < 1297280138 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 19.7 < 1297280154 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>->+>-->++>---->+>--((-)*10[+]>+(+)*10[-]>+)*13(-)*100[-] < 1297280180 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 19.7 < 1297280184 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1297280187 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust but_what_of_faith >->+>->+>-->++>---->+>--((-)*10[+]>+(+)*10[-]>+)*10(-)*100[-] < 1297280191 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :just go back to that version < 1297280196 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust < 1297280196 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297280209 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_but_what_of_faith: 19.8 < 1297280218 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ok, i primarily win against Gregor < 1297280219 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it seems :D < 1297280335 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust furry_furry_bondage_girls [[(-)*128((+)*10(-)*20(+)*19(-)*18(+)*17(-)*16(+)*15(-)*14(+)*13(-)*12(+)*11(-)*10(+)*9(-)*8(+)*7(-)*6(+)*5(-)*4(+)*3(-)*2(+)*1)*1000(+)*128]+] < 1297280342 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :...best warrior name ever? < 1297280372 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric : wiggle3 leaves a trail behind as it moves unless the opponent is leaving a decoy trail, and that's rare nowadays < 1297280387 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust my_name_may_be_super_bat_man_but_my_real_name_is_peter_bruce_parker_wayne >(-)*127>(+)*127>+>->>++>----------->+>+++++[>-[-]>-[+]] < 1297280393 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :strange. one of the top players leaves a trail, so why is it so rare? < 1297280408 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_furry_furry_bondage_girls: 15.4 < 1297280409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: because we all got lost in meta-strategy < 1297280411 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: it's just an observation, not a statement about what ought to be true < 1297280418 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and the more advanced warriors started not needing decoys < 1297280418 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1297280421 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because of their strange tactics < 1297280427 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :then when it all blended together and they became less specialised < 1297280432 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :we forgot to start doing decoys again < 1297280451 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_my_name_may_be_super_bat_man_but_my_real_name_is_peter_bruce_parker_wayne: 1.5 < 1297280467 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1297280478 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Decoys + modified defend1: NOT THE BEST STRATEGY < 1297280493 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor_furry_furry_bondage_girls.bfjoust vs elliott_my_name_may_be_super_bat_man_but_my_real_name_is_peter_bruce_parker_wayne.bfjoust: < 1297280493 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :<>>XXXXXXXXXXXXXXXXXX <<>XXXXXXXXXXXXXXXXXX <<>XXXXXXXXXXXXXXXXXX <>>XXXXXXXXXXXXXXXXXX < 1297280494 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Tie < 1297280501 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :FWIW, taller_towers also leaves a decoy trail (and it now is beating wiggle3) < 1297280502 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Shit buddies *hi5* < 1297280508 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Woooh < 1297280541 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: wtf does FFBG doooooooo? < 1297280551 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust a_more_perfect_union >-[[-]++++>-[+]----->+] < 1297280554 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: It's just a (very bad) shudderer < 1297280561 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's what it looks like :P < 1297280600 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust even_worse_shudderer (-)*127(.+-)*100000 < 1297280639 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Err ... wow, yeah that one is bad :P < 1297280644 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :that's an alternator gregor < 1297280646 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Worse than I even intended it to be. < 1297280650 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :a more perfect union is not doing well < 1297280654 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :but < 1297280658 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :it's a metaphor < 1297280659 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :for america < 1297280659 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :a sucky alternator i guess < 1297280663 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: I refuse to actually know your terminology. < 1297280686 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: it'll be stridewire :P < 1297280688 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :*beat < 1297280717 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"DIRF" 0x44495246 < 1297280717 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :C (0gnirts -- ) Change directory < 1297280717 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :M (0gnirts -- ) Make a directory < 1297280717 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :R (0gnirts -- ) Remove a directory < 1297280720 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does CCBI do that < 1297280770 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, I found a few bugs in defend14 < 1297280791 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: is that shuddering between 1 and 2? very slowly? < 1297280806 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes X-P < 1297280812 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1297280818 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I DON'T KNOW < 1297280861 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523_defend13.bfjoust vs elliott_a_more_perfect_union.bfjoust: < 1297280861 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :X>X>X>X>X>X>X>X>X>X X>X>X>X>X>X>X>X>X>X>X <<<<<<<<<<<<<<<<<<<<< < 1297280870 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523_defend7.bfjoust wins < 1297280870 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :what < 1297280905 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I ... think it's accidentally running two sessions at once ... which should be impossible ... < 1297280918 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Yes, and Mycology tests it < 1297280919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :breakdown's been doing that for a while < 1297280929 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you keep refreshing it, it seems to keep writing in the middle of the file, etc < 1297280935 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the hill itself seems to work, though < 1297280954 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, the hill only uses the cache, it shouldn't care even if there are fifty sessions running at once. < 1297281016 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Gregor_even_worse_shudderer: 13.7 < 1297281017 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_a_more_perfect_union: 5.1 < 1297281028 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Please hold < 1297281054 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Proceed. < 1297281087 0 :nescience!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297281101 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: How did it... < 1297281103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :13.7... how < 1297281134 0 :ais523!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297281140 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust absolutely_fucking_nothing (+)*127(-++-)*10000 < 1297281143 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Man, anything that beats defend13 gets shitloads of points. < 1297281146 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :X-D < 1297281152 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :As I said, I'm so tempted to write antidefend13. < 1297281158 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That just targets defend13 and nothing else. < 1297281168 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :UNDEF: either C doesn't work or the 'mycodirf' directory doesn't exist < 1297281171 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You don't say < 1297281192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: created 'mycodirf' with M < 1297281192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: entered 'mycodirf' directory with C < 1297281192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: left 'mycodirf' with a C to '..' < 1297281192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: can't C into 'mycodirf' after R < 1297281192 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: created 'mycodirf' with M < 1297281193 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Removed 'mycodirf' with R. < 1297281195 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Why the duplication, to check remaking works? < 1297281211 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I don't think that targeting any one competitor will be good enough, but if you targeted the top three you could probably do well. < 1297281219 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Probably, y es. < 1297281224 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297281227 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Fingerprints/BOOL.hs Fingerprints/MODU.hs Fingerprints/ROMA.hs < 1297281227 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Fingerprints/DIRF.hs Fingerprints/NULL.hs < 1297281227 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Fingerprints/EVAR.hs Fingerprints/REFC.hs < 1297281228 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Doin' good < 1297281230 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wow, ais523 was gone? < 1297281237 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to do EMEM next. < 1297281238 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For 90 seconds. < 1297281239 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :connection issues < 1297281244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't leave on purpose < 1297281255 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I refuse to do EMEM because it's just malloc, and goes against all that is Fungy :-P < 1297281263 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ais523: 's too bad since we just knocked defend13 off the hill while you were gone. < 1297281277 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: it doesn't /run/ fast enough to get knocked off the hill that quickly < 1297281278 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"As far as implementing this, hnd can be the direct pointer if it fits within the cell size of the interprter, or else a seperate list can be maintained and this would be the handle into the list." < 1297281282 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yay, more handles. < 1297281286 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1297281295 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, you knocked it above careless < 1297281304 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_absolutely_fucking_nothing: 15.2 < 1297281319 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Err, EMEM is very useless < 1297281321 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, defend14 now beats careless in one polarity (so draws over all) < 1297281327 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Precisely :-P < 1297281329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Since it offers no way to e.g. do pointer arithmetic < 1297281335 0 :nescience!~myndzi@m240e36d0.tmodns.net JOIN :#esoteric < 1297281339 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But hey, uselessness won't stop me. < 1297281340 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :isn't there an alloc-in-fungespace fingerprint? < 1297281342 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that would be more useful < 1297281352 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's an alloc-in-fungespace instruction, it's called p < 1297281353 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was going to do fungespace GC but Vorpal was all debbie-downer about it < 1297281376 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i think it would be hilarious < 1297281387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: no, that writes to fungespace; I meant, it finds a bit of unused fungespace that it hasn't allocated < 1297281388 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :you sure you can do it < 1297281393 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :stupid crashphone! < 1297281393 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://www.haskell.org/ghc/docs/6.12.3/html/libraries/base-4.2.0.2/Foreign-Storable.html SEXINESS < 1297281402 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you can allocate and deallocate bits of fungespace < 1297281433 0 :copumpkin!unknown@unknown.invalid PRIVMSG #esoteric :so dependent strongfunge? < 1297281440 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://www.haskell.org/ghc/docs/6.12.3/html/libraries/base-4.2.0.2/Foreign-Marshal-Alloc.html < 1297281441 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :MALLOC! < 1297281448 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :copumpkin: :D < 1297281482 0 :Sgeo_!unknown@unknown.invalid QUIT :Ping timeout: 255 seconds < 1297281543 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does anyone actually use all these RC fingerprints < 1297281590 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Okay, so I just want Ptr Word8. < 1297281678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: No < 1297281691 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Kay < 1297281774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust defend14 http://sprunge.us/DUYc < 1297281780 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let's hope EgoBot can handle the awesomeness < 1297281793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :most of its losses are close ones, rather than decisive ones < 1297281798 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except against quintopia, for some reason < 1297281861 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :we really need lance < 1297281871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :its main disadvantage is, against most programs, on short tapes < 1297281882 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, that the really crazy logic only works on one of the two polarities < 1297281889 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and on the other one, it just does a defend7 I think < 1297281901 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah no, a defend10 < 1297281937 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :oshi another defend? < 1297281945 0 :ais523!unknown@unknown.invalid QUIT : < 1297281977 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :counting down from 90 seconds < 1297281983 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297281985 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: lance is your bfjoust interpreter? < 1297281988 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wb ais523 < 1297281991 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yes, the one that never truly got written < 1297281995 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :grr, connection < 1297281995 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because gregor was faster < 1297282007 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but it wouldn't have expanded anything because that's stupid < 1297282031 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_defend14: 54.3 < 1297282032 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1297282046 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: indeed? you mena that it's stupid? < 1297282048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ais523_defend14.bfjoust vs myndzi_careless.bfjoust: <>>>>>>>>>>>>>>>>>>>> <>>>><<<<<<<<<<<<<<<< <>>>><<<<<<<<<<<<<<<< <>>>>>>>>>>>>>>>>>>>> myndzi_careless.bfjoust wins < 1297282049 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1297282069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :btw, that careless-beating will work against any variation of careless, no matter how much myndzi tweaks the constants < 1297282072 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :do eet elliot < 1297282074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Another one that beats monorail but loses to steamroller :-/ < 1297282075 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but unfortunately, only on one polarity < 1297282091 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mind you % is not trivialy < 1297282093 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*trivial < 1297282102 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(a[[{c}]d])%n for instance < 1297282118 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: it's easy if you have matching < 1297282136 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh, 14's actually slightly behind 13 < 1297282151 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the extra setup it requires means that some programs 13 beats, 14 loses to but only on short tape lengths < 1297282161 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: eh? < 1297282183 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does the defend13 family of programs place decoys? < 1297282193 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: you just keep track of how deeply nested you are in it... < 1297282216 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: sort-of; defend13 uses three detection cells (tripwires), defend14 uses four < 1297282227 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :it's not that hard to even do unbalanced brackets < 1297282232 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and they work like decoys, except their values are checked < 1297282244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :both also have one actual decoy, too < 1297282253 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :umm, no, 13 does, 14 doesn't < 1297282287 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: was lance being written in C too? < 1297282311 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: well erm yes, purely for the performance aspect, but if you want to contribute some nice haskell code that could be arranged too :P < 1297282336 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i've got a BFJoust.hs window on my screen already < 1297282339 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, defend13's winning overall on score, defend14 on points < 1297282352 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I think I'm dominating the leaderboard both ways < 1297282353 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ofc all the fancy code in the world won't let you run raw bfjoust code faster than C :p < 1297282370 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah, *sigh* < 1297282372 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hmm, i think what i just said was heretical < 1297282383 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: don't worry. one day ghc will catch up. one day. < 1297282388 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well no _elegant_ code, anyway < 1297282393 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bear in mind that you don't have to run every cycle < 1297282454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1297282473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if both programs are looping, and you go back to a previous tape and IP state, you can just skip to the end of the loop < 1297282480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or immediately timeout if it's a [] rather than () loop < 1297282489 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sort-of like hashlife < 1297282612 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: was Nyarlathotep designed specifically to beat all your other programs? because it does < 1297282618 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hmph my motivation is lousy < 1297282685 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I just realised how awful EMEM is. < 1297282694 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: it does malloc, not calloc < 1297282694 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just now? < 1297282694 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :eurgh < 1297282697 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1297282701 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :if it was calloc that'd be okay < 1297282702 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :but ew < 1297282704 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :this just breaks...life < 1297282712 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I noticed that too :-( No, not specifically, I just wanted to see what happened if a defender program started defending straight away < 1297282735 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, so it doesn't use a tripwire at all? < 1297282752 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does it have decoys? < 1297282801 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh, shortsword's still on the leaderboard < 1297282802 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just about < 1297282814 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : !bfjoust aye_said_captain_on_train_of_despair (-)*127[] ... argh, just realised that that doesn't work nay more < 1297282845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why would you expect that to work? < 1297282875 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: because it used to < 1297282876 0 :hiato!~nine@clam.leg.uct.ac.za JOIN :#esoteric < 1297282877 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :before the rules got changed < 1297282880 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :by you :P < 1297282897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't see how one-cycle death would make that any better than two-cycle death < 1297282941 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ais523: because ] used to take 0 cycles < 1297282995 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no decoy either, just straight into a defender. No [ ] loops either :-) < 1297283012 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I think I know why leaving decoy trails died out < 1297283020 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's because they're so vulnerable to offset clear < 1297283039 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :at least they slow down the offset clearer that uses large offsets < 1297283040 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust my_polarity_brings_all_the_boys_to_the_yard ((-)*64(+)*256)*100000 < 1297283057 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: not really, they have an equal chance of slowing them down and speeding them up < 1297283083 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust < 1297283083 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ < 1297283097 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :well they make them run code < 1297283101 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :ais523: why so? a good offset clear checks if there's anything there to clear before clearing it... < 1297283103 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wow, i tie against ais523's defend programs < 1297283105 0 :nescience!unknown@unknown.invalid PRIVMSG #esoteric :running code is faster than not < 1297283109 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :er, wiat, no < 1297283114 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I tie to defend10 and 12 < 1297283115 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*wait < 1297283117 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :elliott: even 12 and 13? < 1297283118 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and lose sildly to 13 and 14 < 1297283120 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*solidly < 1297283120 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for elliott_my_polarity_brings_all_the_boys_to_the_yard: 17.8 < 1297283124 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :and tie with defend7/9 < 1297283128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: oh, most offset clearers I've seen don't < 1297283135 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although arguably they should < 1297283152 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :offset clear with special cases is what jix's wiggle programs do, and it seemed to work for him < 1297283161 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust my_polarity_brings_all_the_boys_to_the_yard >++>-->++>-->+++>---<<<<<<((-)*64(+)*256)*100000 < 1297283166 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hope i didn't miscount _< < 1297284880 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Name some low-hanging fruit that isn't EMEM then :P < 1297284891 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FIXP, FPSP, FPDP < 1297284908 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FILE < 1297284922 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :okay, so, the big thing on xkcd fora now appears to be "code bowling" < 1297284929 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :which is the opposite of code golf < 1297284961 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :write a program that *cleverly* solves a problem with the poorest time efficiency you can achieve. < 1297284974 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :aka, take as long as possible without just wasting cycles < 1297284990 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1297285037 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm not sure i imagine bowling fitting that description better than golf... < 1297285050 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it does though < 1297285061 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :in bowling you want to get as high a score as possible < 1297285067 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1297285077 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :they didn't actually have the name in the log for a while < 1297285095 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes but the score in bowling has no positive relation to time, unlike in golf < 1297285101 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can always use clog's logs for programs posted in-channel, I suppose < 1297285120 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks cricket might have been a better name < 1297285335 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle Ptr a -> IO a < 1297285336 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Foreign.Storable peek :: Storable a => Ptr a -> IO a < 1297285336 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Foreign.Marshal.Alloc free :: Ptr a -> IO () < 1297285336 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Network.Socket.Internal peekSockAddr :: Ptr SockAddr -> IO SockAddr < 1297285436 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'll do FILE then. < 1297285440 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Does myco test that? < 1297285471 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, and it's actually useful since it'll then delete the tmp files < 1297285593 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> let (ಠ_ಠ) = 2 in (ಠ_ಠ) < 1297285594 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : 2 < 1297285601 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: :D < 1297285607 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That WOULD be nice :-D < 1297285627 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Is it just me, or is LibreOffice Base crap?/ < 1297285631 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :... < 1297285632 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ANYWAY < 1297285643 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i saw this link on reddit http://kutruff.wordpress.com/2011/02/08/using-%E0%B2%A0_%E0%B2%A0-to-throw-exceptions/ i haven't opened it yet but i imagined what it _could_ be < 1297285655 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297285667 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: it's pretty much that, yep < 1297285671 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :except for C# and F# < 1297285692 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so it was < 1297285717 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> let _ ಠ_ಠ x = error x in () ಠ_ಠ "Son, I am disappoint." < 1297285718 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : : Parse error in pattern < 1297285721 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1297285738 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm going to need the logs to actually see what you did there :D < 1297285748 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@Hoogle Handle -> Int < 1297285748 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you meant: google hoogle < 1297285752 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle Handle -> Int < 1297285752 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Generics.Schemes gsize :: Data a => a -> Int < 1297285752 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Generics.Schemes gdepth :: GenericQ Int < 1297285753 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Data.Generics.Schemes glength :: GenericQ Int < 1297285787 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: ಠ_ಠ is actually alphanumeric not operator < 1297285789 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle fd < 1297285790 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :System.Posix.Types newtype Fd < 1297285790 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :System.Posix.Types Fd :: CInt -> Fd < 1297285790 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Network.Socket fdSocket :: Socket -> CInt < 1297285809 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ah < 1297285818 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :> let ಠ_ಠ = error in ಠ_ಠ "You've been a bad, bad boy." < 1297285819 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric : *Exception: You've been a bad, bad boy. < 1297285823 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :golden < 1297285830 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ok now to write helper functions for IntMaps with fingerprints < 1297285836 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :except that would be a pain < 1297285837 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :so meh < 1297285874 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: The Va that O pops is storage-offset, right? :-P < 1297285892 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'd assume that everything is < 1297285897 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297285899 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297285906 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's not clear at all to me what the I/O buffer is used for ther. < 1297285908 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*there. < 1297285920 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's where stuff is written to/from < 1297285954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:18:34 Deewiant: I need to store two boundary maps, vertical & horizontal, right < 1297285954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:18:37 ? < 1297285954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:20:28 ais523: so I've gone insane and am implementing befunge98 < 1297285954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:20:29 again < 1297285954 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :EVERY TIME < 1297285957 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'VE CLICKED A RANDOM LOG < 1297285961 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SINCE STARTING THIS < 1297285971 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :beautiful < 1297285972 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Linearly, I guess? < 1297285987 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, if it doesn't say anything else < 1297286039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: And then I argue with you that leaving form feed in fungespace is correct :-D < 1297286061 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:45:56 ehird: Applies analogously for \f in Befunge. < 1297286061 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:46:06 Uh huh. Where in the spec does it say this? < 1297286061 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:46:12 It doesn't. < 1297286061 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:46:15 I see. < 1297286073 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Key word: analogous < 1297286080 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In this case, there's nothing to compare to :-P < 1297286130 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I wasn't referring to FILE < 1297286149 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :data FileMap = FileMap Int (IntMap (Handle,Vector)) deriving (Show, Typeable) < 1297286151 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :IS THAT ENOUGH GOSH < 1297286384 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :hoho < 1297286390 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i have created a text file for the manifest of every revision! :P < 1297286430 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Woo, I can't implement FILE using System.IO < 1297286435 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :IOMode doesn't have enough members < 1297286435 0 :ais523!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1297286448 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I love how much I don't love this < 1297286470 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i don't know i'd call shortsword a "true" offset clear, but "kicks_ehird" is a bit closer, also impomatic's; and it predates my "creep" slightly < 1297286482 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :i'd like to find the beginning of the (-)*N[+] style thing though really < 1297286492 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :kicks_ehird? xD < 1297286493 0 :iconmaster!~rooms@dsl-72-18-49-91.bbr0.brdtny.empacc.net JOIN :#esoteric < 1297286498 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :lol yeah < 1297286499 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: What does it lack < 1297286510 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FWIW I use C I/O as well just to keep it trivial < 1297286527 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :(-)*N[+] was kind of a different development to just the simple one-off clear thing < 1297286542 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It has: ReadMode, WriteMode, AppendMode, ReadWriteMode; I need: those, plus TruncateReadWriteMode, AppendReadWriteMode < 1297286549 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :anyway, probably hard to search for < 1297286561 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Can't you simulate both of those using ReadWriteMode < 1297286564 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :maybe i could grep it, but boy, i'd have to have like, archive folders of everything < 1297286568 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So I need System.POSIX.IO, with this wonderful API: http://www.haskell.org/ghc/docs/latest/html/libraries/unix-2.4.1.0/System-Posix-IO.html#t:OpenFileFlags < 1297286570 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :also apparently report.txt wasn't archived, which is too bad < 1297286577 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I don't _think_ so. < 1297286585 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, maybe. < 1297286593 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Dunno if Haskell has a nice file size function :D < 1297286599 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Indeed not < 1297286605 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait < 1297286608 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :hFileSize :: Handle -> IO IntegerSource < 1297286608 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For a handle hdl which attached to a physical file, hFileSize hdl returns the size of that file in 8-bit bytes. < 1297286609 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Good enough < 1297286613 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1297286652 0 :Mathnerd314!~mathnerd3@dsl.6.28.53.206.cos.dyn.pcisys.net JOIN :#esoteric < 1297286676 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Seemingly no way of truncating, though < 1297286712 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: WriteMode truncates, doesn't it. < 1297286736 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Well. Yes. That wouldn't be atomic, though, to open and close and re-open. < 1297286760 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1297286778 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: hSetFileSize < 1297286778 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Tempted to just deal with the hideous System.Posix.IO at this point. Sigh. < 1297286784 0 :iconmaster!unknown@unknown.invalid QUIT :Client Quit < 1297286791 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: And the "worst name" prize goes to... < 1297286805 0 :iconmaster!~rooms@dsl-72-18-49-91.bbr0.brdtny.empacc.net JOIN :#esoteric < 1297286855 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : when (mode == 4) $ hSetFileSize handle 0 < 1297286856 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : when (mode == 5) $ hSeek handle SeekFromEnd 0 < 1297286856 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :tada < 1297286876 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, because "set file size" is so strange a way of thinking about it :-P < 1297286901 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I either want a perfect pearl of functional purity... or something with similar names to the C API :-P < 1297286907 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or at least the POSIX API. < 1297286913 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or just general terminology. < 1297287002 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what terminology do generals use for this, anyway < 1297287035 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I really need some kind of continuation support in my monad. < 1297287038 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I keep doing < 1297287039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :case foo of < 1297287042 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Nothing -> reflect < 1297287044 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : Just blah -> do < 1297287046 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : LOTS OF STUFF < 1297287075 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Wrap ContT around it < 1297287106 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :http://i.imgur.com/qAgC2.jpg < 1297287111 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :I FEEL A MEME IS DEVELOPING < 1297287142 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: um you _could_ make a function for that pattern if it's exactly like that :D < 1297287144 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vonlabia: A meme ... of what? Why? < 1297287155 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: well, I'd still need an indentation < 1297287157 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :for each such condition < 1297287163 0 :Vonlebio!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, Bill O'Reilly not understanding how things work. < 1297287164 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :?unmtl ContT x (StateT S IO) y < 1297287165 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :(y -> S -> IO (x, S)) -> S -> IO (x, S) < 1297287185 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: X-D < 1297287195 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :?mtl (y -> S -> IO (x, S)) -> S -> IO (x, S) < 1297287195 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you meant: ft map msg pl unmtl url < 1297287197 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :LAME < 1297287200 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: do Just Blah <- foo; and then fail does the reflect? < 1297287210 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but then it'd cancel the interpreter loop :-) < 1297287232 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm wait that's wrong < 1297287243 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :* <- return foo; < 1297287262 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :elliott: `mplus` reflect after that... < 1297287275 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: heh < 1297287308 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :some monads allow that style, anyway. like Parsec. < 1297287314 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ANOTHER LOVELY THING ABOUT HASKELL'S IO API: < 1297287317 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :NO FUCKING "FREAD" < 1297287326 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :that would be TOO SIMPLE < 1297287329 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :TOO EASY < 1297287346 0 :iconmaster!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1297287349 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Hey there Tnurmb: No fucking fread! < 1297287354 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: hGetBuf < 1297287367 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: ...Tnurmb? < 1297287368 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Thanks < 1297287371 0 :Sgeo_!unknown@unknown.invalid QUIT :Read error: Operation timed out < 1297287372 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: (This is how I get support from now on) < 1297287380 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: THAT REQUIRES A PTR < 1297287384 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: It's fread! < 1297287390 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_, < 1297287392 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*>_< < 1297287427 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Seriously... using that would be an unholy pain :P < 1297287436 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's that MaybeT wrapper, isn't that the sort of thing that can wrap sequences of "test for Nothing every now and then" into a single level of indentation? (But I'm not a Haskell guy.) < 1297287447 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Data.ByteString.hGet < 1297287452 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: It's more than just that pattern match though. < 1297287456 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Ah, thanks. (See, support.) < 1297287464 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if it only works on Finns. < 1297287560 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle (Word8 -> m a) -> ByteString -> m () < 1297287560 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Monad (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c < 1297287560 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :Control.Monad (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c < 1297287563 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297287567 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :@hoogle mapM bytestring < 1297287567 0 :lambdabot!unknown@unknown.invalid PRIVMSG #esoteric :No results found < 1297287582 0 :azaq23!~derivecto@unaffiliated/azaq23 JOIN :#esoteric < 1297287674 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm assuming that G reads a line. < 1297287676 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Correct assumption? < 1297287756 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Actually I don't think so. < 1297287757 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1297287762 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What does it do? < 1297287785 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"like c fgets", quoth the spec. < 1297287810 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: fgets takes a size argument. < 1297287810 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :G doesn't. < 1297287836 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then it's probably a line, yes < 1297287853 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:53:15 Hey, it parses mycology quite quickly. < 1297287853 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:53:19 ~0.2s < 1297287853 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:53:24 Maybe 0.3 < 1297287853 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I think I was a liar. < 1297287861 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Which it pushes the length of for no reason :P < 1297287906 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The length is nice for checking for EOF. < 1297287911 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Assuming it reflects on fail, anyway. < 1297287942 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Okay, so you could : and test the first read byte for the string-terminating 0. < 1297287955 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But G| is not too shabby either, even if you then have to $ the leftover 0. < 1297288037 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think I also use the string length for something in fungot. < 1297288037 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: oh. you already know many concepts, then the implementation ( software user) can be used < 1297288114 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: You use FILE? < 1297288124 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, quite a lot. < 1297288127 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: How comprehensive is Mycology's FILE testing? < 1297288133 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Lots of corner-cases I could be missing here. < 1297288147 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not very, there's too many corner-cases :-P < 1297288152 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Though G/P not so much, that only for the ascii line-based state-file storage. < 1297288166 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The babbling uses R/S a lot. < 1297288192 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Since it doesn't load the (multi-hundred-megabyte) model in memory, instead keeps navigating around the ngram tree with S and reading one value at a time. < 1297288260 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yay, there's hPut. < 1297288272 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Do you have a program that just does the babbling? < 1297288274 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Funge-98, I mean. < 1297288277 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That would be nice to test/benchmark. < 1297288304 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hey, I can just use rectangleToByteString for this!! Oh gliffrious gee! < 1297288309 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :No, I don't. Theoretically speaking it shouldn't be too hard to extract, it doesn't really depend that much of the surroundings. < 1297288313 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and mergeByteString for the other!! Gambitulous petulancy!!!! < 1297288331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this thread is great: http://forums.thedailywtf.com/forums/t/21257.aspx < 1297288473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :summary: someone is asked to make 100 copies of a file but with different names (and the reason is a bad one, too); then after complying with the request, finds he's missed one, and the original requestors ask for it to be sent over by FTP < 1297288497 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Are you going to have your R/W read/write values in the [0, 255] range or the [-128, 127] range? Both are seen in the wild. (The "greater than 255" is another spec-retcon.) < 1297288531 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: [0, 255], I think. < 1297288544 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I just rely on ByteString to do the modulo for me, works for o :-D < 1297288564 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: What does Mycology like? < 1297288589 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :G (h -- h 0gnirts b) Read string from file (like c fgets) < 1297288589 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :P (h 0gnirts -- h) Write string to file (like c fputs) < 1297288592 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: fputs doesn't write a newline. Discuss. < 1297288613 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That probably doesn't then either? < 1297288621 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm sure it does, since G/P are the "line-oriented" functions. < 1297288627 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Maybe fizzie can disagree. :p < 1297288655 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, you appear to actually not. < 1297288657 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure what I assume. < 1297288659 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Okay then. < 1297288711 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It might be that I do add the newline manually. < 1297288725 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I can't really understand my ^save. < 1297288732 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It looks far too small to actually save stuff. < 1297288755 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :127 lines for FILE. Whew. < 1297288781 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I do seem to do quite a lot of "0a" + apped-from-STRN there, so I think I'm writing newlines manually. < 1297288885 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: So if I come up with some amazing feature that makes Shiro oh-so-appealing for fungot, do I get a user? :-) < 1297288885 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :elliott: does " damned if i know. i just changed a word in english? :) " migrate my process thence!" < 1297288886 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And in fact G:!#v_1-L -style stuff to strip the newline from G. < 1297288897 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Like, like, maybe I'll make babble generation SO FAST. < 1297288929 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Pretty sure that as the only actual user of Befunge-98, you have to do, like, new-implementation affirmative action. < 1297288931 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :To prevent monopolies. < 1297288952 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I could run a "shungot" on it. < 1297288970 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: And what does cfunge have that I don't?! < 1297288974 0 :hagb4rd!~hagb4rd@koln-4db41fa1.pool.mediaWays.net JOIN :#esoteric < 1297288977 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Honestly, first you abandon RC/Funge, and now you won't even use Shiro. < 1297288981 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I get the feeling Vorpal's paying you. < 1297288989 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Form union? < 1297288995 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1297289031 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: G didn't read 'foo\n' < 1297289031 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: C worked < 1297289035 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That \1 in front of GOOD worries me. < 1297289048 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Looks like G expects the final newline >_< < 1297289052 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :but it says good, then it can't be bad < 1297289087 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Is this ghc-compiled binary linking against bazillion libraries (like Kerberos, SASL, GnuTLS, libgcrypt) just because it uses Network.Browser, or do they all do that? (I guess the latter.) < 1297289096 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :s/latter/former/ < 1297289110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :$ ldd shiro < 1297289110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : linux-vdso.so.1 => (0x00007fff64dff000) < 1297289110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : librt.so.1 => /lib/librt.so.1 (0x00007fc20e487000) < 1297289110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : libutil.so.1 => /lib/libutil.so.1 (0x00007fc20e284000) < 1297289110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : libdl.so.2 => /lib/libdl.so.2 (0x00007fc20e07f000) < 1297289111 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : libgmp.so.3 => /usr/lib/libgmp.so.3 (0x00007fc20de1f000) < 1297289113 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : libm.so.6 => /lib/libm.so.6 (0x00007fc20db9c000) < 1297289117 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : libc.so.6 => /lib/libc.so.6 (0x00007fc20d818000) < 1297289119 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : libpthread.so.0 => /lib/libpthread.so.0 (0x00007fc20d5fb000) < 1297289121 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : /lib64/ld-linux-x86-64.so.2 (0x00007fc20e6ae000) < 1297289123 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: The latter. :P < 1297289130 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's not very much. < 1297289138 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Not much more than your typical C program. < 1297289146 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It links in the Haskell libraries statically of course. < 1297289155 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :those are all just parts of libc plus gmp < 1297289156 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But that's just how GHC works (well, without the fancy modern stuff that I don't trust and don't know how to enable). < 1297289167 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: Yeah, but pthread is notable. < 1297289183 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Comparing against CCBI you've got: +rt,util,gmp -ncurses,formw,gcc_s < 1297289183 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Have I mentioned that Shiro is more standards-compliant than cfunge? < 1297289201 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: ncurses will enter soon. < 1297289202 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Dunno what formw is. < 1297289205 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :gcc_s will never get in. :p < 1297289217 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :formw is some ncurses thing it seems < 1297289223 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Dunno why cfunge doesn't use it < 1297289225 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, my test case was probably just not a good one since it has all those FFI-driven externalities. (I was just wondering how tricky it would be to run an elsewhere-built binary on the fungot box.) < 1297289225 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: would xml-rpc work well enough in the abstract sense of things. there are not too long < 1297289232 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Testing fingerprint FILE... loaded. < 1297289234 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: O opened 'mycotemp.tmp' for reading, won't overwrite it and thus won't test fingerprint < 1297289234 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: closed file with C < 1297289234 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :YOU ARE TOO PARANOID < 1297289252 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Erm, the GHC in Debian should work fine to compile Shiro :-P < 1297289264 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but I don't want to install GHC on that thing. < 1297289267 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Note that Shiro can't run fungot yet, because of missing fingerprints, and it also has some slowness, but I'm working on it.) < 1297289268 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i'm glad you are so certain. < 1297289275 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: GHC can link statically, anywho. < 1297289282 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And it doesn't add too much to the binary. < 1297289292 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Heh, curiously coherent comment from the bot. < 1297289296 0 :taotree!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297289303 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: O opened 'mycotemp.tmp' for reading, won't overwrite it and thus won't test fingerprint < 1297289310 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You do that _after writing mycotemp yourself_. < 1297289314 0 :zzo38!~zzo38@h24-207-49-17.dlt.dccnet.com JOIN :#esoteric < 1297289318 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I am not sure how to coerce this into testing. < 1297289339 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm? Doesn't it only check that right after loading FILE? < 1297289341 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :How can astrology be medicine? < 1297289344 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh, mycotemp != mycotmp. < 1297289353 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Thanks Deewiant, your naming scheme is confusing! < 1297289359 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :mycotemp for FILE, mycotmp[0-9] for earlier < 1297289366 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :MAKES SENSE < 1297289367 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I didn't expect to need another temp file. < 1297289369 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297289376 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BBAD: couldn't reopen file in truncate+read mode < 1297289378 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's b-b-b-b-bad. < 1297289399 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, I have no idea why that's happening < 1297289415 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Dude, there's no truncate+read mode. < 1297289418 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Just turncate+read/write. < 1297289424 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Whatever. < 1297289431 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It probably means w+. < 1297289436 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If that's it. < 1297289463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:54:24 data Point = < 1297289463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:54:25 Point { < 1297289463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:54:25 x :: {-# UNPACK #-} !Int, < 1297289463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :08:54:27 y :: {-# UNPACK #-} !Int < 1297289463 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Ooh, tempting. < 1297289515 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*truncate < 1297289531 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: By "couldn't" you probably mean "reflects" right? < 1297289573 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, probably < 1297289587 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: closed file with C < 1297289587 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :mycotemp.tmp: openBinaryFile: resource busy (file is locked) < 1297289587 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BBAD: couldn't reopen file in truncate+read mode < 1297289588 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You could learn to read Befunge a bit and look at the source, you know :-P < 1297289590 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :_What._ < 1297289598 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Also -- BAD: O reflected leaving the stack untouched (or pushed an 'm' for no reason) < 1297289608 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Can Vorpal? :-P < 1297289615 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :A bit < 1297289622 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But usually he just complains about my unreadable code < 1297289655 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: O reflected leaving the stack untouched (or pushed an 'm' for no reason) < 1297289657 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :??????????????????????? < 1297289660 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I so don't do that. < 1297289670 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you have a push 'm' there by accident < 1297289674 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : fpRun ident O = do < 1297289674 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : filename <- pop0gnirtsAsString < 1297289674 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : mode <- pop < 1297289674 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : buffer <- popVecOffset < 1297289674 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : if mode < 0 || mode > 5 then reflect else do < 1297289675 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : handle <- io $ openBinaryFile filename (ioMode mode) < 1297289677 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : when (mode == 4) . io $ hSetFileSize handle 0 < 1297289679 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : when (mode == 5) . io $ hSeek handle SeekFromEnd 0 < 1297289681 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It does need a rather wide terminal to be comfortable to read. < 1297289681 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Those are the only places I can reflect. < 1297289685 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :By IO error or by that explicit reflect. < 1297289701 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Just disable line wrapping, you don't need to read everything at once anyway < 1297289767 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Can you disable line wrapping in vi? < 1297289780 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :":set nowrap" in vim, don't know about vi-compatible modes. < 1297289855 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Does vi have line wrapping? < 1297289868 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There was some editor where non-line-wrapping mode scrolled only the line the cursor was on. < 1297289888 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That sounds nice. < 1297289897 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Seriously though. < 1297289899 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"file is locked"? WTF < 1297289940 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That /might/ be a GHC bug, it seems to ring some kind of bell < 1297290040 0 :taotree!~jshellman@c-24-22-58-69.hsd1.wa.comcast.net JOIN :#esoteric < 1297290048 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Joy. < 1297290051 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Got a copy of slowdown.b98? < 1297290055 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Would like to try it :-D < 1297290056 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What does the "reopen" thing check? C + O with the same file name? (I mean, I don't think FILE has a freopen()-like thing exposed.) < 1297290057 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I could be wrong, too. < 1297290070 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :09:14:55 ehird, maybe. Anyway if you want to check algorithms currently you should go for ccbi and/or cfunge. cfunge if you want the fast ones. < 1297290070 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Look at you now, Vorpal! < 1297290072 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And yes, C + O. < 1297290076 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Losing to the immense power of CCBI2! < 1297290149 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: You can pick it up at http://tar.us.to:1234/ < 1297290238 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Brain Fuck brought 'jail for a while, then his head when water_flea Metabolix and sent me two Brain Fuck-implementation of the Fibonacci sequence to calculate. Well, as we all know, Brain Fuck no means the only one so-called esoteric programming language. Three canonical first is the 1972 intercal, one is drawn up in 1993 Brain Fuck, and the third is in the same year developed Befunge. Brain Fuck However, it is the language that most programmers < 1297290239 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :are on the lips when you want to make jokes related to programming languages. It's history. This code pointers to highlight a large extent overshadowed by their peers Brainfuckin Befunge. Befungen perhaps the most interesting and most unique feature is that the commands are not being driven at all times in the same order, but the direction is determined by the various commands. Source code is divided into two-dimensional (Funge-98-standard allows < 1297290239 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : virtually all one-or-useampiulotteiset, but is generally only used two-dimensional, Befungea) grid, along which one moves (Concurrent Funge-98-standard allows more than one) [i] instruction pointer [/ i ], or IP. IP start point (0, 0), ie the beginning of the file and the default screen at a time, moves to the right. Before the IP's moving in the case of the command is run. Originally < 1297290253 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Dude < 1297290259 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: You don't need to paste it, it's all online already < 1297290264 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: MACHINE TRANSLATION < 1297290278 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It's the BEST < 1297290278 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, right, it was in Finnish wasn't it < 1297290281 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :X-D < 1297290285 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You didn't notice how unreadable that was? < 1297290287 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Crazy Finns < 1297290304 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I knew what it was as soon as I saw the length, Befunge, and Metabolix < 1297290325 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Heh, "'jail" for... that website. < 1297290355 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, I don't blame it for not understanding my abbreviation. < 1297290368 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You Finns, so secretive and mysterious. < 1297290374 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Although the capital should've hinted at the fact that it's a name :-P < 1297290385 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(At least I hope I left a capital letter there) < 1297290427 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :$ ~/Code/shiro/shiro slowdown.b98 < 1297290428 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Need nonempty file name. < 1297290428 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1297290504 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: It's a Befunge-98 interpreter, you need to run it on a file. < 1297290508 0 :Vonlebio!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297290520 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: O KAY < 1297290527 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :E.g. mycology.b98 < 1297290534 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But I don't support cmdline arguments yet :-D < 1297290534 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Also I'm not sure you have the fingerprint it needs (can't remember which) < 1297290543 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: Well fix that < 1297290544 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FIXP. < 1297290549 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right < 1297290555 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Cool, my FILE never frees its file values. < 1297290559 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Sweet < 1297290562 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Don't try and O more than some 2 billion times, kids. < 1297290568 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Somehow I'm not overly worried :-P < 1297290605 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott, fizzie: Done with the temporary fileserver? :-P < 1297290612 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: NO < 1297290623 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I need to find all your secrets first < 1297290627 0 :zzo38!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297290629 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :tquine.bf. < 1297290631 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Er, "wow". < 1297290631 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's no favicon.ico, no point in looking < 1297290641 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :All your secrets are in favicon.ico? < 1297290650 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, you just made 6 requests to it in a row < 1297290654 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :X-D < 1297290657 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Blame my browser. < 1297290663 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Meanwhile fizzie mirrors everything that's there < 1297290665 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: wget -r'd, now I'm done. < 1297290667 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I'm saving fibo_posting, for analysis of "Crazy Finnish People". < 1297290669 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Ooh, let me do the same. < 1297290675 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fibo_posting is online, as said < 1297290680 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's why I didn't bother hiding it :-P < 1297290688 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But what if wherever it is disappears? < 1297290694 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then I have it, at least < 1297290696 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's why I have it :-D < 1297290702 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But what if you turn all SECRETIVE. < 1297290716 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :MYSTERIES OF THE AGES: What, exactly, does the [t] BBCode tag do?! NOBODY KNOWS < 1297290717 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then nothing of value is lost < 1297290725 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That's exactly what a secretive Finn would say. < 1297290735 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Okay, Googling it worked :-P < 1297290745 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Now I have uncovered the secrets of the Finns. < 1297290757 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunately, as nobody can understand Finnish, this is for naught. < 1297290763 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Congrats, you now know what Google has known for years. < 1297290770 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I know! < 1297290778 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Google is in league with the Finns. < 1297290786 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They even employ Finns! < 1297290792 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :LIKE NAZIS < 1297290812 0 :Sgeo_!~Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1297290921 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Turns out hClose isn't "actually" "closing the file", anyway < 1297290940 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that's what it would imply < 1297290967 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: #haskell make half-arsed comments about lazy IO, so I'm blaming GHC for now. < 1297290980 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sought to beginning of file with 00S. < 1297290980 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"Sought" < 1297290981 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1297290998 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Dude, it's the simple past of seek < 1297291005 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: But of course. < 1297291024 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Seekeded. < 1297291038 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Skedaddled to beginning of file with 00S. < 1297291057 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Bug report: Should say ^ < 1297291092 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :WONTFIX: length "skedaddled" /= length "sought" < 1297291110 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Skddld. < 1297291123 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :WONTFIX: "skddld" is unclear < 1297291132 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Maybe if you can't read. < 1297291320 0 :hagb4rd!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297291865 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1297291879 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Pretty sure this is a GHC bug of some description. < 1297291899 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Quite possible < 1297291909 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: O reflected leaving the stack untouched (or pushed an 'm' for no reason) < 1297291910 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This still makes absolutely no sense. < 1297291910 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You can grab the Fd and close that < 1297291916 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And see if that helps < 1297291922 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Might do. < 1297291928 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Would like to solve that O thing first though. < 1297291929 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :OHWAIT < 1297291933 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : filename <- pop0gnirtsAsString < 1297291933 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : mode <- pop < 1297291933 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : buffer <- popVecOffset < 1297291935 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Spotte bugge < 1297291944 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wait, no bug. < 1297291945 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Can't remember < 1297291947 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's absolutely correct. < 1297291950 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :(Va m 0gnirts -- h) < 1297291951 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :ye olde bugge < 1297291951 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Could've been wrong order < 1297291971 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :This has to be a mycology bug < 1297291986 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Good night < 1297292002 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That, of course, is quite impossible < 1297292043 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is it /very/ impossible? < 1297292043 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I don't see how it can't be Mycology's bug < 1297292057 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes; Mycology is, by definition, correct. < 1297292065 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then delve into the source and find out where the bug is :-P < 1297292128 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Grah < 1297292139 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :LibreOffice Base sucks major dick < 1297292151 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :one does not simply delve into ... < 1297292226 0 :impomatic!unknown@unknown.invalid QUIT :Quit: ChatZilla 0.9.86 [Firefox 3.5.16/20101130074636] < 1297292334 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: Into... dick? < 1297292368 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you just called Mycology a dick I may have to be offended < 1297292369 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :In Soviet Russia ... < 1297292417 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :In Soviet Russia, dick. < 1297292422 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I am a heterosexual male. Therefore, by what Gregor said, I do not live in Russia < 1297292437 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :*Soviet Russia < 1297292454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Heterosexual, suuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuure < 1297292461 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Mr. " [...] sucks major dick" < 1297292691 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[[Computation hClose hdl makes handle hdl closed. Before the computation finishes, if hdl is writable its buffer is flushed as for hFlush. Performing hClose on a handle that has already been closed has no effect; doing so is not an error. All other operations on a closed handle will fail. If hClose fails for any reason, any further operations (apart from hClose) on the handle will still fail as if hdl had been successfully closed.]] < 1297292697 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: i like how it avoids explicitly saying that the fd gets closed < 1297292699 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :probably because it doesn't < 1297292715 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*sigh* < 1297292744 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :That sounds mildly demented < 1297292758 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :What? < 1297292768 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :hClose doesn't actually close it? < 1297292776 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh dear god revenantphx never shuts up in #haskell. Give me a chance to interject about how terrible hClose is, you 12-year-old >_> < 1297292782 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Well, not for me at least. < 1297292909 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :[[fdToHandle :: Fd -> IO HandleSource < 1297292910 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Converts an Fd into a Handle that can be used with the standard Haskell IO library (see System.IO). < 1297292910 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GHC only: this function has the side effect of putting the Fd into non-blocking mode (O_NONBLOCK) due to the way the standard IO library implements multithreaded I/O.]] < 1297292916 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :At that note: >_< < 1297292935 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It is supposed to "actually close" the handle (there's all those warnings about doing a lazy hGetContents and consuming from it after a hClose) but admittedly it doesn't say about the Fd. < 1297292970 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297292993 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I didn't know you even knew any Haskell. :p < 1297292999 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :After all you used C++. < 1297293006 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I didn't think one person could manage that kind of... cognitive dissonance. < 1297293011 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :elliott, I wrote C++ code yet I understand some Haskell < 1297293011 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"I know Haskell... think I'll write a C++ program..." < 1297293013 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't think he's said anything about knowing Haskell < 1297293030 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Then again, it's not like I voluntarily write mounds of C++ code < 1297293033 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Oh, is it just a Finn thing to learn tons of trivia about subjects you don't actually know in an applied manner? :D < 1297293039 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or s/learn/Google/ I suppose. < 1297293055 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What trivia? His last line just referred to what you pasted < 1297293057 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :google, then talk like an expert, it's a useful skill < 1297293085 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"there's all those warnings about doing a lazy hGetContents and consuming from it after a hClose" < 1297293096 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Nothing I said involved that. < 1297293099 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, that wasn't in your paste < 1297293102 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :olsner: I do that all the time. SO DOES DEEWIANT < 1297293102 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, it's in the docs anyway < 1297293122 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :elliott: sure, but who cares what Deewiant does? < 1297293126 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant < 1297293127 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Contrary to the prior, it was in fact from memory, not contemporary Google. I've been... dabbling. < 1297293127 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Presumably < 1297293143 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :I don't care what I do, so why would he? < 1297293144 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: But you're not quite ready to come out of the closet, so to speak. < 1297293152 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Functional-curious. < 1297293173 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sweet, C fails without any kind of IO error. < 1297293182 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I hypothesise that a wizard done it. < 1297293197 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :if you didn't even get an error, how do you know that it failed? < 1297293203 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :because Infallocology says so < 1297293237 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :C worked, it's the subsequent O that fails. < 1297293244 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :From Infallocology's POV. < 1297293283 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Mmnope, I have a different error now. < 1297293297 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :("***",mycotemp.tmp: hSeek: illegal operation (handle is closed)) < 1297293297 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: 20S reflected < 1297293297 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: C worked < 1297293300 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: My errors are now non-deterministic. < 1297293307 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Great < 1297293327 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe the fd's actually closed at the next GC or something < 1297293333 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Theory < 1297293335 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You could force a GC? < 1297293336 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : handle <- io $ openBinaryFile filename (ioMode mode) < 1297293336 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : when (mode == 4) . io $ hSetFileSize handle 0 < 1297293336 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : when (mode == 5) . io $ hSeek handle SeekFromEnd 0 < 1297293341 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :One of the non-openBinaryFile things is failing here < 1297293344 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And leaving the file open < 1297293352 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Problem: There's no reason whatsoever that should happen. < 1297293369 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION compiles without -O2 < 1297293374 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Feels like I'm coding in C < 1297293375 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :io? < 1297293382 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: liftIO, but shorter. < 1297293389 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Inverse of oi < 1297293392 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Ah < 1297293423 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Only if you're using TV. < 1297293454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sought to beginning of file with 00S. < 1297293454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: G pushed correct line length < 1297293454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: G read 'foo\n' < 1297293454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: 7R read bar\nbaz < 1297293454 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: C failed < 1297293464 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: There's no debug output, so there was no IO error. < 1297293471 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Define "failed". Reflected? < 1297293481 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :How else could it fail < 1297293510 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Then, er, you gave me an invalid file reference. That's the only other way this could reflect. < 1297293525 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but, see, that can't happen because there are no bugs < 1297293604 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I _really_ think this is a Mycology bug here. < 1297293619 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: closed file with C < 1297293620 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: reopened file in append+read mode < 1297293620 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Sought to beginning of file with 00S. < 1297293620 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: G pushed correct line length < 1297293620 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: G read 'foo\n' < 1297293620 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :GOOD: 7R read bar\nbaz < 1297293622 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: C failed < 1297293624 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No IO errors. < 1297293629 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Still-- < 1297293634 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :BAD: O reflected leaving the stack untouched (or pushed an 'm' for no reason) < 1297293639 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That is also a Mycology bug :P < 1297293695 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's very curious how other interps don't trip these hypothetical bugs. :p < 1297293716 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :they must have counterbugs < 1297293725 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: fpRun ident O = do < 1297293726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : filename <- pop0gnirtsAsString < 1297293726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : mode <- pop < 1297293726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : buffer <- popVecOffset < 1297293726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : if mode < 0 || mode > 5 then reflect else do < 1297293726 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : handle <- io $ openBinaryFile filename (ioMode mode) < 1297293728 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's the simplest explanation! < 1297293731 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It can *only* reflect after popping everything it pops. < 1297293749 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I can see absolutely no way modulo e.g. pixie intervention that this is not Mycology's or GHC's bug. < 1297293754 0 :variable!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1297293757 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: The error message can be a bug, you know. < 1297293765 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: My Funge core is perfect, dude. :p < 1297293773 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, in Mycology. < 1297293797 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you trip a strange-and-untested error case it might print something BAD which is not quite appropriate < 1297293820 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Maybe I'll trace every instruction execution. < 1297293823 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That sounds reasonable. < 1297293924 0 :variable!~variable@unaffiliated/variable JOIN :#esoteric < 1297293961 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Wow, this debug build is quite the party. < 1297293974 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :How big IS your stack < 1297294038 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :? < 1297294105 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: My tracing build of Shiro :P < 1297294111 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Mycology's stack gets rather big. < 1297294120 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not really < 1297294130 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :At most a few thousand, when it does 0y < 1297294135 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"At most a few thousand" :-D < 1297294146 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: slowdown.b98 on mycology goes into the millions IIRC < 1297294152 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Do you not test -1y? < 1297294156 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And fungicide goes much higher < 1297294195 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And no, I probably don't < 1297294293 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :FIXP looks like a bit of a pain. < 1297294299 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"Trigonometric functions work in degrees. not radians." Fail < 1297294346 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://www.haskell.org/ghc/docs/6.12.3/html/libraries/base-4.2.0.2/Data-Fixed.html This might help... < 1297294370 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Though I'm not sure what the appropriate resolution would be, especially since technically I could swap out Value at any time. < 1297294379 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunately sin and co are defined for Floating only < 1297294390 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Gah! < 1297294400 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Unless you can find them elsewhere < 1297294409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :"MissingH 0.8.0 is available from: < 1297294409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : gopher://gopher.quux.org/1/devel/missingh < 1297294409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :or < 1297294409 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric : http://gopher.quux.org:70/devel/missingh" --Mailing list post, 2004 < 1297294412 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes note: John Goerzen -- nutcase. < 1297294436 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: http://hackage.haskell.org/package/fixed-precision Yaaaay? < 1297294451 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Tentative-DING tentative-DING tentative-DING tentative-NEW tentative-DEPENDENCY tentative- < 1297294452 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Tentative-DING tentative-DING tentative-DING tentative-NEW tentative-DEPENDENCY tentative-. < 1297294459 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wait, MPFR? < 1297294460 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Oh gawd. < 1297294474 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :SPEED < 1297294486 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :SPEEEEEEEEEEEEEEEEED < 1297294805 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Got a slowdown.b98 that doesn't require FIXP? :-P < 1297294814 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or just anything with similar performance characteristics. < 1297294829 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you want to see your thing go slow, use fungicide < 1297294868 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I would but it looks like it has all kinds of dependencies to run it. < 1297294874 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :I just want to give my interp a file and watch it crawl. :p < 1297294898 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: you need to make sure to include an optimizer :D < 1297294898 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You don't need to "run" fungicide, just use any one of the benchmarks. < 1297294911 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Link me to the one derived from slowdown :-P < 1297294924 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There is none < 1297294941 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :something that takes any long straight sequence of whitespace moves and converts them into a direct jump...or would that break intentional timing constructs? < 1297294958 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: None with similar performance? i.e. relying on the same sort of wrapping stuff? < 1297294965 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: whitespace takes 0 ticks < 1297294966 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Nope < 1297294974 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Lame < 1297294990 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: already? nice. how'd you do it? < 1297294998 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: slowdown.b98 doesn't rely on wrapping stuff anyway < 1297294998 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Umm, that's just how Funge-98 is defined. < 1297295003 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You said it does in logs. < 1297295006 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: 0 ticks != instant < 1297295007 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No I did not < 1297295009 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :0 ticks = 0 Funge-98 ticks < 1297295012 0 :augur!~augur@129.2.129.34 JOIN :#esoteric < 1297295017 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: If you don't shrink bounds you end up traversing $lots of cells. < 1297295018 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Mycology wraps, and is clever enough to reset the storage offset < 1297295019 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Where lots = 2^something big. < 1297295032 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So it ends up writing stuff to (0,0) < 1297295042 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And that tends to cause trouble for interps with only one bounding rectangle for all of space < 1297295044 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: oh, so yeah, that optimization thing. you can do it, right? < 1297295051 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Since the code is at (millions,millions) < 1297295054 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: No. < 1297295058 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For a start, that would break timing. < 1297295062 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :(not at load time, just by caching paths that are actually used) < 1297295064 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For another, it would break alignment of code. < 1297295069 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For another, Funge-98 is self-modifying. < 1297295070 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297295070 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :For another, ... < 1297295076 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It would never, ever work. < 1297295105 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :1) why would it break timing? 2) no 3) cache invalidation < 1297295106 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: For "most programs", slowdown.b98 causes no troublesome wrapping < 1297295123 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: What was the pathological case, then. < 1297295129 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Because optimisations change the amount of ticks things take. < 1297295133 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :2) Yes, it would. < 1297295138 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :3) Are you sure you know what you're talking about> < 1297295140 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*about? < 1297295152 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :you just said whitespace takes 0 ticks! < 1297295157 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :elliott: The case I recall where I used that term was CCBI's wrapping with a delta on the order of INT_MAX or something < 1297295160 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :do you know what you're talking about? < 1297295166 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I can't actually remember whether that was the pathological case < 1297295167 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Yep. < 1297295200 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Heh, technically my interpreter is all kinds of broken according to the report. It relies on Value being smaller-or-equal-to Int, and Int only has to store up to 2^29. < 1297295208 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Thankfully it almost certainly stores 2^64. < 1297295215 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Or 2^32, which is equal. < 1297295226 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :So INT_MAX scares me a bit. < 1297295244 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You'll never run into that case < 1297295263 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :elliott: i'm saying that any time a program *actually* crosses a long whitespace path, you can add that path to a cache and the next time that path comes up, just skip straight from the beginning to the end in O(1) without actually doing the looping on IP positions. If a p happens on that path, toss it from the cache. < 1297295282 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You can do that just by storing per-line-and-column bounds. < 1297295283 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :p < 1297295286 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But you can't do that for every delta. < 1297295297 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :And I doubt many lines are traversed to the point of wrapping over and over. < 1297295299 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That's pathological. < 1297295301 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i should think you'd be able to do it for any delta < 1297295313 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Write an interp that does it then < 1297295317 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the cache invalidation thing would be hard there tho < 1297295326 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :You have 0.003 seconds on Mycology to beat I think. < 1297295333 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Although Deewiant's said cfunge has dropped below 0.001 before IIRC. < 1297295369 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :does mycology do lots of tight (but space-inefficient) loops? < 1297295392 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :No, nothing does. < 1297295401 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Tight, yes, space-inefficient, no. < 1297295423 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What's "space-inefficient" in this case < 1297295436 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Wrapping, I think. < 1297295466 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, I don't think even Mycology has a tight loop with a wrap in the middle < 1297295490 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That would be hideously awkward :) < 1297295503 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :space-inefficient would be something like fungot's ^reload path < 1297295504 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: and why shouldn't they in scheme? and of what nature? < 1297295507 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection < 1297295565 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :How's it inefficient < 1297295591 0 :cheater00!~cheater@g228061203.adsl.alicedsl.de JOIN :#esoteric < 1297295614 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :but yeah, i think i could make the cache thing work for arbitrary deltas with only an O(programsize) increase in memory usage. whitespace paths of any length would be crossed instantly and cache invalidation would be O(1) < 1297295636 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Good luck with that < 1297295639 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Let us know when it passes Mycology < 1297295656 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :eh, this is why i suggested it to you because you're actually working on an implementation < 1297295658 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Sounds a bit like jitfunge but only optimizing useless stuff < 1297295681 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: Except that if I was going to optimise that, I'd do it the way Deewiant does by using multiple bounding boxes. < 1297295686 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :That also doesn't require reworking half of everything :P < 1297295716 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :not sure exactly how the multiple bounding boxes thing works :P < 1297295725 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Nobody is! < 1297295732 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :mine optimizes stuff that doesn't wrap/cross boundaries too though < 1297295739 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :Yours wouldn't work :P < 1297295750 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :you still haven't told me why though < 1297295791 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i might try to hack it into your impl when you're done and i've learned haskell < 1297295794 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :It would "work" in the sense that theoretically you can do it. < 1297295796 0 :cheater-!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1297295802 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :But the overhead of all the IMMENSE pain mutating the code like that would cause, < 1297295803 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hail Chydrego! < 1297295809 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :plus the fact that it optimises only things that basically never happens. < 1297295810 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :*happens, < 1297295818 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :would mean that the great overhead for little gain would destroy performance. < 1297295854 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :possibly. there's not as much overhead as you think i bet, but i'd be willing to try it and find out < 1297295906 0 :elliott!unknown@unknown.invalid PRIVMSG #esoteric :http://tpdsaa.tumblr.com/