00:00:01 oh, hey, you got a .moe. 00:01:09 mhmm? 00:04:57 -!- Bicyclidine has quit (Ping timeout: 272 seconds). 00:06:59 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 00:07:00 Lymia.nyuroki: points 25.98, score 100.00/100, rank 1/47 (change: --) 00:07:19 5 cycle clear instead of 2 00:07:23 -!- c4 has joined. 00:07:26 3* 00:07:44 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 00:07:44 Lymia.nyuroki: points 25.10, score 100.00/100, rank 1/47 (change: --) 00:07:46 Ugh, everyone is AFK in the J irc. Does anyone know enough J to help me with a pretty easy problem? 00:08:20 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 00:08:20 Lymia.nyuroki: points 24.83, score 100.00/100, rank 1/47 (change: --) 00:08:39 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 00:08:39 Lymia.nyuroki: points 24.60, score 100.00/100, rank 1/47 (change: --) 00:08:55 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 00:08:56 Lymia.nyuroki: points 25.98, score 100.00/100, rank 1/47 (change: --) 00:10:07 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 00:10:07 Lymia.nyuroki: points 25.98, score 100.00/100, rank 1/47 (change: --) 00:12:15 that's a pretty cool bot 00:19:33 -!- zolbap has left ("Leaving"). 00:20:39 -!- c4 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 00:25:42 -!- Bicyclidine has joined. 00:25:44 -!- Bicyclidine has quit (Client Quit). 00:29:04 i thought we had J experts here 00:29:44 `run ls bin/*txt 00:29:45 bin/UnicodeData.txt 00:30:09 `interp bf_txtgen Test 00:30:15 60 ++++++++++++++[>++++++>+++++++>++++++++><<<<-]>.>+++.>+++.+. [124] 00:30:33 -!- olsner has quit (Ping timeout: 260 seconds). 00:31:52 @tell ais523 bf_txtgen is in HackEgo under the imported interp stuff. `interp bf_txtgen works fine (i've used it before to generate longer bf than can fit in irc.) 00:31:52 Consider it noted. 00:32:08 -!- not^v has joined. 00:34:53 -!- olsner has joined. 00:35:21 -!- AndoDaan has joined. 00:42:19 -!- AndoDaan has quit (Ping timeout: 276 seconds). 00:42:30 -!- AndoDaan has joined. 00:51:57 -!- newsham has quit (*.net *.split). 00:53:50 -!- ener2 has quit (Quit: ChatZilla 0.9.90.1 [Firefox 28.0/20140331235340]). 01:00:57 -!- AndoDaan______ has joined. 01:02:19 -!- AndoDaan has quit (Ping timeout: 272 seconds). 01:13:02 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:13:03 Lymia.nyuroki: points 25.69, score 100.00/100, rank 1/47 (change: --) 01:13:20 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:13:21 Lymia.nyuroki: points 25.86, score 100.00/100, rank 1/47 (change: --) 01:13:39 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:13:40 Lymia.nyuroki: points 25.17, score 100.00/100, rank 1/47 (change: --) 01:13:45 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 01:13:46 Lymia.nyuroki: points 25.98, score 100.00/100, rank 1/47 (change: --) 01:19:49 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:19:49 Lymia.nyuroki: points 21.98, score 100.00/100, rank 1/47 (change: --) 01:20:13 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:20:14 Lymia.nyuroki: points 25.60, score 100.00/100, rank 1/47 (change: --) 01:20:33 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:20:34 Lymia.nyuroki: points 25.00, score 100.00/100, rank 1/47 (change: --) 01:20:52 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:20:53 Lymia.nyuroki: points 25.64, score 100.00/100, rank 1/47 (change: --) 01:21:12 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:21:13 Lymia.nyuroki: points 26.07, score 100.00/100, rank 1/47 (change: --) 01:22:05 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 01:22:05 Lymia.nyuroki: points 26.07, score 100.00/100, rank 1/47 (change: --) 01:23:32 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:23:33 Lymia.nyuroki: points 23.76, score 100.00/100, rank 1/47 (change: --) 01:23:55 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:23:55 Lymia.nyuroki: points 25.98, score 100.00/100, rank 1/47 (change: --) 01:24:35 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:24:35 Lymia.nyuroki: points 25.95, score 100.00/100, rank 1/47 (change: --) 01:25:08 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:25:09 Lymia.nyuroki: points 25.95, score 100.00/100, rank 1/47 (change: --) 01:25:28 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 01:25:29 Lymia.nyuroki: points 26.07, score 100.00/100, rank 1/47 (change: --) 01:28:05 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 01:28:06 Lymia.nyuroki: points 26.07, score 100.00/100, rank 1/47 (change: --) 01:28:07 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:28:08 Lymia.nyuroki: points 24.19, score 100.00/100, rank 1/47 (change: --) 01:28:35 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:28:36 Lymia.nyuroki: points 22.55, score 100.00/100, rank 1/47 (change: --) 01:28:42 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 01:28:43 Lymia.nyuroki: points 26.07, score 100.00/100, rank 1/47 (change: --) 01:33:18 -!- not^v has quit (Read error: Connection reset by peer). 01:33:45 -!- not^v has joined. 01:37:02 -!- L8D has joined. 01:37:30 I was told there was a BF Joust hill here 01:37:53 boy is there ever. 01:37:58 -!- AndoDaan______ has changed nick to AndoDaan. 01:38:08 !bfjoust 01:38:08 AndoDaan: "!bfjoust progname code". See http://zem.fi/bfjoust/ for documentation. 01:38:27 Perhaps bfjoust should split into a separate channel. 01:38:31 L8D: it's so active we may still have to ban it. 01:38:54 It's cool now, so we hate it. 01:39:20 Is this something recent? 01:39:36 I didn't know of any bf jousting going on the last time I stayed in this channel 01:39:44 L8D: the new activity was spurred by someone writing a new bot for it 01:39:55 s/someone/fizzie/ 01:40:11 because EgoBot has disappeared for some reason 01:40:32 and the new bot has the improved scoring system that never got it into EgoBot 01:40:35 -!- not^v has quit (Ping timeout: 272 seconds). 01:40:47 and a nifty website, i hear. i should visit it some time. 01:42:30 basically, the scoring is now based on matrix calculations, so that it no longer depends on which order the bots are entered into the hill. 01:42:43 or well 01:42:56 well 01:42:56 well yes. 01:43:01 the problem is just 01:43:08 zemhill doesn't answer PMs 01:43:12 so 01:43:23 plus ais wants to see all this spam 01:43:27 !bfjoust firstbot >+[>[.]+] 01:43:27 L8D.firstbot: points -41.74, score 1.33/100, rank 47/47 01:43:37 -_ 01:44:44 [.] seems like a pretty bad idea. 01:44:55 wouldn't it stall? 01:45:09 fizzie: i don't much like the scaling the score so the top score is 100 thing. it means the "amount of score available" changes every time the top ranked warrior changes. Can you not make the total score constant? (say, 200 points?) 01:45:19 well it will loop indefinitely unless the opponent clears the cell for you... 01:46:05 fizzie: if you do that you could also meaningfully add a "delta-score" column so we could see how the last submission changed everyone's score. (i believe my implementation had this) 01:46:27 !bfjoust secondbot [>[[-]<]+++] 01:46:28 L8D.secondbot: points -32.55, score 3.22/100, rank 47/47 01:46:53 looks better 01:47:21 but maybe not much 01:47:24 L8D: you should read BF Joust Strategies :D 01:47:40 it won two games! 01:47:49 quintopia: I will before creating a third 01:49:22 why are there 47 bots btw 01:49:24 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:49:25 Lymia.nyuroki: points 25.88, score 100.00/100, rank 1/47 (change: --) 01:49:43 http://github.com/Lymia/JoustExt/blob/master/examples/nyuroki-esoteric.jx 01:49:52 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:49:55 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:49:56 Lymia.nyuroki: points 26.19, score 100.00/100, rank 1/47 (change: --) 01:50:18 oerjan: egobot's hill had 47 01:50:22 “In a world where even the sunrise is uncertain, a man may be excused for not knowing a great many things. But to not know my own heart? I hope to never be so hopeless a fool.” 01:50:39 hahahaha that's the silliest thing i eveer heard, unless i'm a hopeless fool 01:50:39 oerjan: so "because that's the way gregor's whims blew" 01:50:45 * Sgeo glares 01:50:55 Only thing in The Codeless Code I dislike, I think 01:51:06 ic 01:51:34 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:51:34 Lymia.nyuroki: points 24.98, score 100.00/100, rank 1/47 (change: --) 01:51:43 oerjan: personally, i'd like to see a MUCH bigger hill. like maybe 100. 01:52:14 maybe we could make it so the hill grows for a while whenever someone _doesn't_ get last place 01:52:28 *fizzie 01:52:41 ah not a bad idea 01:52:51 Maybe when a bot reaches >20 rank? 01:52:56 What's a good cutoff for "significant bot" 01:53:09 Lymia: oerjan's suggestion doesn't require that concept 01:53:58 Lymia: oerjan is saying "let's control how big the hill by letting us delete bots when they are irrelevant" 01:54:03 Ah 01:54:13 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 01:54:14 Lymia.nyuroki: points 26.19, score 100.00/100, rank 1/47 (change: --) 01:54:27 so much tweaking 01:54:45 !bfjoust nyuroki https://raw.githubusercontent.com/Lymia/JoustExt/master/examples/nyuroki-esoteric.bf 01:54:46 Lymia.nyuroki: points 26.19, score 100.00/100, rank 1/47 (change: --) 01:54:57 Well, yeah 01:55:02 I want to make sure nyuroki stays on the hill. 01:55:05 <3 01:55:05 Lymia: can't you test locally and then only submit major versions? 01:55:12 I could probably, yeah. 01:55:16 But I don't have it set up 01:55:51 Lymia: What's .jx ? 01:55:59 Custom thing I made 01:56:08 interesting 01:56:15 It's basically a macro language for BF Joust 01:56:24 I tried nasm's preprocessor at first. 01:56:26 But that was anightmare. 01:56:29 a nightmare* 01:57:57 i started to write a macro language for bf joust once 01:58:06 but i couldn't figure out how to do some stuff 01:58:08 so i quit 01:58:35 Why not just write a BF program that prints out your desired BF program? 01:58:43 I figured out how to do some stuff. 01:58:44 just use a programming language as a macro language 01:58:56 It caused >1GB thoretical file sizes. 01:58:56 Lymia: implement .jx in BF 01:58:58 So I gave that up. 01:59:19 -!- Sorella has quit (Read error: Connection reset by peer). 02:00:05 Lymia: So...Do you have a job or something where you get paid to spend hours writing esoteric macro languages? 02:00:23 and writing BF Joust robots 02:00:51 Me being too lazy to revive my BFJoust hill seems to be the best thing that ever happened to BFJoust X-D 02:06:10 Gregor: yes but now you need to write an interface to the logs that hides !bfjoust messages 02:11:34 So 02:11:52 Who updates the BF Joust strategies page 02:11:56 Now that ais is dethroned 02:26:10 [wiki] [[BF Joust strategies]] http://esolangs.org/w/index.php?diff=40527&oldid=40506 * 108.205.143.75 * (+2) 02:30:07 !bfjoust thirdbot (>)*9([-.]+>)*21[[-]>+] 02:30:07 L8D.thirdbot: points -23.86, score 9.43/100, rank 47/47 02:31:47 !bfjoust fourthbot (>)*9([-.]>[-]+>)*21[[-]>+] 02:31:47 L8D.fourthbot: points -21.81, score 10.36/100, rank 47/47 02:32:04 surely ais will rise again. 02:32:55 ^bool. 02:33:25 !help 02:33:25 AndoDaan: I do !bfjoust; see http://zem.fi/bfjoust/ for more information. 02:37:57 fourthbot beats up smartlock? 02:37:58 Geez 02:38:01 smartlock sucks. 02:39:09 * Sgeo goes to try PCLinuxOS in a VM 02:40:59 Sgeo: Welcome to 2008? 02:41:18 Why is PCLinuxOS 2008ish in your mind? 02:41:24 Please tell me it's KDE4 :/ 02:41:28 !bfjoust finnel (>+)*9((-)*10([+{[-.+-]}[-.+-]+>])%500>)*21 02:41:29 Lymia.finnel: points -20.98, score 10.65/100, rank 47/47 02:41:39 !bfjoust finnel (>+++)*9((-)*10([+{[-.+-]}[-.+-]+>])%500>)*21 02:41:39 Lymia.finnel: points -18.38, score 11.71/100, rank 47/47 (change: --) 02:41:51 !bfjoust finnel (>+)*9((-)*10([+{[-.]}[-.]+>])%500>)*21 02:41:52 Lymia.finnel: points -20.07, score 11.23/100, rank 47/47 (change: --) 02:42:12 !bfjoust finnel (>+)*9((-)*10([+{[-.]{}}[-.]+>])%500>)*21 02:42:12 Lymia.finnel: points -23.50, score 9.32/100, rank 47/47 (change: --) 02:42:19 !bfjoust finnel (>+)*9((-)*10([+{[-.]+>{}}[-.]+>])%500>)*21 02:42:20 Lymia.finnel: points -23.50, score 9.60/100, rank 47/47 (change: --) 02:42:35 !bfjoust finnel (>+)*9((-)*10([+{[-.[-.]]+>{}}[-.[-.]]+>])%500>)*21 02:42:35 Lymia.finnel: points -23.55, score 9.07/100, rank 47/47 (change: --) 02:43:46 Why is PCLinuxOS 2008ish in your mind? // It's from that era of "let's make Linux an end-user thing" bullshit distros 02:43:47 !bfjoust finnel (>[<(<[(>[[-]]+)*-1](-)*10)*30])*30 02:43:48 Lymia.finnel: points -25.31, score 5.27/100, rank 47/47 (change: --) 02:44:43 Gregor: are there good end-user Linux distros? 02:44:54 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([+{[-.[-.]]+>{}}[-.[-.]]+>])%500>)*21 02:44:54 Lymia: error: parse error: encountered { without suitable enclosing ( 02:44:56 KDE is pretty 02:45:02 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9((-)*10([+{[-.[-.]]+>{}}[-.[-.]]+>])%500>)*21 02:45:03 Lymia.finnel: points -20.26, score 10.03/100, rank 47/47 (change: --) 02:45:28 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9((+)*40[-]+>)*-1 02:45:29 Lymia.finnel: points -8.93, score 16.14/100, rank 45/47 (change: +2) 02:45:38 !bfjoust finnel (>)*8(<(-)*20<(+)*20)*4(>)*9((+)*40[-]+>)*-1 02:45:39 Lymia.finnel: points -9.88, score 15.75/100, rank 46/47 (change: -1) 02:45:42 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9((+)*40[-]+>)*-1 02:45:43 Lymia.finnel: points -8.93, score 16.14/100, rank 45/47 (change: +1) 02:46:23 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9((+)*40[[-]]+>)*-1 02:46:24 Lymia.finnel: points -12.36, score 13.44/100, rank 47/47 (change: -2) 02:46:30 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9((+)*40([-])*2+>)*-1 02:46:31 Lymia.finnel: points -10.31, score 15.13/100, rank 46/47 (change: +1) 02:46:43 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*40[-]]+>)*-1 02:46:44 Lymia.finnel: points -3.95, score 19.83/100, rank 34/47 (change: +12) 02:46:49 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*40[-]]>)*-1 02:46:51 Lymia.finnel: points -4.19, score 19.48/100, rank 36/47 (change: -2) 02:46:56 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*40([-])*2]+>)*-1 02:46:56 Lymia.finnel: points -2.62, score 21.19/100, rank 31/47 (change: +5) 02:47:16 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*30([-])*2]+>)*-1 02:47:16 Lymia.finnel: points -3.90, score 21.51/100, rank 31/47 (change: --) 02:47:27 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*30([-])*2]+++>)*-1 02:47:28 Lymia.finnel: points -5.31, score 19.89/100, rank 37/47 (change: -6) 02:47:31 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*30([-])*2]++>)*-1 02:47:32 Lymia.finnel: points -5.05, score 20.30/100, rank 35/47 (change: +2) 02:47:34 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*4(>)*9([(+)*30([-])*2]+>)*-1 02:47:34 Lymia.finnel: points -3.90, score 21.51/100, rank 31/47 (change: +4) 02:47:43 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*3(>)*9([(+)*30([-])*2]+>)*-1 02:47:44 Lymia.finnel: points -0.69, score 24.48/100, rank 21/47 (change: +10) 02:47:47 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*2(>)*9([(+)*30([-])*2]+>)*-1 02:47:47 Lymia.finnel: points 0.07, score 25.97/100, rank 20/47 (change: +1) 02:47:50 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*1(>)*9([(+)*30([-])*2]+>)*-1 02:47:51 Lymia.finnel: points -4.21, score 22.67/100, rank 31/47 (change: -11) 02:47:53 !bfjoust finnel ((>)*8(<(-)*20<(+)*20)*4)*2(>)*9([(+)*30([-])*2]+>)*-1 02:47:54 Lymia.finnel: points 0.07, score 25.97/100, rank 20/47 (change: +11) 02:48:00 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*3(>)*9([(+)*30([-])*2]+>)*-1 02:48:00 Lymia.finnel: points -0.74, score 26.21/100, rank 22/47 (change: -2) 02:48:03 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*30([-])*2]+>)*-1 02:48:04 Lymia.finnel: points 1.45, score 26.97/100, rank 18/47 (change: +4) 02:48:47 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*30([-.])*2]+>)*-1 02:48:47 Lymia.finnel: points -5.98, score 18.22/100, rank 41/47 (change: -23) 02:48:48 Gregor: are there good end-user Linux distros? // No. 02:48:51 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*30([-])*2]+>)*-1 02:48:52 Lymia.finnel: points 1.45, score 26.97/100, rank 18/47 (change: +23) 02:48:54 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*20([-])*2]+>)*-1 02:48:56 Lymia.finnel: points 0.52, score 24.91/100, rank 20/47 (change: -2) 02:48:57 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*50([-])*2]+>)*-1 02:48:58 Lymia.finnel: points -0.05, score 27.89/100, rank 18/47 (change: +2) 02:49:04 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(-)*110([-])*2]+>)*-1 02:49:05 Lymia.finnel: points -17.69, score 11.42/100, rank 47/47 (change: -29) 02:49:13 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*110([+])*2]+>)*-1 02:49:14 Lymia.finnel: points -17.55, score 11.56/100, rank 47/47 (change: --) 02:49:25 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*20([-])*2]+>)*-1 02:49:26 Lymia.finnel: points 0.52, score 24.91/100, rank 20/47 (change: +27) 02:49:33 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 02:49:35 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*50([-])*2]+>)*-1 02:49:36 Lymia.finnel: points -0.05, score 27.89/100, rank 18/47 (change: +2) 02:50:29 -!- conehead has quit (Quit: Computer has gone to sleep). 02:51:36 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9(([+{(-)*3([-{(+)*50([-])*2}])%3}])%3+>)*-1 02:51:36 Lymia.finnel: points 0.69, score 25.06/100, rank 19/47 (change: -1) 02:51:47 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9(([+{(-)*3([-{(-)*100([-])*2}])%3}])%3+>)*-1 02:51:48 Lymia.finnel: points -15.55, score 12.50/100, rank 47/47 (change: -28) 02:51:53 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*50([-])*2]+>)*-1 02:51:54 Lymia.finnel: points -0.05, score 27.89/100, rank 18/47 (change: +29) 02:51:59 !bfjoust simple < 02:51:59 Lymia.simple: points -46.00, score 0.00/100, rank 47/47 (change: -11) 02:52:37 !bfjoust yoda (>)*9>+[-[-](+)*40>+] 02:52:38 L8D.yoda: points -26.36, score 7.69/100, rank 47/47 02:53:21 !bfjoust yoda (>)*9>+[-[-](+)*10>+] 02:53:21 L8D.yoda: points -24.38, score 8.61/100, rank 47/47 (change: --) 02:53:22 !bfjoust flow >(-)*5>(+)*5>(-)*5>(>[..>>([(+)*6[-]]->)*-1])*-1 02:53:23 Lymia.flow: points -12.26, score 15.03/100, rank 46/47 (change: -12) 02:53:28 !bfjoust flow >(-)*5>(+)*5>>(>[..>>([(+)*6[-]]->)*-1])*-1 02:53:29 Lymia.flow: points -8.88, score 18.14/100, rank 43/47 (change: +3) 02:53:32 !bfjoust flow >(-)*5>>>(>[..>>([(+)*6[-]]->)*-1])*-1 02:53:33 Lymia.flow: points -6.57, score 21.29/100, rank 34/47 (change: +9) 02:53:42 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*6[-]]->)*-1])*-1 02:53:43 Lymia.flow: points -5.81, score 21.76/100, rank 33/47 (change: +1) 02:53:49 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*15[-]]->)*-1])*-1 02:53:49 Lymia.flow: points -10.52, score 17.93/100, rank 44/47 (change: -11) 02:53:51 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*10[-]]->)*-1])*-1 02:53:52 Lymia.flow: points -7.21, score 21.11/100, rank 34/47 (change: +10) 02:53:56 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*5[-]]->)*-1])*-1 02:53:57 Lymia.flow: points -4.69, score 23.37/100, rank 30/47 (change: +4) 02:54:05 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*5[-]]-->)*-1])*-1 02:54:05 Lymia.flow: points -5.67, score 22.27/100, rank 32/47 (change: -2) 02:54:08 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*5[-]]>)*-1])*-1 02:54:08 Lymia.flow: points -5.24, score 22.49/100, rank 32/47 (change: --) 02:54:11 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*5[-]]+>)*-1])*-1 02:54:11 Lymia.flow: points -3.98, score 24.17/100, rank 25/47 (change: +7) 02:55:20 -!- Guest59309 has joined. 02:55:36 !bfjoust yoda (>)*9>+[-[-](+)*10>+] 02:55:36 L8D.yoda: points -24.38, score 8.57/100, rank 47/47 (change: --) 02:55:52 Ooh I can try out IE2 02:56:03 !bfjoust flow >(-)*5>>>>(>[>>([(+)*5[-]]>)*-1])*-1 02:56:04 Lymia.flow: points -4.57, score 23.28/100, rank 30/47 (change: -5) 02:56:07 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*5[-]]>)*-1])*-1 02:56:08 Lymia.flow: points -5.24, score 22.49/100, rank 32/47 (change: -2) 02:56:09 My god. 02:56:15 I don't understand my own program from how long ago 02:56:18 !bfjoust flow >(-)*5>>>>(>[++>>([(+)*5[-]]>)*-1])*-1 02:56:18 Lymia.flow: points -5.38, score 22.35/100, rank 32/47 (change: --) 02:56:21 !bfjoust yoda (>)*9>+[-[-](+)*-1>+] 02:56:23 !bfjoust flow >(-)*5>>>>(>[-->>([(+)*5[-]]>)*-1])*-1 02:56:23 L8D.yoda: points -22.38, score 4.28/100, rank 47/47 (change: --) 02:56:24 Lymia.flow: points -5.38, score 21.96/100, rank 32/47 (change: --) 02:56:27 Not sure how, the oldest Windows I have access to already has IE4 on it... 02:56:35 !bfjoust yoda (>)*9>+[-[-](+)*3>+] 02:56:36 L8D.yoda: points -24.38, score 9.31/100, rank 47/47 (change: --) 02:56:41 !bfjoust yoda --(>)*9>+[-[-](+)*3>+] 02:56:41 -!- zemhill has quit (Remote host closed the connection). 02:56:48 !bfjoust flow >(-)*5>>>>(>[++>>([(+)*5[-]]+>)*-1])*-1 02:57:01 ... 02:57:11 I don't see an autorestart 02:57:22 did I do something? 02:57:31 -!- zemhill has joined. 02:57:33 No 02:57:37 It just likes to randomly die 02:57:39 !bfjoust flow >(-)*5>>>>(>[++>>([(+)*5[-]]+>)*-1])*-1 02:57:39 Lymia.flow: points -3.98, score 24.78/100, rank 25/47 (change: +7) 02:57:43 !bfjoust yoda --(>)*9>+[-[-](+)*3>+] 02:57:44 L8D.yoda: points -24.33, score 9.41/100, rank 47/47 (change: --) 02:57:46 !bfjoust flow >(-)*5>>>>(>[..>>([(+)*5[-]]+>)*-1])*-1 02:57:47 Lymia.flow: points -4.07, score 24.55/100, rank 25/47 (change: --) 02:57:54 !bfjoust flow >(-)*5>>>>(>[++>>([(+)*5[-]]+>)*-1])*-1 02:57:54 Lymia.flow: points -3.98, score 24.78/100, rank 25/47 (change: --) 02:57:58 !bfjoust flow >(-)*4>>>>>(>[++>>([(+)*5[-]]+>)*-1])*-1 02:57:59 Lymia.flow: points -5.57, score 22.53/100, rank 32/47 (change: -7) 02:58:01 !bfjoust flow >(-)*5>>>>(>[++>>([(+)*5[-]]+>)*-1])*-1 02:58:01 Lymia.flow: points -3.98, score 24.78/100, rank 25/47 (change: +7) 02:59:16 !bfjoust yoda --(>)*9([-.](+)*6>)*21[-[-.]>+] 02:59:16 L8D.yoda: points -26.02, score 7.77/100, rank 47/47 (change: --) 02:59:49 !bfjoust sneaky >(+)*10>(-)*10<<(-)*127>[[]]<(-+)*-1 02:59:50 Lymia.sneaky: points -22.57, score 8.73/100, rank 47/47 03:00:09 !bfjoust sneaky >(+)*10>>>>>(-)*50<<<<<<(-)*127>[[]]<(-+)*-1 03:00:10 Lymia.sneaky: points -20.74, score 9.13/100, rank 47/47 (change: --) 03:00:20 !bfjoust sneaky >+>>>>>(-)*50<<<<<<(-)*127>[[]]<(-+)*-1 03:00:22 Lymia.sneaky: points -23.31, score 7.63/100, rank 47/47 (change: --) 03:00:23 !bfjoust sneaky >+>>>>>(-)*50<<<<<<(-)*127>[]<(-+)*-1 03:00:25 Lymia.sneaky: points -20.24, score 8.97/100, rank 47/47 (change: --) 03:00:28 boo 03:00:34 !bfjoust yoda --(>)*9([-.](+)*6>)*21[+[-.]>-] 03:00:35 L8D.yoda: points -26.02, score 7.77/100, rank 47/47 03:00:43 !bfjoust yoda --(>)*9([-.](+)*6>)*21[++[-.]>--] 03:00:44 L8D.yoda: points -26.02, score 7.77/100, rank 47/47 (change: --) 03:02:01 -!- Guest59309 has left ("http://quassel-irc.org - Chat comfortably. Anywhere."). 03:02:12 !bfjoust yoda --(>)*9([-.](+)*6>)*21[-[--.]>+] 03:02:13 -!- Guest59309 has joined. 03:02:13 L8D.yoda: points -26.02, score 7.77/100, rank 47/47 (change: --) 03:02:26 PCLinuxOS doesn't use Kicker by default :( 03:02:36 !bfjoust yoda --(>)*9([-.](+)*6>)*21[-[-]>+] 03:02:36 L8D.yoda: points -26.02, score 7.77/100, rank 47/47 (change: --) 03:02:47 !bfjoust yoda --(>)*9([-](+)*6>)*21[-[-]>+] 03:02:47 -!- Guest59309 has left ("http://quassel-irc.org - Chat comfortably. Anywhere."). 03:02:48 L8D.yoda: points -20.93, score 11.22/100, rank 47/47 (change: --) 03:03:03 -!- Guest59309 has joined. 03:03:12 -!- Guest59309 has left ("http://quassel-irc.org - Chat comfortably. Anywhere."). 03:03:16 What's a good KDE based distro? 03:03:24 !bfjoust yoda --(>(+)*3)*9([-](+)*6>)*21[-[-]>+] 03:03:24 L8D.yoda: points -19.81, score 10.82/100, rank 47/47 (change: --) 03:03:34 !bfjoust yoda --(>+)*9([-](+)*6>)*21[-[-]>+] 03:03:34 L8D.yoda: points -20.98, score 10.40/100, rank 47/47 (change: --) 03:03:38 KaOS seems KDE centered 03:04:35 !bfjoust yoda --(>+)*9([-](-)*6>)*21[-[-]>+] 03:04:35 L8D.yoda: points -20.02, score 10.82/100, rank 47/47 (change: --) 03:04:48 !bfjoust yoda --(>-)*9([-](-)*6>)*21[-[-]>+] 03:04:49 L8D.yoda: points -22.98, score 7.51/100, rank 47/47 (change: --) 03:05:09 !bfjoust yoda --(>++)*9([-](-)*6>)*21[-[-]>+] 03:05:09 L8D.yoda: points -20.36, score 10.83/100, rank 47/47 (change: --) 03:05:16 !bfjoust yoda --(>)*9([-](-)*6>)*21[-[-]>+] 03:05:17 L8D.yoda: points -20.88, score 11.13/100, rank 47/47 (change: --) 03:05:28 !bfjoust yoda --(>)*9([-](-)*6>)*21[-[+]>+] 03:05:29 L8D.yoda: points -20.88, score 11.13/100, rank 47/47 (change: --) 03:05:48 !bfjoust yoda ---(>)*9([-](-)*6>)*21[-[-]>+] 03:05:49 L8D.yoda: points -21.31, score 10.93/100, rank 47/47 (change: --) 03:05:57 !bfjoust yoda -(>)*9([-](-)*6>)*21[-[-]>+] 03:05:57 L8D.yoda: points -20.76, score 11.24/100, rank 47/47 (change: --) 03:06:04 !bfjoust yoda (>)*9([-](-)*6>)*21[-[-]>+] 03:06:04 L8D.yoda: points -19.86, score 11.89/100, rank 47/47 (change: --) 03:06:16 I should stop spamming 03:06:30 !bfjoust google https://www.google.com/images/srpr/logo11w.png 03:06:30 Lymia: error: parse error: terminating ) without a matching ( 03:08:16 !bfjoust yoda (>(+)*3>(-)*3)*4([-](-)*6>)*21[-[-]>+] 03:08:17 L8D.yoda: points -23.57, score 7.24/100, rank 47/47 (change: --) 03:09:05 you can maybe still !bfjoust with private messages 03:09:44 !bfjoust yoda (>(+)*3>(-)*3)*4(>(+)*10[-](-)*6)*21 03:09:44 Lymia.yoda: points -19.17, score 10.85/100, rank 47/47 03:09:54 !bfjoust yoda (>(+)*10>(-)*10)*4(>(+)*20[-]+)*21 03:09:55 Lymia.yoda: points -13.43, score 13.75/100, rank 47/47 (change: --) 03:10:04 Come on, look at what you're doing. :P 03:10:07 Don't just make random bots. 03:10:11 !bfjoust yoda < 03:10:11 Lymia.yoda: points -46.00, score 0.00/100, rank 47/47 (change: --) 03:13:10 !bfjoust yoda (>(-)*128)*9>+[-[-.]+>+] 03:13:11 L8D.yoda: points -30.45, score 6.01/100, rank 47/47 03:13:20 -_- 03:13:37 128 is way too big for decoys 03:13:43 And faster programs will find your decoys before you get one set up. 03:13:46 Try reverse decoys 03:13:55 (>)*8(<(-)*10)*8(>)*8 03:14:02 (>)*8(<(-)*10)*8(>(-)*50)*8 maybe 03:14:57 !bfjoust yoda ((>--)*8(<)*8)(10 >+[-[-.]+>+] 03:14:57 L8D: error: parse error: starting ( without a matching ) 03:15:02 !bfjoust yoda ((>--)*8(<)*8)*10 >+[-[-.]+>+] 03:15:05 L8D.yoda: points -29.69, score 3.69/100, rank 47/47 (change: --) 03:15:14 !bfjoust yoda ((>--)*8(<)*8)*5 >+[-[-.]+>+] 03:15:16 L8D.yoda: points -28.57, score 4.12/100, rank 47/47 (change: --) 03:15:23 -_- I can't really be creative 03:15:58 !bfjoust yoda ((>-)*8(<)*8)*10 >+[-[-.]+>+] 03:16:09 http://codu.org/eso/bfjoust/egojsout/ 03:16:17 This might get you a better feel for how your program actually behaves 03:16:18 thanks 03:16:28 (Type it in again, zemhill sometimes fails to receieve programs) 03:17:08 I see 03:17:18 the visualization really helps 03:21:04 As it stands, you have two big problems. 03:21:19 this is what I'm currently testing 03:21:22 You spend 240 cycle setting up 10 height decoys. 03:21:24 !bfjoust yoda (>)*8(<(-)*10)*7(>)*7 >+[---[-.]+>+++] 03:21:25 And you clear your own decoys 03:21:26 L8D.yoda: points -21.83, score 9.17/100, rank 47/47 (change: --) 03:21:54 You don't need to use [] to loop, mind 03:21:56 ()*21 03:22:00 Or ()*-1 03:22:07 For the outer loop of your clear cycle 03:22:13 "---[-.]" < This is bad 03:22:28 oooh I see 03:22:28 If there's no decoy, or a negative decoy, you now have to clear all 256 levels with a 3 cycle clear 03:22:29 thank you 03:23:07 -!- AndoDaan has quit (Excess Flood). 03:23:30 -!- AndoDaan has joined. 03:28:32 -!- AndoDaan has quit. 03:35:28 -!- Frooxius has quit (Read error: Connection reset by peer). 03:36:03 -!- Frooxius has joined. 03:39:14 -!- Frooxius has quit (Client Quit). 03:43:16 -!- AndoDaan has joined. 03:44:04 L8D: did you learn anything about strategies? 03:44:13 yes 03:45:25 Lymia: it's up to you to put your warrior on the strategies page, and decide exactly what needs to be said about it 03:45:44 Well 03:45:46 usually you would focus on the innovations it achieved 03:45:49 I doubt there's any new strategies. 03:45:55 Or even anything unexpected there. 03:45:55 -!- Frooxius has joined. 03:45:59 then not much need be said 03:46:09 you can just document the strategies used 03:48:11 !bfjoust yoda (>)*8(>[(>[(+)*6[-]]>)*21])*21 03:48:12 L8D.yoda: points -11.62, score 16.66/100, rank 46/47 (change: +1) 03:49:13 !bfjoust yoda (>)*8(>[(>[(+)*10[-]]>)*21])*21 03:49:14 L8D.yoda: points -11.36, score 16.76/100, rank 46/47 (change: --) 03:56:53 [wiki] [[Brainflow]] N http://esolangs.org/w/index.php?oldid=40528 * 96.33.169.118 * (+4721) Added page for BrainFlow 03:57:18 -!- Frooxius has quit (Quit: *bubbles away*). 03:57:39 -!- pi___ has quit (Quit: Lost terminal). 04:02:05 -!- Frooxius has joined. 04:02:56 -!- AndoDaan______ has joined. 04:04:44 -!- AndoDaan has quit (Ping timeout: 272 seconds). 04:05:01 -!- AndoDaan______ has changed nick to AndoDaan. 04:07:57 -!- ^v has quit (Remote host closed the connection). 04:08:04 hmmm. i wonder... 04:08:30 !bfjoust ais523_vibration_fool_faster #draw gridlines 04:08:30 if self.drawgrid: 04:08:30 for i in range(1,gridx): 04:08:30 self.create_line(self.gridsize*i,0,self.gridsize*i,gridy*self.gridsize,fill='gray') 04:08:31 quintopia.ais523_vibration_fool_faster: points -32.43, score 4.52/100, rank 47/47 04:08:34 for i in range(1,gridy): 04:08:41 bad at copying 04:08:53 !bfjoust ais523_vibration_fool_faster >>>++++<----<++++<(-)*127.(-+)*50000 04:08:55 quintopia.ais523_vibration_fool_faster: points -17.45, score 10.51/100, rank 47/47 (change: --) 04:09:06 okay good to know that still doesn't work 04:12:28 !bfjoust yoda (>)*9(>[(+)*10[-]])*21 04:12:29 L8D.yoda: points -12.67, score 16.36/100, rank 46/47 (change: -1) 04:13:58 -!- Frooxius has quit (Quit: *bubbles away*). 04:14:04 !bfjoust jix_wiggle3 http://codu.org/eso/bfjoust/in_egobot.hg/index.cgi/raw-file/48730c91ec77/jix_wiggle3.bfjoust 04:14:07 quintopia: error: parse error: [..] crossing out of a ({..}) level 04:14:08 Wee 04:14:12 oh 04:14:22 Processing 15000 revisions of Egojoust history 04:14:28 Since Egojoust is finishsed 04:14:32 i should rewrite wiggle3 to use the new syntax 04:14:35 I'm going to find the winner of the whole Egojoust 04:14:36 <3 04:18:00 -!- ^v has joined. 04:19:16 !bfjoust jix_wiggle3 http://sprunge.us/SRXc 04:19:17 quintopia.jix_wiggle3: points -11.93, score 14.99/100, rank 47/47 04:19:28 it used to be so good 04:19:38 !bfjoust yoda (>)*8(>[(+)*3[-]]+)*21 04:19:39 L8D.yoda: points -12.57, score 16.60/100, rank 46/47 (change: --) 04:19:49 !bfjoust yoda (>)*8(>[(+)*5[-]]+)*21 04:19:50 L8D.yoda: points -10.93, score 17.83/100, rank 45/47 (change: +1) 04:19:56 !bfjoust yoda (>)*8(>[(+)*10[-]]+)*21 04:19:57 L8D.yoda: points -13.83, score 16.30/100, rank 46/47 (change: -1) 04:20:06 !bfjoust yoda (>)*8(>[-]+)*21 04:20:06 L8D.yoda: points -18.93, score 12.99/100, rank 47/47 (change: -1) 04:20:15 !bfjoust yoda (>)*8(>[+[-]]+)*21 04:20:15 L8D.yoda: points -16.98, score 14.26/100, rank 47/47 (change: --) 04:20:22 weid 04:20:26 !bfjoust myndzi_slowrush >(+)*22>(-)*22(>++++++>------)*1>+>->->+(>[[-(+)*22[-]]+>[+(-)*22[+]]->]+)*21 04:20:32 !bfjoust yoda (>)*8(>[+++[-]]+)*21 04:20:32 L8D.yoda: points -12.43, score 16.85/100, rank 47/47 04:20:44 !bfjoust myndzi_slowrush >(+)*22>(-)*22(>++++++>------)*1>+>->->+(>[[-(+)*22[-]]+>[+(-)*22[+]]->]+)*21 04:20:45 quintopia.myndzi_slowrush: points -10.00, score 17.73/100, rank 46/47 (change: --) 04:20:53 !bfjoust yoda (>)*8(>[++++[-]]+)*21 04:20:54 hey slowrush is still relevant barely 04:20:54 L8D.yoda: points -11.90, score 17.19/100, rank 47/47 (change: --) 04:21:00 wtf 04:21:16 !bfjoust yoda (>)*8(>[+++++[-]]+)*21 04:21:16 L8D.yoda: points -10.79, score 18.05/100, rank 45/47 (change: +2) 04:21:21 WTF? 04:21:28 4 poke it is... 04:21:30 -!- Frooxius has joined. 04:21:47 wait no 04:21:53 offset 04:21:59 !bfjoust yoda (>)*8(>[(+)*5[-]]+)*21 04:22:00 L8D.yoda: points -10.79, score 18.05/100, rank 45/47 (change: --) 04:22:06 offset? 04:22:12 !bfjoust ais523_defend9 http://codu.org/eso/bfjoust/in_egobot.hg/index.cgi/raw-file/6f8e08560f66/ais523_defend9.bfjoust 04:22:15 quintopia: error: parse error: [..] crossing out of a ({..}) level 04:22:28 i think when you said "four poke" you meant "offset of four" 04:22:36 poke is something else 04:22:44 okay then yes offset 04:24:54 !bfjoust ais523_defend9 http://sprunge.us/faBM 04:24:56 quintopia.ais523_defend9: points -13.90, score 13.41/100, rank 47/47 04:25:02 oh well! 04:27:45 [wiki] [[BF Joust strategies]] http://esolangs.org/w/index.php?diff=40529&oldid=40527 * 108.205.143.75 * (+1085) 04:28:31 No good at techenical writeups. 04:28:31 ^.^ 04:29:19 [lymia@aurica ~/data/programming/bfjoust-versions]$ ls egojoust_versions/ | wc -l 04:29:19 9910 04:29:25 Who wants 9910 warriors to sort through? 04:30:49 !bfjoust yoda (>->)*4(>[(+)*5[-]]+)*21 04:30:50 L8D.yoda: points -8.93, score 18.20/100, rank 44/47 (change: --) 04:30:57 !bfjoust yoda (>->)*4(>[(+)*5[-]]-)*21 04:30:57 L8D.yoda: points -9.90, score 17.51/100, rank 44/47 (change: --) 04:31:01 !bfjoust yoda (>->)*4(>[(+)*5[-]]+)*21 04:31:02 L8D.yoda: points -8.93, score 18.20/100, rank 44/47 (change: --) 04:31:34 Lymia: 9910 individual warriors? 04:31:41 Yep. 04:31:49 This is every single distinct program that ever went through the dead EgoJoust hill 04:32:07 you should first compile each one down to brainfuck then checksum each one and eliminate duplicates 04:32:45 I already did. 04:32:51 Remove duplicates, at least. 04:33:40 https://lymia.moe/~lymia/egojoust_versions.tar.xz 04:33:44 If someone wants a bunch of BF Joust bots. 04:33:46 Unsorted 04:34:22 You couldn't write a script to sort them by rank? 04:34:39 or go through each individual one and upload it to the new hill 04:34:45 That takes a lot of computing power. 04:34:51 And I'm not going to screw up the new hill 04:35:45 couldn't you take the code of the new hill, start your own server somewhere and upload each warrior one at a time with a script 04:36:01 then take the top 47 or just the outstanding ones and upload them to the new hill 04:37:19 Let me put this in prospective 04:37:34 Running one warrior has, so far, taken about 20 seconds 04:37:58 quintopia, elliott_: Help 04:38:07 I need to run 9910*9909 warrior matchups 04:38:54 What about just 9910*1 matchups? 04:39:10 or just 9910*2 or 9910*3 04:39:36 you take the top 1, 2 or 3 best warriors of the existing strategies 04:41:10 !bfjoust yoda (>->)*4(>[(+)*5[-.]]+)*21 04:41:10 L8D.yoda: points -18.98, score 10.81/100, rank 47/47 (change: -3) 04:41:19 !bfjoust yoda (>->)*4(>[(+)*5[-]]+)*21 04:41:19 L8D.yoda: points -8.93, score 18.20/100, rank 44/47 (change: +3) 04:41:36 Lymia: How do you suggest I solve this problem? 04:41:42 Lymia: there aren't that many warriors on the hill 04:41:49 quintopia, yes. 04:41:50 Lymia: eliminate all but the latest iteration of each 04:41:54 I'm losing to lockers, so I want a cheap fix to avoid nearly as many losses 04:41:57 I extracted every single bot that ever landed on egobot 04:42:29 "it hurts when i do this" "well don't do that" 04:43:46 !bfjoust yoda (>->)*4(>[(+)*5[--.]]+)*21 04:43:48 L8D.yoda: points -38.02, score 1.83/100, rank 47/47 (change: -3) 04:43:59 !bfjoust yoda (>->)*4(>[(+)*6[--.]]+)*21 04:44:00 L8D.yoda: points -33.95, score 4.29/100, rank 47/47 (change: --) 04:44:32 !bfjoust yoda ++(>->)*4(>[(+)*5[-]]+)*21 04:44:32 L8D.yoda: points -10.12, score 17.28/100, rank 44/47 (change: +3) 04:46:35 !bfjoust yoda (>->+)*4([(+)*5[-]]+)*21 04:46:37 L8D.yoda: points -34.00, score 1.37/100, rank 47/47 (change: -3) 04:46:55 !bfjoust yoda (>->>+>)*2([(+)*5[-]]+)*21 04:46:57 L8D.yoda: points -33.02, score 1.59/100, rank 47/47 (change: --) 04:47:05 !bfjoust yoda (>->)*4([(+)*5[-]]+)*21 04:47:07 L8D.yoda: points -32.88, score 1.74/100, rank 47/47 (change: --) 04:47:15 !bfjoust yoda (>->)*4(>[(+)*5[-]]+)*21 04:47:16 L8D.yoda: points -8.93, score 18.20/100, rank 44/47 (change: +3) 04:47:41 !bfjoust yoda (>->+)*4(>[(+)*5[-]]+)*21 04:47:41 L8D.yoda: points -8.86, score 18.17/100, rank 44/47 (change: --) 04:47:58 !bfjoust yoda (>->>+>)*2(>[(+)*5[-]]+)*21 04:47:58 L8D.yoda: points -9.55, score 18.03/100, rank 44/47 (change: --) 04:48:27 !bfjoust yoda (>->)*4(>[(+)*5[-]]-)*21 04:48:28 L8D.yoda: points -9.90, score 17.51/100, rank 44/47 (change: --) 04:48:34 !bfjoust yoda (>->)*4(>[(+)*5[-]]+)*21 04:48:34 L8D.yoda: points -8.93, score 18.20/100, rank 44/47 (change: --) 04:48:38 yrah... 04:48:48 someone really needs to make zemhill pmable 04:49:09 fizzie is the only someone 04:50:35 !bfjoust draw (+)*-1 04:50:37 quintopia.draw: points -15.48, score 11.87/100, rank 47/47 04:51:22 !bfjoust draw ((+)*256(-)*256)*-1 04:51:25 quintopia.draw: points -13.76, score 11.44/100, rank 47/47 (change: --) 04:52:53 !bfjoust lock <(+)*-1 04:52:53 L8D.lock: points -46.00, score 0.00/100, rank 47/47 04:53:00 !bfjoust draw >+[++]<(-)*-1 04:53:03 quintopia.draw: points -20.98, score 8.00/100, rank 47/47 04:53:04 !bfjoust lock >(+)*-1 04:53:10 L8D.lock: points -6.12, score 13.71/100, rank 47/47 04:53:21 not bad 04:54:31 !bfjoust draw >[(+)*128(-)*128]<(+)*-1 04:54:33 quintopia.draw: points -15.40, score 11.88/100, rank 47/47 04:55:35 !bfjoust draw >>>+++<+++<[(+)*128(-)*128]<(+)*-1 04:55:38 quintopia.draw: points -19.45, score 8.84/100, rank 47/47 (change: --) 04:55:43 quintopia: ha! mine is better than yours 04:55:47 yep 04:55:50 hehe 04:56:16 !bfjoust draw >>>+++<+++<[(+)*1000]<(+)*-1 04:56:18 quintopia.draw: points -19.45, score 8.84/100, rank 47/47 (change: --) 04:56:21 hmm 04:56:35 !bfjoust lock >(++-)*-1 04:56:39 o.O 04:56:41 L8D.lock: points -7.43, score 11.18/100, rank 47/47 04:56:54 !bfjoust lock >(-)*-1 04:57:01 L8D.lock: points -6.12, score 13.71/100, rank 47/47 (change: --) 04:57:29 !bfjoust lock >(+>+<)*-1 04:57:32 L8D.lock: points -26.57, score 3.42/100, rank 47/47 (change: --) 04:57:37 oh 04:57:38 duh 04:57:43 ._. 04:57:43 !bfjoust draw >>>+++<+++<+[(+)*1000]<(+)*-1 04:57:48 quintopia.draw: points -13.45, score 6.43/100, rank 47/47 04:57:55 hmm 04:58:27 yeah that draws as often as it should. kicks space_hotel's ass. 05:02:12 L8D: i think your simple one works well because it tricks nyuroki off the tape. nyuroki is based on the idea that locking doesn't happen on one's own flag right off the bat. apparently. 05:02:39 or not 05:02:48 interesting.... 05:02:49 !bfjoust draw >>>+++<+++<+[++]<(+)*-1 05:02:52 quintopia.draw: points -24.33, score 5.67/100, rank 47/47 (change: --) 05:03:07 that one gets such much drawing 05:04:19 !bfjoust lock >+((+)*120(-)*120)*-1 05:04:24 L8D.lock: points -6.31, score 12.69/100, rank 47/47 05:05:03 somehow, just barely, lesser 05:05:05 yeah the one that spins on the first cell BEATS nyuroki 05:05:29 !bfjoust lock >(+)*-1 05:05:35 L8D.lock: points -6.12, score 13.71/100, rank 47/47 (change: --) 05:05:47 oh wow it does 05:06:12 by 2 points though 05:06:13 because on short tapes, nyuroki says "fuck this i must be getting locked here" and immediately moves two cells to the right 05:06:20 which ... makes it suicide 05:06:24 with >80% of games being draws 05:07:06 !bfjoust lock ++>(+)*-1 05:07:12 L8D.lock: points -6.62, score 13.11/100, rank 47/47 (change: --) 05:08:49 !bfjoust lock +>(+)*-1 05:08:55 L8D.lock: points -6.10, score 13.74/100, rank 47/47 (change: --) 05:08:56 !bfjoust mad_rush >(+)*-1(>[(>)*8((+)*115[+]>)*20])*20 05:09:02 quintopia.mad_rush: points -6.12, score 13.71/100, rank 47/47 05:09:05 woah...interesting 05:09:29 mad_rush has the exact same score as >(+)*-1 05:09:30 oh wait 05:09:41 that's because the rest of the coden ever gets executes :P 05:09:46 lol 05:09:49 quintopia, rather. 05:09:53 !bfjoust mad_rush >(+)*2000(>[(>)*8((+)*115[+]>)*20])*20 05:09:53 quintopia.mad_rush: points -13.76, score 21.41/100, rank 43/47 (change: +4) 05:09:57 It, uh. 05:10:00 Assumes stuff makes decoys 05:10:05 quintopia: nicely done 05:10:06 !bfjoust mad_rush >(+)*3000(>[(>)*8((+)*115[+]>)*20])*20 05:10:06 quintopia.mad_rush: points -14.81, score 20.12/100, rank 45/47 (change: -2) 05:10:12 !bfjoust mad_rush >(+)*1000(>[(>)*8((+)*115[+]>)*20])*20 05:10:13 quintopia.mad_rush: points -14.31, score 19.30/100, rank 45/47 (change: --) 05:10:14 So that on short tapes, its checks before setting decoys would send it straight to its clear loop >_> 05:10:31 !bfjoust mad_rush >(+)*2000(>[(>)*8((+)*115[+]>)*20])*20 05:10:31 quintopia.mad_rush: points -13.76, score 21.41/100, rank 43/47 (change: +2) 05:10:45 When it thinks its getting locked, it switches to [-.-+] instead of going >> 05:11:49 i can see that 05:12:04 !bfjoust mad_rush >(+)*2000(>[(>)*7((+)*115[+]>)*20])*20 05:12:04 quintopia.mad_rush: points -20.48, score 14.08/100, rank 47/47 (change: -4) 05:12:09 !bfjoust mad_rush >(+)*2000(>[(>)*8((+)*115[+]>)*20])*20 05:12:10 quintopia.mad_rush: points -13.76, score 21.41/100, rank 43/47 (change: +4) 05:12:57 !bfjoust lock-nyuroki >+[]<(-++--+--++)*-1 05:12:59 Lymia.lock-nyuroki: points -25.69, score 7.42/100, rank 47/47 05:13:16 Uh, let's see... 05:13:44 !bfjoust lock-nyuroki >+[]<(-+)*500(+.+-)*-1 05:13:45 Lymia.lock-nyuroki: points -27.10, score 9.25/100, rank 47/47 (change: --) 05:14:16 !bfjoust blitz (>+)*8(<(+)*11)(>)*8(>[(+)*10[-]]) 05:14:17 L8D.blitz: points -44.90, score 0.10/100, rank 47/47 05:14:30 I suck 05:14:57 !bfjoust blitz (>+)*8(<(+)*11)(>)*8(>[(+)*10[-]])*21 05:14:58 L8D.blitz: points -16.60, score 14.69/100, rank 47/47 (change: --) 05:15:03 ...much butter 05:16:12 !bfjoust blitz (>+)*8(<(+)*11)*8(>)*8(>[(+)*10[-]])*21 05:16:13 L8D.blitz: points -5.81, score 24.88/100, rank 33/47 (change: +14) 05:16:20 holy shit 05:16:27 !bfjoust yolo (>+>-)*10([(+)*50([-])*2]+>)*-1 05:16:27 Lymia.yolo: points -31.62, score 6.27/100, rank 47/47 05:16:29 nice 05:16:41 !bfjoust yolo (>++++>---)*8([(+)*50([-])*2]+>)*-1 05:16:42 Lymia.yolo: points -25.83, score 8.53/100, rank 47/47 (change: --) 05:16:57 blitz draws nyuroki 05:17:22 !bfjoust blitz (>+)*8((+)*11<)*8(>)*8(>[(+)*10[-]])*21 05:17:22 L8D.blitz: points -5.55, score 25.26/100, rank 34/47 (change: -4) 05:17:24 hun 05:17:29 Looks like it's polarity decided? 05:17:52 polarity what? 05:17:55 Right 05:17:58 Bigger than my offset 05:18:00 One bigger. 05:18:15 oh yeah I did that because I saw a lot of warriors using the number 10 05:18:27 so I used the number 10 in my code except I decoy at 11 05:18:35 L8D: trying making it alternate polarity on the decoys? 05:18:43 Yeah 05:18:45 oooh 05:18:50 (blitz is winning on one polarity only) 05:18:51 The tie is because 05:19:00 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:19:01 L8D.blitz: points -4.55, score 26.21/100, rank 29/47 (change: +5) 05:19:05 On one polarity nyuroki blitzs through the decoys due to polarity 05:19:06 awesome! 05:19:06 nice 05:19:08 On the other, its offset fails 05:19:11 I feel so proud of myself 05:19:26 Lymia: time to use an offset of 11 instead? 05:19:31 Lymia: I'm using an offset of 10 to be fair 05:19:53 L8D: don't be fair. tweak constants to your heart's content! 05:19:54 Lymia: please don't update nyuroki 05:20:08 I don't want my dreams to be crushed 05:20:20 fuck your dreams. this is bf joust 05:21:00 !bfjoust blitz (>+>-)*4((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:21:00 L8D.blitz: points -7.50, score 21.48/100, rank 44/47 (change: -15) 05:21:07 ... 05:21:14 !bfjoust blitz (>+>)*4((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:21:15 L8D.blitz: points -6.45, score 24.04/100, rank 38/47 (change: +6) 05:21:18 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:21:19 Lymia.nyuroki: points 23.26, score 100.00/100, rank 1/47 (change: --) 05:21:24 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:21:24 L8D.blitz: points -4.55, score 26.21/100, rank 29/47 (change: +9) 05:21:47 Let's do something stupid 05:22:07 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:22:08 Lymia.nyuroki: points 23.17, score 100.00/100, rank 1/47 (change: --) 05:22:12 .... it lives 05:22:59 but it is still using an offset of 10 05:23:01 11* 05:23:06 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:23:06 Lymia.nyuroki: points 23.17, score 100.00/100, rank 1/47 (change: --) 05:23:26 Opps 05:23:28 Upload fail 05:23:29 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:23:30 Lymia.nyuroki: points 18.60, score 96.84/100, rank 2/47 (change: -1) 05:23:48 lol 05:23:50 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:23:50 Lymia.nyuroki: points 18.57, score 97.26/100, rank 2/47 (change: --) 05:24:06 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:24:07 Lymia.nyuroki: points 22.86, score 100.00/100, rank 1/47 (change: +1) 05:24:12 IT's getting beaten by your yolo script 05:24:22 wait nvm 05:24:30 it's getting beaten by quintopia's mad_rush 05:24:34 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:24:35 Lymia.nyuroki: points 23.17, score 100.00/100, rank 1/47 (change: --) 05:24:40 Unfortunely 05:24:41 which is why it's at #2 05:24:43 blitz can take the tie. 05:24:48 Other bots are more important 05:24:50 yay! 05:25:27 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*5[-]])*21 05:25:27 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:25:28 L8D.blitz: points -6.67, score 23.12/100, rank 41/47 (change: -12) 05:25:29 Lymia.nyuroki: points 10.95, score 66.21/100, rank 5/47 (change: -4) 05:25:31 Giant offset! 05:25:36 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:25:36 L8D.blitz: points -4.98, score 31.98/100, rank 35/47 (change: +6) 05:25:37 Terrible idea 05:25:44 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:25:44 L8D.blitz: points -4.98, score 31.98/100, rank 35/47 (change: --) 05:25:49 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:25:50 Lymia.nyuroki: points 23.17, score 100.00/100, rank 1/47 (change: +4) 05:25:51 what happened 05:26:04 Lymia: make it beat ffspg! 05:26:09 ffspg? 05:26:14 Oh 05:26:40 FFSPG vs Nyuroki, unfortunely 05:26:58 Is matter of larger decoy sizes. :( 05:27:30 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:27:31 Lymia.nyuroki: points 21.07, score 100.00/100, rank 1/47 (change: --) 05:28:57 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:28:58 Lymia.nyuroki: points 21.71, score 100.00/100, rank 1/47 (change: --) 05:29:21 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:29:22 Lymia.nyuroki: points 21.62, score 100.00/100, rank 1/47 (change: --) 05:29:42 !bfjoust blitz (>+)*8((+)*11<<(-)*11<<)*2(>)*8(>[(+)*10[-]])*21 05:29:43 L8D.blitz: points -8.93, score 22.68/100, rank 46/47 (change: -17) 05:29:47 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]])*21 05:29:47 L8D.blitz: points -4.45, score 28.66/100, rank 29/47 (change: +17) 05:29:56 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:29:56 Lymia.nyuroki: points 23.17, score 100.00/100, rank 1/47 (change: --) 05:31:32 i have a convention idea. 05:31:49 we can easily represent a tape configuration by an integer 05:32:16 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:32:19 Lymia.nyuroki: points -18.76, score 12.18/100, rank 46/47 (change: -45) 05:32:39 by letting the sign be the polarity (negative for kettle) 05:32:44 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:32:45 Lymia.nyuroki: points -29.45, score 8.38/100, rank 47/47 (change: -1) 05:32:57 hahaha 05:33:01 and letting the number be 9 less than the tape length 05:33:08 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:33:09 Lymia.nyuroki: points -30.64, score 7.49/100, rank 47/47 (change: --) 05:33:18 *sigh* 05:33:20 Code restructures 05:33:20 :( 05:33:27 so that x in [-21,...,21], x!=0 are the possible tape configurations 05:33:46 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:33:48 Lymia.nyuroki: points -27.88, score 9.15/100, rank 47/47 (change: --) 05:34:04 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:34:06 Lymia.nyuroki: points -30.26, score 7.71/100, rank 47/47 (change: --) 05:36:00 OMG I have this brilliant idea for what we could be spending all this time writing bots doing... 05:36:15 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:36:16 Lymia.nyuroki: points 18.88, score 95.98/100, rank 3/47 (change: +44) 05:36:16 writing real software. 05:36:23 Lymia: You're *still* going on? 05:36:27 Nah 05:36:36 Just trying to integrate a poke into nyuroki. 05:36:40 As you can see, it's not going well 05:36:57 L8D: It should *be* "pmable" already. 05:37:03 (Perhaps I should point that out somewhere.) 05:37:22 today I learned ".moe" is a real TLD 05:37:37 fizzie: people were failing to get pms working earlier i think 05:38:08 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:38:09 Lymia.nyuroki: points 18.02, score 94.28/100, rank 3/47 (change: --) 05:38:20 fizzie: nothing happens when I do 05:38:29 fizzie: also can i just say that the zem bfjoust site is a masterpiece of web engineering and i just wish i had enough money to hire you to do stuff 05:39:02 Screw it~ 05:39:03 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 05:39:04 Lymia.nyuroki: points 23.17, score 100.00/100, rank 1/47 (change: +2) 05:39:05 I wouldn't say "masterpiece".... 05:39:07 Rip apart Nyuroki as you'd like 05:39:28 Why do I keep writing ellipses? I don't really know..... 05:39:36 quintopia: Yeah, pure-javascript-for-all-content sites are where it's at, nobody wants search engines and such to be able to index anything. 05:39:42 L8D: have you tried it? everything is interconnected and intelligently explained! 05:39:59 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*50([-])*2]+>)*-1 05:39:59 Lymia.finnel: points 1.10, score 32.15/100, rank 17/47 (change: --) 05:40:01 fizzie: yeah! fuck search engines! 05:40:02 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*40([-])*2]+>)*-1 05:40:02 Lymia.finnel: points 2.55, score 30.58/100, rank 17/47 (change: --) 05:40:04 quintopia: Yes. But I'm a fullstack JS dev too.... 05:40:06 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*9([(+)*60([-])*2]+>)*-1 05:40:08 Lymia.finnel: points -4.05, score 25.77/100, rank 31/47 (change: -14) 05:40:13 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*12([(+)*50([-])*2]+>)*-1 05:40:14 Lymia.finnel: points 6.12, score 41.20/100, rank 8/47 (change: +23) 05:40:16 http://sprunge.us/jEVa <- a query worked just fine for me. 05:40:20 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*14([(+)*50([-])*2]+>)*-1 05:40:20 Lymia.finnel: points 6.38, score 43.29/100, rank 7/47 (change: +1) 05:40:23 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*15([(+)*50([-])*2]+>)*-1 05:40:23 Lymia.finnel: points 5.93, score 42.71/100, rank 7/47 (change: --) 05:40:26 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*13([(+)*50([-])*2]+>)*-1 05:40:26 Lymia.finnel: points 6.71, score 43.44/100, rank 7/47 (change: --) 05:40:29 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*14([(+)*50([-])*2]+>)*-1 05:40:30 Lymia.finnel: points 6.38, score 43.29/100, rank 7/47 (change: --) 05:40:54 yep PMs work 05:41:07 Lymia: take it to PM man! 05:41:15 But I'm molesting the hill! 05:41:15 :( 05:41:18 !bfjoust blitz (>+)*8((+)*11<(-)*11<)*4(>)*8(>[(+)*10[-]]+)*21 05:41:19 L8D.blitz: points -2.21, score 29.56/100, rank 25/47 (change: +3) 05:41:41 woot 05:42:11 Lymia: doesn't molestation usually happen in private? 05:42:19 ^ 05:42:29 How about "laying seige upon" 05:42:32 That's a better metaphor, right? 05:42:46 not really 05:43:05 an army stops laying siege once it has already conquered, you see 05:43:17 !bfjoust blitz (>+)*8((+)*10<(-)*11<)*4(>)*8(>[(+)*10[-]]+)*21 05:43:17 L8D.blitz: points -2.67, score 29.00/100, rank 26/47 (change: -1) 05:43:23 Committing genocide? 05:43:32 !bfjoust blitz (>+)*8((+)*11<(-)*12<)*4(>)*8(>[(+)*10[-]]+)*21 05:43:32 L8D.blitz: points -1.38, score 32.63/100, rank 21/47 (change: +5) 05:43:34 fizzie: so what do you think about my suggestion for score scaling 05:43:52 woot woot! 05:44:05 not blitz ACTUALLY BEATS NYUROKI 05:44:10 http://zem.fi/bfjoust/game/#joust,L8D.blitz,Lymia.nyuroki,90653d4 05:44:13 fuck yeah! 05:45:14 L8D: because of the small but just big enough decoys. good plan. 05:45:47 it also appears to beat space_hotel 05:45:50 for the same reason 05:46:00 that was my only goal from the start actually...I was trying to understand how nyuroki works 05:46:06 Should get my evolver back up sometime. 05:47:01 !bfjoust evolved ((-)*5>[(-)*4.[+.]].)*-1 05:47:02 Lymia.evolved: points -24.71, score 10.99/100, rank 47/47 05:47:12 !bfjoust evolved (-)*5(>.(-)*7)*3(>[(-)*8[.+]](-)*2)*-1 05:47:14 Lymia.evolved: points -15.05, score 17.44/100, rank 47/47 (change: --) 05:47:21 These two crummy things topped the stack overflow hill. 05:47:21 Yep 05:47:24 !bfjoust evolved (-)*5(>.(-)*7)*3(>[(-)*8[+]](-)*2)*-1 05:47:25 Lymia.evolved: points -11.48, score 20.40/100, rank 47/47 (change: --) 05:47:55 i just had an idea 05:48:37 most of the top programs on the hill right now have decoys that are all the same size 05:48:45 or close to it 05:49:03 what if a program searched for the optimal offset size the first time it reached a "real" decoy 05:49:18 or better 05:49:24 It'd hate stuff that sets up decoys in layers. 05:49:38 I tried it out with a total score of 100, but the numbers were too small. Even with 200, the range for most is just around 1-10, with only the top two breaking two digits (with 11.79 and 10.09). I guess I could just make the factor bigger, but I kind of like that there's a well-defined maximum score that's not completely in the stratosphere compared to the actual numbers. (Admittedly, the ... 05:49:40 Like, it says "Oh, about 5 high decoys" for Nyuroki 05:49:44 ... max-scaling is crude too.) 05:49:58 ... but those are only the forward ones while it sets up actual decoys 05:50:10 Lymia: i was about to revise the idea 05:50:26 Lymia: suppose it increased its offset size every time the offset it last used didn't work 05:50:39 fizzie: Isn't whatever is in 1st place supposed to have the 100 score? 05:50:41 So. 05:50:44 Start with a wiggle clear 05:50:53 And use information from that for every further clear? 05:51:21 L8D: That's the way it's now, but in the old scoring, a hypothetical "perfect" program would have gotten 100 score. 05:51:33 ahh 05:51:37 fizzie: 500 then! i want the absolute change in score to mean something dammit! 05:51:45 "hypothetical"? 05:51:56 Lymia: There has never been one submitted, I don't think. 05:52:34 Well 05:52:36 I could work on that 05:53:00 I have a good idea what my technique would be 05:53:01 fizzie: i don't mind at all that the maximum score is much higher than the actual numbers. that's what i'd expect in a good competitive ecosystem. 05:53:27 so you'd need to up your score of 25ish to, like, 500, huh 05:53:40 !bfjoust yoda (>)*8(>[(+)*10[-]]+)*21 05:53:40 L8D.yoda: points -11.31, score 20.69/100, rank 46/47 (change: --) 05:53:42 You need a total duel points of 42 against every other opponent to get 100 points in the old scoring. But even if you did that on the new one, it doesn't have any particular fixed value in the resulting distribution. 05:53:47 quintopia, in the stack overflow hill 05:53:58 The old nyuroki was achieveing a 93% win rate 05:54:02 !bfjoust yoda (>+>)*4(>[(+)*10[-]]+)*21 05:54:02 L8D.yoda: points -9.19, score 21.67/100, rank 46/47 (change: --) 05:54:12 !bfjoust yoda (>+>-)*4(>[(+)*10[-]]+)*21 05:54:13 L8D.yoda: points -7.19, score 23.58/100, rank 44/47 (change: +2) 05:54:17 Lymia: how does the new one do 05:54:21 I'm not sure. 05:54:32 how do I do pms? 05:54:39 It'd probably fall over badly because that hill has some insane programs, and some weird programs. 05:54:49 L8D: just pm the damn bot with the same damn messages :P 05:55:20 quintopia: it wasn't working earlier... 05:55:34 Lymia: do you have to actually post the code to enter, or can you submit it mechanically 05:55:47 Post the code. 05:55:51 lame 05:55:53 I had a local simulator 05:57:49 Lymia: teach me how to use bfjoustext 05:57:58 quintopia, I have a readme. 05:58:08 quintopia: I think "58.96/1000" for the top program looks slightly silly, especially since there's no way you can actually get the (1, 0, 0, ... 0) distribution no matter how good you make your program. But I'll think about it anyway. 05:58:09 And I'm terrible at coding and language design. 05:58:47 i like how your github is the second or third hit on google for nyuroki. makes it easy to find. 05:59:09 fizzie: why is there a /1000 there? is that necessary? 06:00:14 also, why wouldn't a perfect program get the (1,0,0,0,0...) distribution? 06:00:19 -!- StackOverflow has joined. 06:00:22 !bfjoust frederick_128Bot https://raw.githubusercontent.com/redevined/brainfuck/master/BrainFuckedBotsForBattling/bots/128Bot.bf 06:00:23 StackOverflow.frederick_128Bot: points -25.21, score 9.41/100, rank 47/47 06:00:27 Can I do this~ 06:00:29 Pretty please~? 06:00:38 have fun 06:01:06 "rank 47/47" 06:01:07 quintopia: Because you'd only get a 1/N transition probability from every opponent to your program, and quite a lot of the probability mass would be left to share between the opponents. 06:01:15 Most of these bots are bouncing right off the hill. 06:01:28 why is it 47, by the way 06:01:39 Bike: I just copied what it was, so I don't know. 06:01:49 -!- zemhill has quit (Quit: Abandon ship, abandon ship!). 06:01:55 rip 06:02:04 Well, that was interesting. 06:02:11 Sorry 06:02:33 "#" I wonder where that came from. 06:04:43 Lymia: yeah the readme didn't help 06:04:43 [wiki] [[Special:Log/newusers]] create * BettyeLocklear * New user account 06:04:47 [wiki] [[An Updated Introduction To Efficient Plans For Beginning Your Own Business]] N http://esolangs.org/w/index.php?oldid=40530 * BettyeLocklear * (+250) Created page with "Either If you cherished this posting and you would like to acquire more information concerning [http://greenwichdance.org.uk/member/410073/ look at this site] kindly pay a vi..." 06:04:49 How can @progs[newprog] || @progs[@ranking[-1]] result in nil. That doesn't make any sense. 06:05:34 [wiki] [[An Updated Introduction To Efficient Plans For Beginning Your Own Business]] http://esolangs.org/w/index.php?diff=40531&oldid=40530 * 108.205.143.75 * (-247) Replaced content with "die" 06:05:53 Well, I have a meeting to go to in an hour, so I'll again just let it restart. 06:05:56 -!- zemhill has joined. 06:06:22 fizzie: well in that case, wouldn't setting the sum to 1000 make 100 the maximum possible score? 06:06:26 Perhaps it was a race condition, that just shouldn't happen. 06:06:28 Is it... safe to upload a Google Webmaster verification thingy to a public place? 06:06:39 I want to verify my GitHub Pages site 06:07:01 fizzie: erm sorry, N is number of warriors 06:07:16 fizzie: wouldn't setting the sum to 4700 make 100 the max score? 06:07:37 (i'm still not convinced (1,0,0,0,0,0,...) is impossible) 06:07:42 -!- paul2520 has quit (Ping timeout: 245 seconds). 06:07:45 quintopia: I doubt that. But if you want to work it out, go ahead. (I was going to just test it empirically, but didn't yet get around it.) 06:07:47 -!- zemhill has quit (Client Quit). 06:08:07 -!- paul2520 has joined. 06:08:15 Almost certainly a race condition 06:08:22 Lymia: Could you possibly do it slower in that case. 06:08:25 What's happening to zemhill? 06:08:31 -!- paul2520 has changed nick to Guest51277. 06:08:38 -!- zemhill has joined. 06:09:02 fizzie: yeah i think (1,0,0,0,0,...) is possible. it doesn't matter what the other programs share with each other. they all feed some score into Top Program, and Top Program doesn't give anything back. thus, the only possible stationary distribution is (1,0,0,0,0,0...) 06:09:55 anyway, this is all moot. there's no reason to say what your score is "out of"...it's your score. it is what it is. 06:10:30 what matters is how it changes over time 06:10:40 and if there's a different scaling factor every time 06:10:46 how can you track that meaningfully? 06:10:58 -!- StackOverflow has changed nick to zemclear. 06:11:46 -!- zemclear has left ("Hug~♪"). 06:11:48 -!- Lymia has left ("Hug~♪"). 06:11:51 -!- Lymia has joined. 06:12:59 yes! blitz is now in 14th 06:13:12 I should send my updated Nyuroki back at the original hill 06:13:16 Might blow everything up 06:13:20 Lymia: how can i use joustext to write a goto($x) function, that moves the tape pointer to cell $x no matter what position it is in now? (aka generates a different branch of code for every possible current cell) 06:13:45 quintopia, it's a macro preprocessor, you can't really. 06:13:54 :( 06:14:04 If you know your current position, you can. 06:14:16 (<)*$offset or (>)*$offset 06:14:19 sure 06:14:26 that's easy enough to do by hand 06:14:44 Tracking position is super-hard 06:14:47 [>] 06:14:47 Opps 06:15:00 my ideal bf joust metalanguage would track the current cell in every branch of code to make that function possible 06:15:30 [>] would be a mess then 06:15:36 indeed 06:15:43 But I suppose I could try implementing that. 06:15:56 I can't guarentee you aren't asking for exponential codegen though 06:15:59 in that case, it would just say "um sorry i have no idea where you are anymore" 06:16:10 exponential codegen is fine 06:16:35 hrm 06:16:38 Let me think about how to implement that 06:16:45 I wouldn't want it to activate when goto isn't being used. 06:16:49 Since it'd unroll ()*-1s and stuff 06:17:04 yeah 06:17:47 > 256^30 06:17:48 1766847064778384329583297500742918515827483896875618958121606201292619776 06:19:27 -!- AndoDaan has quit (Ping timeout: 246 seconds). 06:20:51 > 256^256 06:20:53 3231700607131100730071487668866995196044410266971548403213034542752465513886... 06:21:04 > 10^10^100 06:21:09 mueval: ExitFailure 1 06:21:45 -!- zemhill has quit (Remote host closed the connection). 06:21:58 quintopia: You've convinced me, and the scoring is now as you suggest. 06:22:03 [wiki] [[Special:Log/delete]] delete * Oerjan * deleted "[[An Updated Introduction To Efficient Plans For Beginning Your Own Business]]": Spam: content was: "die" 06:22:05 -!- zemhill has joined. 06:22:18 What's the correlation between program size and score? 06:22:34 Jafet: There's a plot about that. 06:22:42 quintopia: The Δscore field will have to wait, I can barely make my meeting as it is. 06:22:46 [wiki] [[Special:Log/block]] block * Oerjan * blocked [[User:BettyeLocklear]] with an expiry time of indefinite (account creation disabled): Spamming links to external sites 06:22:53 Jafet: http://zem.fi/egostats/plot_lenscore.png 06:23:17 If you mean quantitatively, "some positive number", based on eyeballing that scatter plot. 06:23:37 One sec 06:23:48 https://twitter.com/pwnallthethings 06:23:55 Was unaware of Firefox issues 06:24:17 https://twitter.com/sempf 06:24:35 Well, score isn't actually an absolute quantity. Maybe a rank correlation estimator would be more useful 06:25:05 http://nakedsecurity.sophos.com/2014/09/25/mozilla-fixes-phishing-friendly-cryptographic-bug-in-firefox-and-thunderbird/ 06:27:04 -!- MoALTz has quit (Quit: Leaving). 06:30:53 -!- oerjan has quit (Quit: how phishy). 07:29:10 -!- `^_^v has quit (Ping timeout: 272 seconds). 07:36:36 -!- not^v has joined. 07:51:15 -!- not^v has quit (Read error: Connection reset by peer). 07:51:41 -!- not^v has joined. 07:58:56 -!- not^v has quit (Ping timeout: 272 seconds). 08:16:56 !bfjoust 08:16:56 mroman_: "!bfjoust progname code". See http://zem.fi/bfjoust/ for documentation. 08:17:40 no. my snail is gone :( 08:18:31 mroman_: your snail got HAMMERED 08:19:11 !bfjoust snail [>[(-)*13[+]].(+)*10] 08:19:12 mroman_.snail: points -13.55, score 9.60, rank 44/47 08:19:21 ok... 08:19:33 It's back on :) 08:19:36 !bfjoust snail [>[(-)*13[+]].(+)*11] 08:19:37 mroman_.snail: points -11.38, score 11.22, rank 44/47 (--) 08:19:46 !bfjoust snail (>[(-)*13[+]].(+)*10)*-1 08:19:47 mroman_.snail: points -12.19, score 10.20, rank 44/47 (--) 08:20:01 !bfjoust yoda (>)*8(>[(+)*6[-]])*21 08:20:02 L8D.yoda: points -0.81, score 17.66, rank 27/47 (--) 08:20:06 !bfjoust snail (>[(-)*13[+]](+)*10)*-1 08:20:07 mroman_.snail: points -12.36, score 10.12, rank 44/47 (--) 08:20:35 !bfjoust snail [>[(-)*13[+]].[-].(+)*10] 08:20:36 mroman_.snail: points -16.00, score 8.41, rank 44/47 (--) 08:20:43 !bfjoust snail [>[(-)*13[+]].[-](+)*10] 08:20:43 mroman_.snail: points -15.52, score 8.58, rank 44/47 (--) 08:21:03 !bfjoust snail >[>[(-)*13[+]].(+)*10] 08:21:03 mroman_.snail: points -28.05, score 3.44, rank 44/47 (--) 08:21:10 !bfjoust snail [>[(-)*13[+]].(+)*10] 08:21:10 mroman_.snail: points -13.55, score 9.60, rank 44/47 (--) 08:21:14 need them decoys 08:21:42 !bfjoust snail (>(-)*12>(+)*5)*4[>[(-)*13[+]].(+)*10] 08:21:43 mroman_.snail: points -3.86, score 15.92, rank 37/47 (+7) 08:21:56 !bfjoust snail (>(-)*12>(+)*5)*3[>[(-)*13[+]].(+)*10] 08:21:56 mroman_.snail: points -6.62, score 13.70, rank 43/47 (-6) 08:22:00 !bfjoust snail (>(-)*12>(+)*5)*5[>[(-)*13[+]].(+)*10] 08:22:01 mroman_.snail: points -2.67, score 16.76, rank 30/47 (+13) 08:22:18 nice 08:22:25 !bfjoust snail (>(-)*13>(+)*7)*5[>[(-)*13[+]].(+)*10] 08:22:32 race condition :) 08:22:34 !bfjoust snail (>(-)*13>(+)*7)*5[>[(-)*13[+]].(+)*10] 08:22:34 mroman_.snail: points -0.43, score 18.49, rank 24/47 (--) 08:23:26 wouldn't that run off the shortest tape immediately? 08:23:41 it seems to run eleven > operations unconditionally 08:24:04 well, almost unconditionally 08:25:55 and why is that last loop a bracket loop instead of an infinite loop? strange 08:26:42 because it's a snail 08:26:47 !bfjoust snail (>(-)*12>(+)*7)*5[>[(-)*13[+]].(+)*10] 08:26:48 mroman_.snail: points -0.95, score 17.59, rank 27/47 (-3) 08:26:52 !bfjoust snail (>(-)*14>(+)*7)*5[>[(-)*13[+]].(+)*10] 08:26:53 mroman_.snail: points -0.64, score 18.27, rank 26/47 (+1) 08:27:00 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*13[+]].(+)*10] 08:27:00 mroman_.snail: points 0.38, score 19.02, rank 22/47 (+4) 08:27:11 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].(+)*10] 08:27:11 mroman_.snail: points 1.17, score 19.99, rank 21/47 (+1) 08:27:15 !bfjoust snail (>(-)*14>(+)*10)*5[>[(-)*13[+]].(+)*10] 08:27:16 mroman_.snail: points 0.14, score 18.88, rank 22/47 (-1) 08:27:20 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].(+)*10] 08:27:20 mroman_.snail: points 1.17, score 19.99, rank 21/47 (+1) 08:27:33 nice 08:28:03 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].(+)*10](<)*11([-][+]>)*-1 08:28:04 mroman_.snail: points 1.17, score 19.99, rank 21/47 (--) 08:28:13 -!- Patashu has joined. 08:29:14 b_jonas: it looks like it's a good thing to rush more than 9 cells 08:29:49 My athena starts the clear at cell 13 08:29:54 and it's on rank 9 08:30:53 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]](+)*10](<)*11([-][+]>)*-1 08:30:54 mroman_.snail: points 0.86, score 19.75, rank 21/47 (--) 08:31:11 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].(+)*10](<)*11([-][+]>)*-1 08:31:12 mroman_.snail: points 1.17, score 19.99, rank 21/47 (--) 08:31:23 How long are tapes actually? 08:31:28 11-30? 08:31:46 I haven't even read the bfjoust specs yet :) 08:33:28 -!- TodPunk has quit (Ping timeout: 260 seconds). 08:35:12 Lymia: 9910*9909 doesn't sound too bad if you parallelise it 08:36:58 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].(+)*1](<)*11([-][+]>)*-1 08:36:58 mroman_.snail: points 1.43, score 20.18, rank 20/47 (+1) 08:37:07 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].](<)*11([-][+]>)*-1 08:37:08 mroman_.snail: points -32.24, score 1.56, rank 44/47 (-24) 08:37:16 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]].+](<)*11([-][+]>)*-1 08:37:17 mroman_.snail: points 1.43, score 20.18, rank 20/47 (+24) 08:37:20 mroman_: 10..30. 08:37:40 I wonder if 14 9 makes athena better 08:37:53 !bfjoust athena (>(+)*14>(-)*9)*5>(-)*10>(-)*10>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 08:37:53 mroman_.athena: points 5.86, score 25.44, rank 10/47 (--) 08:37:56 nope 08:38:04 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*10>(-)*10>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 08:38:04 mroman_.athena: points 5.21, score 24.77, rank 10/47 (--) 08:38:13 fizzie: can you make sure zemhill PM results are announced in #esoteric at least? I don't like the hill changing secretly. 08:38:55 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*13[+]]+](<)*11([-][+]>)*-1 08:38:55 mroman_.snail: points 1.36, score 20.26, rank 20/47 (--) 08:39:12 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*12[+]]+](<)*11([-][+]>)*-1 08:39:13 mroman_.snail: points 1.60, score 20.54, rank 19/47 (+1) 08:39:18 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*11[+]]+](<)*11([-][+]>)*-1 08:39:18 mroman_.snail: points 2.74, score 21.76, rank 17/47 (+2) 08:39:21 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*10[+]]+](<)*11([-][+]>)*-1 08:39:22 mroman_.snail: points 2.67, score 21.81, rank 17/47 (--) 08:39:27 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*9[+]]+](<)*11([-][+]>)*-1 08:39:28 mroman_.snail: points 2.57, score 21.80, rank 17/47 (--) 08:39:34 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*10[+]]+](<)*11([-][+]>)*-1 08:39:35 mroman_.snail: points 2.67, score 21.81, rank 17/47 (--) 08:40:41 That'd mean no reduction in the channel spam, asymptotically speaking. But I guess it could be done; perhaps the status messages are less off-putting as the code. 08:41:56 Maybe only print it when something "major" changes? 08:42:00 Say, change in top 20 08:43:02 fizzie: yes, I don't actually care about channel spam, I think people should know when the hill changes, which is why I don't like /msg submissions :p 08:43:11 When's ais get on? 08:43:15 !bfjoust isthisanygood (>(+)*128>(-)*128)*4([(-)*9[+]]>)*-1 08:43:15 mroman_.isthisanygood: points -28.74, score 4.38, rank 45/47 08:43:27 incidentally, it would be nice if zemhill could link to the source code of the program in the git repo, for when people overwrite with the same URL etc. 08:43:51 !bfjoust isthisanygood (>(+)*128>(-)*128)*4(>[(-)*9[+]])*-1 08:43:52 mroman_.isthisanygood: points -28.36, score 4.30, rank 45/47 (--) 08:43:54 elliott_, people who aren't me do that? 08:44:03 maybe not. but you do it! 08:44:35 !bfjoust isthisanygood (>(+)*128>(-)*128)*4(>[+<->])*-1 08:44:35 mroman_.isthisanygood: points -24.45, score 5.68, rank 45/47 (--) 08:44:43 !bfjoust isthisanygood (>(+)*18>(-)*18)*4(>[+<->])*-1 08:44:44 mroman_.isthisanygood: points -20.86, score 7.14, rank 45/47 (--) 08:44:54 !bfjoust isthisanygood (>[+<->])*-1 08:44:55 mroman_.isthisanygood: points -20.62, score 6.94, rank 45/47 (--) 08:44:58 :{ 08:45:17 !bfjoust isthisanygood (>[(+)*128<->])*-1 08:45:18 mroman_.isthisanygood: points -24.14, score 5.28, rank 45/47 (--) 08:45:24 !bfjoust isthisanygood (>[(+)*7<->])*-1 08:45:25 mroman_.isthisanygood: points -26.21, score 4.75, rank 45/47 (--) 08:46:06 !bfjoust isthisanygood (>[<+>-])*-1 08:46:06 mroman_.isthisanygood: points -16.90, score 8.54, rank 45/47 (--) 08:46:17 !bfjoust isthisanygood (>[<(+)*13>-])*-1 08:46:18 mroman_.isthisanygood: points -22.86, score 6.04, rank 45/47 (--) 08:46:21 blah 08:46:51 !bfjoust isthisanygood (>(+)*14>(-)*9)*4(<)*8(>[<+>-])*-1 08:46:53 mroman_.isthisanygood: points -21.26, score 6.16, rank 45/47 (--) 08:47:29 !bfjoust isthisanygood (>(-)*10[<+>-])*-1 08:47:30 mroman_.isthisanygood: points -33.26, score 2.37, rank 45/47 (--) 08:47:49 !bfjoust isthisanygood (>[<+>-]<)*-1 08:47:49 mroman_.isthisanygood: points -27.19, score 4.27, rank 45/47 (--) 08:47:54 :) 08:47:58 this doesn't even attack 08:48:15 hm 08:48:41 !bfjoust isthisanygood (>[<+>-]<)*5000(>[(-)*9[+]])*-1 08:48:42 mroman_.isthisanygood: points -26.24, score 4.88, rank 45/47 (--) 08:48:51 10k cycles is max right? 08:49:06 !bfjoust isthisanygood (>[<+>-]<)*5(>[(-)*9[+]])*-1 08:49:06 mroman_.isthisanygood: points -22.95, score 6.29, rank 45/47 (--) 08:49:32 !bfjoust isthisanygood (>[<+>-]<) 08:49:33 mroman_.isthisanygood: points -29.86, score 3.34, rank 45/47 (--) 08:50:30 nice 08:51:37 -!- drdanmaku has quit (Quit: Connection closed for inactivity). 08:52:28 -!- zolbap has joined. 08:52:28 !bfjoust isthisanygood (>[<+>-]<)*1(+)*-1 08:52:30 mroman_.isthisanygood: points -11.38, score 9.45, rank 45/47 (--) 08:52:36 this should tie a lot 08:53:33 -!- L8D has quit (Ping timeout: 244 seconds). 08:57:14 -!- zolbap has left. 08:57:18 hehe 08:57:28 !bfjoust isthisanygood (>[<+>-]<[+[-]])*-1 08:57:29 mroman_.isthisanygood: points -25.02, score 2.24, rank 45/47 (--) 08:57:32 damn 08:59:42 -!- peyote99 has joined. 08:59:56 !bfjoust random_bot_out_of_nowhere ((>)*8(<(+)*10<(-)*12)*4)*4(>)*9(>[(-)*30[+]])*-1 08:59:56 Lymia.random_bot_out_of_nowhere: points 2.48, score 19.86, rank 21/47 09:00:29 !bfjoust isthisanygood (>[<+>-]<[+[-]+])*-1 09:00:31 mroman_.isthisanygood: points -27.83, score 2.05, rank 46/47 (--) 09:01:03 !bfjoust random_bot_out_of_nowhere < 09:01:03 Lymia.random_bot_out_of_nowhere: points -46.00, score 0.00, rank 47/47 (-26) 09:01:48 -!- ais523 has joined. 09:03:48 Lymia: Now. 09:03:55 Eh? :o 09:03:59 Hi ais523~ 09:05:47 hi 09:06:17 Lymia: re messages, that's an interesting idea 09:06:22 we should submit it as a joint program 09:06:30 I, uh. 09:06:31 I honestly couldn't believe that monolith's decoy setup worked 09:06:37 Have a #1 nyuroki by now though. 09:06:44 It uses a much simpler timer clear. 09:06:51 oh, even better 09:07:00 I can busily try to knock you off the #1 spot by myself, then 09:07:07 I like having competition 09:07:13 I've secured myself 6.31 points of lead. 09:07:20 did you use a flexible or inflexible clear? 09:07:28 meanwhile, I've been working on a new program that's unlikely to come #1 09:07:37 Flexible meaning it changes depending on cell position? 09:07:37 Nope. 09:07:57 inflexible ones do all cells on the same timer 09:08:06 Inflexible in that case. 09:08:16 It waits 500 ticks, then switches to [-.-+] 09:08:37 !bfjoust stealth < 09:08:37 ais523.stealth: points -45.00, score 0.00, rank 47/47 (-19) 09:08:47 !bfjoust stealth2 http://nethack4.org/esolangs/stealth2.bfjoust 09:08:49 ais523.stealth2: points 17.90, score 46.90, rank 2/47 09:09:00 OK, maybe I underestimated it 09:09:01 Unlikely to get #1? 09:09:12 I am in awe of you two 09:09:54 it beats the other five of the top six programs 09:09:59 which is probably why it scores so well 09:10:03 Huh, what are these "zemclear.fillerN" programs? 09:10:06 ... 09:10:13 Skip 5 decoys? 09:10:14 Geez. 09:10:22 the win against nyuroki is pretty marginal, thouh 09:10:28 Lymia: it skips five decoys, or to the first zero 09:10:42 With Nyuroki, that goes straight to flag. 09:10:43 lol 09:10:51 ais523: do you think it'd be possible to work out the resulting hill from running every possible program against each other? 09:10:55 fizzie, clearing off stuff from the stack overflow hill 09:11:03 Well. 09:11:09 :D 09:11:11 There's a limit to the number of possible programs, I'm pretty sure. 09:11:15 !bfjoust lazy (+.+.+.-.)*-1 09:11:16 Since at every tick you can only branch twice. 09:11:17 mroman_.lazy: points -15.64, score 6.99, rank 45/47 09:11:19 hehe 09:11:21 to two points* 09:11:27 yeah, traces are finite so programs are too 09:11:34 but the space is much too large to naively enumerate 09:11:35 the reasoning is: some programs use a reverse offset clear setup, so you can find a zero inside their setup and then go to their flag 09:11:36 lazy totally beats my athena 09:11:45 but otherwise it pretty much beats nothing :) 09:11:49 but it'd be interesting to see what's #1. 09:11:49 -!- peyote99 has quit (Quit: Leaving). 09:11:52 some programs trail during their setup, in which case they're very likely to leave at least six decoys nowadays 09:11:53 (I guess there'd be a lot of ties, maybe?) 09:12:03 ais523, innovation, hun... 09:12:05 and also how well that #1 did on an actual hill. 09:12:18 elliott_, the vast majority of programs won't rush. 09:12:31 elliott_: one thing I discovered is that there's a set of 768 programs, such that no program can beat all 768 of those programs on every tape length and polarity 09:12:34 So, I suspect that #1 will be a very fast clear. 09:12:44 But might, say, easily get locked. 09:12:50 well, if you're using markov scoring 09:12:51 I gues. 09:12:52 ais523: oerjan's "rush to where the flag is and clear it"? 09:12:52 guess* 09:12:59 It depends on what's the most common type of bot. 09:13:03 elliott_: yes, on tape length 10 09:13:08 plus shifting your own flag first if that doesn't work 09:13:10 you need 768 to allow for all possible defence programs 09:13:29 ais523: oh, oerjan's was a function (prog, tapelen, polarity) -> prog that beats it 09:13:46 ah right 09:13:51 23:44:10 basically you rush to the other flag, clearing it at maximal efficiency; this will work against any program which doesn't do the same to you. 09:13:54 23:45:08 if a program _does_ that to you, shift your own flag one step first to get at least one turn advantage. 09:13:57 23:46:06 (this only works because you know both tape length, polarity and the opponent's code, of course.) 09:14:17 elliott_: incidentally, I wrote a program to automatically search for a lock that would work against all the programs on the hill, with no [] involved 09:14:19 but it proved there wasn't one 09:14:41 i.e. you have to do some sort of synchronization or detection of the opponent if you want a universally correct lock, nowadays 09:15:37 Lymia: aha, nyuroki's using a reverse decoy setup, so stealth2 just rushes past all the decoys to the zero 09:15:50 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:15:51 Lymia.nyuroki: points 21.86, score 57.57, rank 1/47 (--) 09:15:56 許さない 09:16:00 now I don't get how nyuroki wins on sieve polarity sometimes 09:16:02 * ais523 looks 09:16:16 oh, the flag repair 09:16:31 happens at pretty much exactly the wrong time for stealth2 09:16:45 actually it loses a lot to programs that adjust their flags to beat turtles at inconvenient moments 09:17:07 Flag repair? 09:17:11 That's just an offset to kill turtles 09:18:54 -!- TodPunk has joined. 09:19:17 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:19:18 Lymia.nyuroki: points 21.19, score 55.64, rank 1/47 (--) 09:19:39 Lymia: I know, but it acts as a flag repair against stealth2 due to an unfortunate timing coincidence 09:19:48 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:19:49 Lymia.nyuroki: points 21.21, score 55.64, rank 1/47 (--) 09:19:53 ais523, ah 09:20:12 if only I could get stealth2 resistant to that thing happening, it'd do a lot better 09:21:37 I would find it amusing if there was a bug in the hill that would let you run essentially different code for different opponents/tape-lengths/polarities, and someone used that to submit an automatically tuned hill-beater. 09:22:06 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:22:07 Lymia.nyuroki: points 23.31, score 62.43, rank 1/47 (--) 09:22:07 (Also I still have no idea where that one race condition could come from, in the bot-code all references to the 'hill' object are inside a single synchronized block.) 09:22:38 fizzie, I want to write such a program 09:22:42 And I won't need different code. 09:22:52 Well, we'll see about that. 09:23:04 I need a rather esoteric component which is my problem. 09:23:15 Lymia: you just tweaked nyuroki to beat stealth2? 09:23:20 An interpter that A) Uses immutable data structures you can clone 09:23:22 ais523, yes. 09:23:27 B) Does one versus many 09:23:49 Lymia: haha :-) 09:24:05 that is beautifully blatant 09:24:09 Fun fact about the Markov scoring, as pointed out by quintopia: if you do write the perfect (in terms of rest of the hill) program, all other programs will get a flat 0 as a score. 09:25:17 !bfjoust funky [>(-)*23[>(+)*22[>(-)*21[>(+)*20[>(-)*19[>(+)*18[>(-)*17[>(+)*16[>(-)*15[>(+)*14[>(-)*13[[>(+)*12([(+)*7.[-]]>[(-)*7.[+]]>)*-1]]]]]]]]]]]]] 09:25:19 mroman_.funky: points -2.81, score 18.98, rank 24/47 09:26:46 !bfjoust funky [>(+)*25[>(-)*24[>(-)*23[>(+)*22[>(-)*21[>(+)*20[>(-)*19[>(+)*18[>(-)*17[>(+)*16[>(-)*15[>(+)*14[>(-)*13[[>(+)*12([(+)*7.[-]]>[(-)*7.[+]]>)*-1]]]]]]]]]]]]]]] 09:26:47 mroman_.funky: points -1.43, score 20.07, rank 20/47 (+4) 09:27:13 !bfjoust funky [>(+)*28[>(-)*26[>(+)*25[>(-)*24[>(-)*23[>(+)*22[>(-)*21[>(+)*20[>(-)*19[>(+)*18[>(-)*17[>(+)*16[>(-)*15[>(+)*14[>(-)*13[[>(+)*12([(+)*7.[-]]>[(-)*7.[+]]>)*-1]]]]]]]]]]]]]]]]] 09:27:14 mroman_.funky: points -4.07, score 17.87, rank 26/47 (-6) 09:27:15 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:27:16 Lymia.nyuroki: points 21.45, score 56.62, rank 1/47 (--) 09:27:18 !bfjoust funky [>(+)*25[>(-)*24[>(-)*23[>(+)*22[>(-)*21[>(+)*20[>(-)*19[>(+)*18[>(-)*17[>(+)*16[>(-)*15[>(+)*14[>(-)*13[[>(+)*12([(+)*7.[-]]>[(-)*7.[+]]>)*-1]]]]]]]]]]]]]]] 09:27:19 mroman_.funky: points -1.52, score 19.88, rank 21/47 (+5) 09:27:25 ais523, what's wrong with being blatant?? ;P 09:27:39 nothing 09:27:41 just, this means war :-) 09:27:56 ais523: As a mini-poll, what's your opinion on (elliott's suggestion of) zemhill printing those summary reports even on privmsg submissions, under the logic that people will then always know when the hill changes? 09:28:08 fizzie: I'm fine with that 09:28:23 That's two out of two for, zero against, so I guess I'll make it do that. 09:28:32 the git link would also be nice, so you don't have to check the website to see what the program is 09:28:38 or, well, you do, but it's easier to 09:28:40 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:28:41 Lymia.nyuroki: points 14.88, score 40.82, rank 2/47 (-1) 09:28:49 what's up with the StackOverflow submissions, btw? did we add them automatically? or did they add them? 09:29:08 Lymia did that, I guess to see how they would fare? 09:29:20 fair enough 09:29:49 Those 4 bots were the only ones out of 60something that stuck 09:29:54 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:29:55 Lymia.nyuroki: points 11.60, score 34.78, rank 6/47 (-4) 09:30:04 !bfjoust stealth2 http://nethack4.org/esolangs/stealth2.bj 09:30:04 ais523: URL fetch problems: 404 Not Found 09:30:08 !bfjoust stealth2 http://nethack4.org/esolangs/stealth2.bfjoust 09:30:08 ais523.stealth2: points 12.88, score 38.57, rank 5/47 (--) 09:30:19 it does a little worse, but at least it beats nyuroki now 09:30:29 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:30:30 Lymia.nyuroki: points 17.48, score 44.13, rank 1/47 (+6) 09:30:35 Doh, so easy to screw up your stack pointer 09:30:46 I was going to say "I wonder if I can get it to beat omnipotence" 09:30:48 but of course I can't 09:31:01 omnipotence is pretty high on the list of "programs ais523 has trouble beating" 09:31:12 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:31:13 Lymia.nyuroki: points 18.05, score 45.63, rank 1/47 (--) 09:31:48 huh, now it draws with preparation 09:32:12 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:32:12 Lymia.nyuroki: points 20.67, score 53.80, rank 1/47 (--) 09:32:25 Turn down the blatancy a bit. :P 09:33:38 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:33:39 Lymia.nyuroki: points 19.38, score 50.06, rank 1/47 (--) 09:34:01 elliott_: Maybe I can make a shortened git link; the gitweb URLs are a bit verbose, even when you manually abbreviate the commit hash. 09:35:04 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:35:05 Lymia.nyuroki: points 16.83, score 43.87, rank 1/47 (--) 09:35:12 Less blatant solution. :) 09:36:35 your score's down to just 43 09:36:40 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:36:41 Lymia.nyuroki: points 16.98, score 44.71, rank 1/47 (--) 09:37:16 hmm, if we're going down the serious war route 09:37:27 Either way. 09:37:31 I could always modify omnipotence to lose to stealth… 09:37:39 !bfjoust icare6 (>(-)*128.[(+)*9.[-]])*-1 09:37:41 Abusing reverse decoy setups is the most evil thing you've done. :( 09:37:41 mroman_.icare6: points -12.17, score 9.68, rank 46/47 09:37:55 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:37:56 Lymia.nyuroki: points 21.43, score 56.55, rank 1/47 (--) 09:39:00 ooh, stealth2 is up to 4th now 09:39:16 somehow I think changes to nyuroki have more impact on its ranking than changes to stealth2 do 09:39:41 how does the scoring work out if one program beats all but one other program, and that other program doesn't beat anything else? 09:39:50 !bfjoust icare6 >>>>>>>>(>(-)*128.[(+)*9.[-]])*-1 09:39:52 mroman_.icare6: points -18.14, score 6.68, rank 46/47 (--) 09:40:06 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:40:10 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:40:10 Lymia.nyuroki: points 3.86, score 23.54, rank 10/47 (--) 09:40:14 ouch 09:40:36 hu 09:40:36 what did you do? 09:40:42 wasn't nyuroki on place 1? 09:41:00 mroman_: it was, but Lymia's been changing it a lot 09:41:09 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:41:10 Lymia.nyuroki: points 21.79, score 57.04, rank 1/47 (+9) 09:41:16 Experiment with decoy layouts. 09:41:27 normally when I modify a program and it drops that low, it's because I accidentally changed the value of a tripwire without changing the code that checks it, or something like that 09:41:30 or unbalanced < with > 09:42:22 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:42:24 Lymia.nyuroki: points 22.05, score 57.78, rank 1/47 (--) 09:43:33 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:43:34 Lymia.nyuroki: points 16.24, score 41.75, rank 3/47 (-2) 09:44:30 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:44:36 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:44:36 Lymia.nyuroki: points 5.79, score 25.88, rank 7/47 (--) 09:45:06 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:45:07 Lymia.nyuroki: points 22.05, score 57.78, rank 1/47 (+6) 09:45:22 ais523: I can never really work through these in my head. The transition matrix is based on numbers of losses only -- of course wins are symmetric to lossses. Losing to a "worthless" program that uniformly loses against everything else should be (at least close to) equivalent to losing on a fraction of 1/N tapes/polarities -- less than one setting, that is -- to everything. 09:45:24 I concede. Abusing reverse clears is too clever. 09:45:25 ^.^ 09:45:44 What's a reverse clear? 09:45:48 fizzie: right 09:45:55 mroman_: I think Lymia meant reverse decoy setups 09:46:01 reverse decoy setup** 09:46:10 what's that? 09:46:11 :) 09:46:14 the whole stealth2/nyuroki thing is basically a stone-paper-scissors situation 09:46:27 it's easy to beat stealth2, but you end up typically losing to nyuroki if you do 09:46:36 mroman_: basically you set up the decoys nearer the opponent first 09:46:43 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:46:44 Lymia.nyuroki: points 3.81, score 23.77, rank 10/47 (-9) 09:46:47 to buy time to set up the more distant ones 09:47:45 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:47:47 Lymia.nyuroki: points 17.93, score 47.44, rank 1/47 (+9) 09:48:43 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:48:48 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:48:49 Lymia.nyuroki: points 16.86, score 44.37, rank 1/47 (--) 09:49:34 I was going to wait until it's a bit more officially stable, but since that thing is getting so much use (despite the bugs), perhaps I should add to the wiki's BF Joust page's "External resources" links. 09:50:01 I wonder what's punishing delaying on reverse clears so much 09:50:17 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 09:50:18 Lymia.nyuroki: points 21.79, score 57.04, rank 1/47 (--) 09:50:20 Fast pokse? 09:50:23 Fast pokes* 09:50:30 Lymia: delaying on the decoy setup, you mean? 09:50:40 yes, if you get poked before your decoys are set up, it is very very hard to win from there 09:51:02 setup setup 09:51:03 Yes. 09:51:03 almost the only exception I know is omnipotence, which specifically relies on that happening and then dedicates its entire strategy to winning in that situation 09:51:04 Setup. 09:51:28 it's quite hard to hold a technical conversation when some of the words are substituted with random other words 09:51:34 Now wtf is funky 09:51:37 It beats both nyuroki and stealth3 09:51:40 2* 09:51:52 this bash vulnerability is pretty serious 09:52:05 mroman_, it's hard to exploit though 09:52:18 `run env x='() { :;}; echo vulnerable > foo' bash -c "echo this is a test" 09:52:20 this is a test 09:52:23 `cat foo 09:52:23 vulnerable 09:53:12 `run rm foo # let's not leave toys around on the floor 09:53:12 Lymia: I'm not sure what happens if you embed it in a querystring for cgi programs 09:53:14 No output. 09:53:36 mroman_: wow that looks pretty bad 09:53:40 tar cvzf ../toys.tar.gz *; rm -rf * # Any toys at all 09:53:54 mroman_: From what I recall reading, Apache's CGI implementation isn't exploitable via the query string, but it is via some other CGI environment variables. 09:54:02 * Lymia already updated her server 09:54:03 you can embed a particular string into any arbitrary environment variable, and bash will run it? 09:54:10 ais523: yep 09:54:13 ais523, I think it only affects bash on startup 09:54:24 do CGI servers normally run programs via the shell? 09:54:34 but you have to launch a new bash shell I guess 09:54:50 ais523: system/popen is vulnerable too 09:54:55 because it spawns a shell. 09:55:28 mroman_: so CGI isn't globally vulnerable, but if the CGI program runs anything via a shell, it is? 09:56:28 it is vulnerably if you can control a environment variable and the webserver uses system/popen to spawn the cgi program 09:56:36 right 09:56:40 and since CGI exchanges data through environment variables 09:56:40 I wasn't sure how many webservers would 09:56:44 I think it could be really serious 09:56:55 I know about CGI and environment variables 09:57:01 hmm, what controls /which/ shell system() uses? 09:57:06 sh is not bash by default on Debian/Ubuntu 09:57:16 There's also OpenSSH's forced-command-for-a-key thing. 09:57:55 You can circumvent some related limitations implemented with that, since the original command is put into SSH_ORIGINAL_COMMAND. 09:58:43 Probably not as generally exploitable, since you'd need a public key with a set command. 10:00:22 now I'm suddenly very glad that NetHack 4's launcher executable deletes all environment variables without even inspecting them, and it's the first thing that runs 10:03:50 glibc manual says their system(3) is hardcoded to use whatever 'sh' corresponds to. 10:04:13 (Which would indeed be dash and not bash on Debian/Ubuntu by default.) 10:04:52 $ ls -l /proc/`echo $$`/exe 10:04:53 lrwxrwxrwx 1 ais523 ais523 0 Sep 25 11:04 /proc/24328/exe -> /bin/dash 10:04:59 OK, I'm actually very relieved now 10:05:08 that means that this bug is much less widespread than it could have been 10:06:28 I have a #! /bin/bash CGI script on zem.fi. :p 10:06:38 fizzie: might want to update it, then 10:06:43 the script or bash or both 10:06:46 Oh, it's got a new bash. 10:06:58 But the script doesn't have any excuse for being bash instead of sh, either. 10:10:54 well 10:11:02 you can hack debian servers with the HTTP_USER_AGENT 10:11:09 by supplying stuff like User-Agent: () { :;}; echo vulnerable > /tmp/foo 10:11:13 I just tested that. 10:11:17 on my server 10:11:20 so please don't hack it ;) 10:11:50 To a script explicitly starting bash, or just any general CGI program? 10:11:52 (also I've stopped apache on it anyway) 10:12:00 My Debian server is now patched. 10:12:01 ;P 10:12:06 Debian has patches out? 10:12:19 fizzie: It didn't work for haskell-cgi programs 10:12:21 Yes, at least for stable. 10:12:25 but it works for certain interpreters 10:12:30 I just did updates, Ubuntu was one of them 10:12:33 vivio@momoko:/home/lymia$ env x="() { :;}; echo vulnerable" bash -c "test" 10:12:33 bash: warning: x: ignoring function definition attempt 10:12:34 bash: error importing function definition for `x' 10:12:34 err, bash was 10:12:42 as well as for CGI programs written as shell scripts 10:12:42 There's no patch for testing yet 10:12:45 But I pulled one from sid 10:13:14 I have Debian 6.0 10:13:22 apt-get update && apt-get upgrade didn't install anything 10:13:24 mroman_: I don't think it should affect those if they're written as /bin/sh scripts and not /bin/bash ones. 10:13:36 it was a /bin/bash 10:13:37 apparently there's another, more complicated, way to exploit the same bug that the patch didn't get, though 10:13:37 :) 10:13:49 mroman_: Well, that's oldstable, I guess it lacks behind a bit. 10:13:51 but if it's a python/php script that launches via os.popen/system 10:13:58 you're screwed too ;) 10:14:28 mroman_, do you have security.debian on your sources list? 10:14:56 If not fix this immediately 10:15:01 aha, what happens is that if the function definition ends halfway through, on a trailing backslash 10:15:04 deb http://security.debian.org testing/updates main contrib non-free 10:15:26 the first token of the command given to bash is deleted 10:15:33 meaning that it tries to run the first command-line argument as a program 10:15:39 probably still exploitable, although a lot harder to exploit 10:17:54 Not reassuring 10:19:35 err, trailing > then backslash 10:19:49 mroman_: Debian 6.0 (squeeze) dropped out of regular support life on May 31, 2014, and apparently you need deb http://http.debian.net/debian/ squeeze-lts main contrib non-free in your sources.list for LTS patches. 10:20:08 Which is where the bash patch for squeeze is, according to https://tracker.debian.org/pkg/bash 10:20:23 Wait. 10:20:34 That server's on a specific release? 10:20:43 Though I'd kind of maybe suggest going 7 at some point. It's been out for over a year. 10:20:44 And not "stable" or "testing"? 10:20:50 People do that. 10:20:57 why 10:21:12 I don't know, stability? That's what the LTS support is for, after all. 10:21:49 Not that I know anything about the server in question, but it can't be just on "stable" if it's Debian 6.0. 10:22:24 At least. 10:22:45 I personally wouldn't use a stable (i.e. ancient and outdated) version of something for anything but mission critical systems 10:23:02 Like a BF Joust hill! 10:24:15 -!- boily has joined. 10:24:32 I should really work on developing the hill stomper. 10:24:36 I want the (1, 0, 0, 0, 0) 10:25:00 So, uh 10:25:07 If anyone would disagree with me attempting such a thing 10:25:10 Please raise your hand now. 10:25:10 ^.^ 10:25:44 go for it 10:26:42 !bfjoust aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + 10:26:44 Lymia.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: points -32.19, score 3.79, rank 47/47 10:26:48 !bfjoust aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa < 10:26:48 Lymia.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: points -46.00, score 0.00, rank 47/47 (--) 10:27:01 !bfjoust sorry < 10:27:02 Lymia.sorry: points -46.00, score 0.00, rank 47/47 10:27:04 !bfjoust sorry .< 10:27:04 Lymia.sorry: points -46.00, score 0.00, rank 47/47 (--) 10:27:13 Oh, I was going to add a length limit. 10:27:30 For the name, not the program. (The programs actually already have one.) 10:28:10 Can you wait until I get my program out? 10:28:11 <3 10:30:58 !bfjoust test!!! < 10:30:58 Lymia: Program name looks like gibberish. Did you forget it? 10:33:18 -!- zemhill has quit (Remote host closed the connection). 10:33:28 No, I'm going to be all boring. 10:33:41 -!- zemhill has joined. 10:33:41 But 10:33:45 Isn't "DIE_THE_DEATH__SENTENCE_TO_DEATH__GREAT_EQUALIZER_IS_THE_DEATH" a great program name? 10:34:45 !bfjoust DIE_THE_DEATH__SENTENCE_TO_DEATH__GREAT_EQUALIZER_IS_THE_DEATH < 10:34:45 Lymia: Program name is overly long. 48 characters should be enough for everyone. 10:35:10 !bfjoust Lymia-is-insane +>>>>>>>>>-(>[-..])*31 10:35:11 boily.Lymia-is-insane: points -28.10, score 4.59, rank 47/47 10:36:41 "48 characters should be enough for everyone." 10:37:09 Maybe that was a bit too strict. 10:37:44 48 is a perfectly sane limit :-) 10:38:07 !bfjoust I-may-be-insane-but-too-bad-i-win >+[]<...(+...)*-1 10:38:08 Lymia.I-may-be-insane-but-too-bad-i-win: points -31.17, score 3.62, rank 47/47 10:38:28 Lymia: that's the worst shudder algorithm ever :-) 10:38:35 ais523, shudder? :) 10:38:39 or, lock? 10:38:41 It's a lock targeted at boily.Lymia-is-insane! 10:38:42 or, well 10:38:43 what /is/ it trying to do 10:38:46 oh, I see 10:39:01 I was going to say, it only locks 4-cycle clears, and even then normally only on one polarity 10:39:09 and it doesn't even do anything once it has the lock 10:39:11 Oh, good point. 10:39:16 I forgot an instruction 10:39:22 That should be -..(+...)*-1 10:39:38 I'm not convinced that helps 10:40:17 how could one target my brain-hared programs is beyond my current cognitive capacity. 10:40:24 hmm, I'm not sure if I've had an idea that completely doesn't work in BF Joust for ages 10:40:33 most ideas, I just tweak them until they end up working 10:40:43 I should try a defense program sometime 10:40:48 or, well, the half-cycle probabilistic lock was probably a bad idea, but I tweaked it until it became margins 10:40:48 All 3 I have right now are some sort of rush 10:40:56 which might also be a bad idea, but an /awesome/ bad idea 10:41:23 !bfjoust finnel (>)*14([(+)*50([-])*2]+>)*-1 10:41:24 Lymia.finnel: points -27.19, score 4.66, rank 46/47 (-35) 10:41:33 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*14([(+)*50([-])*2]+>)*-1 10:41:34 Lymia.finnel: points 3.24, score 23.53, rank 11/47 (+35) 10:41:40 Lymia: good defense programs are very hard to write nowadays 10:41:41 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*2(>)*14([(+)*50([-])*2]+>)*-1 10:41:42 Lymia.finnel: points -3.05, score 18.00, rank 27/47 (-16) 10:41:45 !bfjoust finnel ((>)*8(<(-)*10<(+)*10)*4)*4(>)*14([(+)*50([-])*2]+>)*-1 10:41:46 Lymia.finnel: points 3.24, score 23.53, rank 11/47 (+16) 10:41:58 ais523, you think? 10:42:07 I spent most of 2013 finding new strategies that were impossible to defend against, and the rest finding ways to prove that I was wrong after all 10:42:33 actually I was worried that the invention of the timer clear would kill BF Joust forever, but luckily that didn't happen 10:42:36 I'm not sure how you'd lock Nyuroki's particular timer clear without targeting it in particular. 10:42:41 first I wrote anticipation, then preparation 10:42:49 how does nyuroki do against preparation? 10:43:03 Earlier versions fell off the tape. 10:43:15 I modified it to always check for stuff to be cleared two cycles 10:43:32 Roughly tied with preparation 10:43:33 right 10:43:57 if you want to see nyuroki being locked, check sieve 24 10:44:01 versus preparation 10:44:23 preparation's lock is probabilistic and tends not to do too well in that matchup (perhaps as a result of you constant-tweaking) 10:44:26 but it does hold sometimes 10:44:44 aaa long logs 10:44:54 that's what happens when a program's successfully locked 10:45:37 ah right, your final clear is very slow 10:45:46 which makes the odds of a probabilistic clear holding much lower, but not zero 10:46:00 Hun. So anticipation uses its clear to set up decoys 10:46:06 And then does a conventional rush? 10:46:25 My thought process was 10:46:30 Lymia: preparation, yes 10:46:35 "Uh, what's the next prime number after 3" 10:46:40 "OK, 5 it is" 10:46:40 this is because its lock doesn't have enough spare cycles to reach the other end of the tape 10:47:04 but the point of a probabilistic lock is that it can theoretically lock any integral clear cycle 10:47:10 and several rational ones too 10:47:13 but has to get lucky with the timing 10:47:58 Would there be a significant difference between [+.-+] and [+...] then? 10:48:14 The latter to the former (IIRC) gave a good bit of score 10:48:19 against a probabilistic lock, no 10:48:22 against a shudder, very yes 10:49:06 I'm not entirely clear what the theory behind probabilistic locks is, really. 10:49:36 basically, you have a 5-cycle clear, so every 1280 cycles, your clear is in the same state, right? 10:50:04 so in order to lock you, preparation needs to be changing the lock cell in the same direction as your clear whenever it happens to hit zero 10:50:24 it changes it in both directions, but when they're changing in the same direction, it changes faster 10:50:29 and when they're changing in opposite directions, it changes slower 10:50:35 -!- L8D has joined. 10:50:42 so probabilistically, the zero is more likely to happen when the bots are going in the same direction 10:51:39 the problem is, if you're doing something as slow as a 5-cycle clear 10:51:50 that effect isn't very pronounced, so the odds of the lock holding are kind-of low 10:52:21 Hrm, and, how does that interact with [-.-+]? 10:52:36 The tick before the clear is checked, it's going in the opposite direction as the lock 10:53:33 what matters is the overall change, not the specific tick 10:53:39 because you're not checking the value during the +- 10:53:43 and I'm not checking the value during the +- 10:53:48 you may as well have done .. 10:53:53 because nobody observes the change 10:54:20 I see. 10:54:50 only difference is if you're on a flag 10:54:54 -!- L8D has quit (Ping timeout: 246 seconds). 10:54:58 So, the point is that during the probabstic lock, the points that would fall to 0 during it are scattered, so to speak, right? 10:55:00 where +- is much better because it has a better chance of zeroing it against a shudder/vibrator 10:55:05 Lymia: yes 10:55:08 So there's a chance it'll miss th e0. 10:55:09 I see. 10:55:10 the* 10:55:26 And this actually punishes stuff that checks for clears on two cycles pretty bad. 10:55:37 also, even if it hits the 0, there's a good chance that… yes 10:56:10 this isn't rock-paper-scissors, but what I think of as the physical/special thing (from Pokémon) 10:56:27 physical attacker < physical defender < special attacker < special defender < physical attacker 10:56:36 you can defend against programs that don't check for two cycles, or against programs that do 10:56:46 or be greedy like margins, and try to do both, but that's less reliable 10:56:49 nyuroki checks for two cycles on the top level. 10:56:54 ([main clear])*2 10:57:00 and you have to do it on different cells 10:57:02 But none of the clears inside check for 2 cycles 10:57:09 Ah, I see Pokémon follows the well-known PHP relational operator there. 10:57:53 (Pokemon is fun because those categories aren't mutually exclusive. ;D) 10:58:08 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 10:58:10 Lymia.nyuroki: points 22.43, score 57.99, rank 1/47 (--) 10:58:15 -!- AnotherTest has joined. 10:58:40 Lymia: it'd be fun even if they were, but this way, it's /more/ fun 10:59:24 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 10:59:25 Lymia.nyuroki: points 21.57, score 55.80, rank 1/47 (--) 10:59:32 "123" < "456A", "456A" < "78" and "78" < "123", if you hadn't heard. 11:00:05 Begone, correctness problem! 11:00:09 !bfjoust nyuroki http://lymia.moe/~lymia/nyuroki.bf 11:00:10 Lymia.nyuroki: points 22.43, score 57.99, rank 1/47 (--) 11:00:16 fizzie: the first two are string comparisons, the last is numerical? 11:00:32 ais523: Something like that, yes. 11:00:43 ais523, I wonder how dangerous it'd be to make my inner loop a timer clear too 11:00:45 After 1000 cycles 11:00:46 > 11:00:57 "I give up" 11:01:14 fungot: do you even cycle? 11:01:14 boily: open letter box till wat time? daddy ask want go other group or. haha.cannot rem. at the repair and upgrade... or u orefer msn. btw how to go downfron bugis. u lookfor place 11:01:19 Lymia: many of the programs that are trying to lock you have code to detect that sort of situation 11:01:30 ^style 11:01:30 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots pa qwantz sms* speeches ss wp youtube 11:01:45 oh, that explains why fungot's even less intelligible than normal 11:01:45 ais523: want to eat chicken. buy 2,4,8,, grams of imported gold) has to leave not long ago sia.bo bao got leh 11:01:58 ^style youtube 11:01:58 Selected style: youtube (Some YouTube comments) 11:02:04 fungot, live! 11:02:04 Lymia: 1.) 11:02:10 fungot, l.... are you OK? 11:02:10 Lymia: simonnot right! i would've expected some kind... crew of 6 and 130 passengers. no one would have repressed this flight. i think is just trying to be sexy lol like hearing a dog miaawing hehehehehehe 11:04:43 ais523, how do they try to detect it? 11:04:44 Tripwires? 11:04:54 yes, tripwires 11:05:00 you'll see preparation doing a lot of tripwire checks 11:05:15 the alternative method is checking to see if the lock cell is 0 when it shouldn't be; that's less reliable but still kind-of works sometimes 11:05:21 I tried it with margins, but the tripwire method worked better 11:05:34 So. 11:05:53 After, say, 1500 ticks, switch to a clear loop that avoids tripwires, maybe? 11:06:03 Say, restores tripwires up from -3 to 3. 11:06:08 have you seen what a clear loop that avoids tripwires looks like :-) 11:06:12 there's one of those in stealth2 11:06:14 it's a mess 11:06:22 it has difficulty clearing cells of value /zero/ 11:06:28 I mean, it manages it eventually, most of the time 11:06:32 Ouch. 11:06:46 oh... 11:06:54 Innovation time? :) 11:07:14 basically how long it takes to clear a cell, and whether the value is restored afterwards, depends on the value of that cell, and the value of the preceding cell 11:07:23 and there's a whole bunch of innovation to make it possible at all 11:08:01 e.g. there's some "polyglot" programming where some of the loops are used for two different purposes in order to avoid having to break out of the loop 11:08:14 [+[--[++++[----[...]++++]---->]++>]->] maybe 11:08:26 Not sure that'd work though. 11:08:51 If you're willing to do it dirty and only care about 1-3 tripwires? 11:09:09 could we just add labels and an if-goto-else-goto statement to the bfjoust language to make the programs shorter? 11:09:17 or would that be too powerful? 11:09:32 Lymia: that doesn't work, although it's very similar to the loop I came up with 11:09:34 [+[--[]++ rest of code]- rest of code] rest of code 11:09:37 the problem is, after the > 11:09:42 :) 11:09:55 Supports 3^n tripwires 11:09:56 you've now lost track of the current value of the cell, because you don't know how much it was adjusted by 11:10:25 Or well. 11:10:28 O(3^n) 11:10:34 Cost for n tripwires. 11:10:37 ! 3^5 11:10:41 > 3^5 11:10:43 243 11:10:46 I can accept this 11:11:15 I have a sort-of moratorium on exponential strategies 11:11:25 basically because if you're willing to go exponential, there's never any reason to execute an ] ever 11:11:39 however, the byte limit on programs works pretty well at preventing them 11:12:22 ! 3^7 11:12:30 > 3^7 11:12:32 2187 11:12:38 I can easily go under 100KB or so 11:12:41 ais523: yes, that's why I'm suggesting there should be an if-goto-else-goto statement 11:12:48 And support 7 tripwires 11:12:55 of course, [] should still be allowed for compatibility 11:12:56 b_jonas: but that lets you write arbitrary programs 11:13:02 so it's not BF any more 11:13:14 ais523, it's not BF, no. 11:13:20 more to the point, it defeats the fundamental assumption that makes defense programs work 11:13:23 I don't have formal proof, but. 11:13:34 which is that there are at least some restrictions on what sort of clear loops the opponent might be losing 11:13:38 I'm almost certain that any program that can be written that way 11:13:52 Can also be represented with a sufficiently long .bf program 11:13:58 Lymia: yes 11:14:15 you replace if then x else y fi z with [xz]yz 11:14:25 but the duplication of z makes it blow up exponentially 11:15:04 exactly 11:15:32 make it arbitrary haskell programs whose only interaction with the environment is zero tests and the five statements < > + - . 11:15:48 so they can do any complicated deterministic computation inside 11:15:58 it's just the interaction that takes up steps 11:16:20 b_jonas: I don't think that would be as good a game 11:16:21 obviously for practical reasons we'll need some limit on the code size, memory and cpu usage, so that tournaments can be finished 11:16:26 yeah, probably 11:16:37 like, I just make the inner loop of a timer clear a PRNG 11:16:45 how are you going to lock /that/? 11:18:04 [lymia@aurica ~/data/programming/JoustExt]$ ls -alh tripclear.bf 11:18:04 -rw-r--r-- 1 lymia lymia 131K Sep 25 06:17 tripclear.bf 11:18:18 Supports up to 6 tripwires, range -2 to 2 11:19:35 whereas stealth2 can do it in just a few lines, and it normally works, except for some bad combinations of values 11:19:47 For the record, there's a two-megabyte current size limit in the bot. 11:19:50 and 131K is /already/ too large, and many programs have more than 6 tripwires 11:20:06 huh, 2MB might be enough for the full version of anticipation2 11:20:08 Why settle for an inferior subsitute when I can just waste 1/20 the size limit 11:21:16 err, anticipation1, I guess 11:21:44 If you do megabyte-sized programs, I'd kindly request to do constant optimization locally and only submit a couple, because the VPS is not made out of bytes. 11:22:05 !bfjoust tripclear http://lymia.moe/~lymia/tripclear.bf 11:22:07 Lymia.tripclear: points -15.88, score 9.20, rank 46/47 11:22:59 fizzie: apparently anticipation1 does terribly on the current hill even if I remove the hacks I needed to fit it within the size limit 11:23:06 so there's not much point in submitting 11:23:15 I'm glad knowing that the hacks are no longer necessary 11:23:27 (basically, I used an automated system to delete codepaths from it that weren't used against any of the programs on the hill) 11:25:07 * boily opens lymia.moe in his browser. “it's... it's pink. it's definitely pink.” 11:25:18 Because I like pink. 11:25:40 oh, a problem I have at work, anyone have advice? basically I have a graph, described as nodes and edges (except a lot more complicated), there are multiple types of node (although the types can be viewed as opaque for this purpose) 11:25:49 I want to pattern-match on the graph, with replacements, sort-of like eodermdrome 11:25:58 Lymia: and I like your github avatar ^^ 11:26:04 this would be really easy to write in Prolog, but I'm not sure how to write it in OCaml 11:27:01 -!- boily has quit (Quit: SPACED CHICKEN). 11:27:18 Still no patches for 6.0.10? 11:29:19 !bfjoust tripclear http://lymia.moe/~lymia/tripclear.bf 11:29:21 Lymia.tripclear: points -8.55, score 12.98, rank 45/47 (+1) 11:29:37 Yay for proofs of concept that are useless~ 11:31:17 mroman_: https://wiki.debian.org/LTS/Using 11:31:37 Lymia: did you skip six decoys first then use a reverse offset clear? :P 11:31:43 < ais523> apparently there's another, more complicated, way to exploit the same bug that the patch didn't get, though – Trying that one only provokes syntax errors for me, on an unpatched bash. 11:32:03 that's a nice shade of pink 11:32:06 Melvar: check to make sure it didn't have side effects 11:32:06 maybe you need lymia.pink too? 11:32:18 the problem is, the syntax error happens 11:32:22 and then the parser state isn't reset or something 11:32:37 so some of the text from the env var effectively gets prepended to the command it's running 11:33:19 Strange 11:33:29 I worked hard to get my website to load in under a second... with dialup 11:33:35 And now with BF Joust I'm going crazy with exponential growth. 11:33:36 ^.^ 11:34:04 Aha. 11:34:54 !bfjoust tripclear http://lymia.moe/~lymia/tripclear.bf 11:34:56 Lymia.tripclear: points -5.36, score 14.56, rank 42/47 (+3) 11:35:00 No more of this program. ^.6 11:35:01 ^.^ 11:35:09 Lymia: do you... have dialup? 11:35:13 So it deliberately provokes a parse error so obscure nobody ever tested it, then exploits the buggy results. 11:35:16 elliott_, no 11:35:29 If I did, why would I be throwing out multi-hundred-KB programs 11:35:57 you could be generating them on the server :p 11:36:22 Melvar: yes, and presumably it was only found because people were looking at the relevant code because of the other bug 11:37:03 This is why you use parser generators 11:37:06 Of course, bash doesn’t and can’t have a real parser. 11:37:07 And not hand-coded parsers 11:37:20 Lymia: the bug looks like it's in the handling of a parse error 11:37:27 as opposed to the parse error itself 11:38:20 Anyway 11:38:25 Firing up IntelliJ~ 11:40:34 ais523: I wonder how it actually happens, since you can’t leave arbitrary things in there, just a ‘>’ apparently. 11:40:58 a leading > is enough to utterly screw up the command you're trying to run, but hmm 11:41:04 what about that seems like the most similarly-parsing character 11:41:43 (I'm 6.0.10 btw) 11:41:48 ...why do we expose bash to the network again? 11:42:05 elliott_: you expose programs that do system() calls to the network 11:42:12 ais523: The file “echo” doesn’t exist :) 11:42:17 ais523: yes, why do we do that? <_< 11:42:29 also, system() is safe as long as sh isn't bash, I think 11:42:34 so, e.g. debian should be fine? 11:42:43 Melvar: it would exist if it was given as an absolute path 11:42:50 elliott_: yes, that was my reaction too 11:42:55 "lucky sh isn't bash on my system" 11:43:04 ais523: doesn't mean nothing invokes bash directly, though 11:43:30 indeed 11:43:49 system() isn't really the most robust of functions anyway though... 11:43:53 ais523: Of course, if it does exist, the tail of the command line runs (and if it ignores its input, without errors) 11:43:57 * Lymia sigh 11:44:00 at least, my decision to only use very small statically compiled binaries for the permission-sensitive bits of nethack4.org is vindicated 11:44:05 Now for something nasty. :( 11:44:16 my sh is dash 11:44:21 Writing a BF Joust interpreter 11:44:25 and it uses execle for the actual running of the next process along 11:44:27 That I can use for my ~special~ project 11:44:29 ais523: go further and compile it all into a kernel a la http://openmirage.org 11:44:30 also it completely resets the environment 11:44:37 Lymia: you could use/modify someone else's? 11:44:49 ais523, I have very special requirements 11:44:59 Which make that pretty impractiacl 11:45:01 impractical* 11:45:17 For one, the data structure must be immutable. 11:45:21 So I can branch off states 11:45:46 And I need single-stepping 11:46:14 * Melvar has set up a filter for bfjoust for the purpose of backscroll-reading. 11:46:31 How dare you.... 11:46:43 Lymia: are you sure copying a mutable state wouldn't be quicker/simpler? 11:46:44 It's tradition to read and analyze bfjoust spam 11:46:51 Lymia: a BF joust tape and two tape pointers can fit in a single AVX register :p 11:47:12 elliott_: Really? 11:47:26 elliott_: do you have an interp that exploits this? 11:47:31 ais523: no, but I should 11:47:40 elliott_, I also intend to reverse the state 11:47:47 Melvar: yes, 30 bytes + two integers in range [0,30) 11:47:48 And look ahead 100 cycles to see if something works 11:47:57 This is a search program. 11:48:04 -!- GeekDude has joined. 11:48:04 Working out when I need to copy would be a nightmare 11:48:29 Melvar: so 240 + just under 5 bits + just under 5 bits = just under 250 bits, you have over 6 bits spare! 11:48:57 unfortunately you'll need 32-bit integers for the IPs 11:49:35 Lymia: clearly reverse the tape with an AVX shuffle! 11:49:41 I'm going to write BFJoust JIT . 11:49:42 (unfortunately they only go down to shuffling 32-bit units, I think) 11:49:51 AVX2, that is 11:50:04 or, uh, no, AVX 1 has the shuffles too? I don't know, x86 is a mess 11:50:49 fizzie: what's the program length limit, anyway? 11:50:55 I'm going to write BFJoust JIT . ← do it 11:51:16 It's gonna be a pain to keep track of the flag reaching 0 for two cycles though 11:51:19 fizzie wrote a BF Joust JIT thing, I think? 11:51:20 I guess 11:51:24 the problem is cycle sync makes it slow 11:51:27 you'd have to check that after every instruction 11:52:02 compile both programs into one 11:52:07 cycle sync? 11:52:09 actually, hmm, no 11:52:12 yeah, that's a mess 11:52:14 I would have just interleaved the programs into a single one 11:52:20 ( Bits8x16 11:52:20 Bits8x16 : Type 11:52:25 somehow 11:52:30 although that's probably tricky for loops 11:52:33 :D 11:53:01 but not impossible 11:53:19 Melvar: now I'm scared that that type exists 11:54:03 It’s for SSE. I think it was introduced when the LLVM backend was. 11:54:20 No Bits8x32 though. No AVX. 11:55:59 ais523: What scares you about it? 11:56:19 Melvar: basically seeing something so relentlessly low-level in such a high-level language 11:56:21 I think you can do it in two SIMD registers: one 256-bit one (5-bit tape length + 5-bit tape pointer * 2 + up to 240-bit tape + 1-bit polarity) and one 128-bit one (24-bit program counter * 2 + 32-bit program identifier * 2, 16 bits spare) 11:56:51 whether you can use SIMD for anything useful is another question, but two-register (+ 32-bit identifier -> program storage mapping) BF Joust is pretty cool 11:57:01 oh wow... now I want to make a BF Joust FPGA 11:57:11 just think how much brute forcing you could do... 11:57:21 We'd finally be able to run the 10000*10000 hill :) 11:57:30 ( :doc Bits8x16 11:57:30 Primitive type Bits8x16 : Type 11:57:30 Vectors of sixteen eight-bit values 11:57:49 I wonder if it'd actually be faster than, like, a hand-optimised assembly implementation on conventional hardware 11:57:57 you could certainly do it with much lower storage requirements without sacrificing efficiency, I guess 11:58:07 !bfjoust catchmeifucan (-)*127(-+)*-1 11:58:09 mroman_.catchmeifucan: points -14.50, score 9.58, rank 47/47 11:58:10 since using SIMD registers for BF Joust would probably be hell on x86 11:58:11 elliott_: now you've got me thinking about what it'd look like in Verity 11:58:14 and what the resulting hardware would look like 11:58:20 ais523: do it!! 11:58:24 !bfjoust catchmeifucan (-)*127(-+.)*-1 11:58:24 I wonder if I can justify this as being connected with my job 11:58:26 mroman_.catchmeifucan: points -4.71, score 15.69, rank 33/47 (+14) 11:58:43 wtf 11:58:46 I guess the savings from using registers might be hurt by having to deal with the huge programs, though 11:58:47 mroman_: huh, that's an interesting variant on vibration 11:59:02 probably it works because many programs fall through to three-cycle clears if they detect a vibration program 11:59:03 some days ago a program with score 18 wouldn't get on the hell 11:59:08 but now with 15.69 you can? 11:59:12 *hill 11:59:24 mroman_: this is what happens if you score based on eigenvalues 11:59:30 the actual score /numbers/ are rather volatile 11:59:52 !bfjoust wait (->+<-)*-1 11:59:56 mroman_.wait: points -6.81, score 12.64, rank 47/47 12:00:03 ah. ok. it only gets 12.64 now 12:00:32 !bfjoust catchmeifucan (-)*127(-+.)*5000([(+)9[-].]>)*-1 12:00:33 mroman_.catchmeifucan: points -11.10, score 12.19, rank 47/47 (-7) 12:00:38 !bfjoust catchmeifucan (-)*127(-+.)*-1 12:00:39 mroman_.catchmeifucan: points -5.71, score 15.10, rank 40/47 (+7) 12:00:54 now it's suddenly 7 ranks worse? 12:00:55 wtf 12:00:58 !bfjoust catchmeifucan (-)*127(-+.)*-1 12:00:59 mroman_.catchmeifucan: points -5.71, score 15.10, rank 40/47 (--) 12:01:37 !bfjoust catchmeifucan (-)*127(-+)*-1 12:01:39 mroman_.catchmeifucan: points -14.55, score 9.48, rank 47/47 (-7) 12:01:40 mroman_: maybe it pushed something that it beats off the hill? 12:01:42 !bfjoust catchmeifucan (-)*127(-+.)*-1 12:01:43 mroman_.catchmeifucan: points -5.71, score 15.10, rank 40/47 (+7) 12:01:48 hm 12:01:51 maybe 12:02:44 During the last 20 years, the information density of storage media and thus the bandwidth of an avian carrier has increased 3 times faster than the bandwidth of the Internet. 12:03:11 three 128-bit registers might be best: [120-bit half-tape, 8-bit spares] [120-bit half-tape, 8-bit spares] [5-bit tape length, 1-bit polarity, [32-bit program identifier, 24-bit program counter, 5-bit tape pointer] * 2] 12:03:16 !bfjoust catchmeifucan (-)*127(-.+)*-1 12:03:17 mroman_.catchmeifucan: points -34.00, score 2.76, rank 47/47 (-7) 12:03:20 !bfjoust catchmeifucan (-)*127(-.+.)*-1 12:03:21 mroman_.catchmeifucan: points -32.43, score 2.80, rank 47/47 (--) 12:03:22 you can use the spares for, um, something 12:03:23 ais523: Just in case it wasn’t clear, this is the sort of thing Idris is trying to get good at. You get to use dependent types, and also write system utilities and hopefully drivers, is the idea. 12:03:28 !bfjoust catchmeifucan (-)*127(-++-.)*-1 12:03:29 mroman_.catchmeifucan: points -15.19, score 9.38, rank 47/47 (--) 12:03:32 !bfjoust catchmeifucan (-)*127(-++-)*-1 12:03:34 mroman_.catchmeifucan: points -15.71, score 8.88, rank 47/47 (--) 12:03:38 !bfjoust catchmeifucan (-)*127(-+.)*-1 12:03:39 mroman_.catchmeifucan: points -5.71, score 15.10, rank 40/47 (+7) 12:03:40 Melvar: right, it still worries me though 12:03:43 storing whether one of the flags are free, or something 12:03:48 Melvar: isn't idris GC'd? 12:03:55 if Rust becomes successful, that'll help 12:04:19 elliott_: this FPGA jouster, should it store the programs in RAM or hardcoded? 12:04:56 !bfjoust catchmeifucan (-)*127[-+] 12:04:57 ais523: I'm not sure... if you just wanted to run a huge hill it should just use ROM or something, I guess? 12:04:57 mroman_.catchmeifucan: points -18.69, score 7.95, rank 47/47 (-7) 12:04:59 !bfjoust catchmeifucan (-)*127[-+.] 12:05:01 mroman_.catchmeifucan: points -11.45, score 10.46, rank 47/47 (--) 12:05:10 ais523: but it'd probably be most interesting to use it to try and create new programs 12:05:13 !bfjoust catchmeifucan (-)*127([-+.])*-1 12:05:15 mroman_.catchmeifucan: points -9.43, score 12.28, rank 47/47 (--) 12:05:19 k 12:05:20 elliott_: FPGAs don't actually have a lot of ROM 12:05:41 elliott_: Generally yes. If you’re writing a hardware-timed / hard-realtime thing, you don’t get to use it there. 12:05:45 !bfjoust catchmeifucan (-)*127([-+[-+]-])*-1 12:05:46 mroman_.catchmeifucan: points -15.50, score 9.07, rank 47/47 (--) 12:05:47 Melvar: ...like drivers 12:05:50 you normally just use pre-initialized RAM 12:06:07 ais523: it'll probably want to use a compact program representation and load chunks of the program into something faster than RAM, I guess? 12:06:27 elliott_: you're possibly misunderstanding FPGAs here 12:06:32 all storage is RAM, but you have various speeds of it 12:06:34 very likely :/ 12:06:40 well, right 12:06:42 the fastest is a 1-bit RAM that's just directly in the middle of one of your wires 12:07:27 you can build arbitrary storage devices out of that, but they tend to be inefficient in terms of space on the chip (crazy fast, though) 12:07:31 !bfjoust catchmeifucan (-)*127([-+[-+]+-])*-1 12:07:33 mroman_.catchmeifucan: points -14.36, score 9.94, rank 47/47 (--) 12:07:49 ais523: I'm wondering how much mileage you could get out of hand-coded x86 SIMD BF Joust 12:07:52 then you get block RAM which is pretty much as fast, and works for nearby parts of the chip 12:07:53 Lymia: People do minmax search with mutable state, you just undo the changes when backing up. 12:07:58 probably not really much as RAM isn't the limiting factor anyway 12:08:12 and then below that, an external RAM chip, but that's basically like RAM in a computer rather than L1 cache in a computer 12:08:22 but it seems like you should be able to do /something/ cool with storing all the non-program state in three registers 12:08:25 oh! 12:08:31 perhaps the way to think about FPGAs is that you can make little L1 caches anywhere you like 12:08:32 you just have to precompile the programs 12:08:40 and have them operate on the three registers directly 12:08:50 that's probably about as good as you can get 12:08:58 although I guess the precompiled forms would actually likely be bigger than the originals... 12:09:10 The handwritten ASM versions I've done are not SIMD, but I am slightly suspicious about whether it would help any. 12:09:11 elliott_: I said trying to get good; there are some efforts at GC avoidance. If it’s possible, drivers are a longest-term goal at most. 12:09:59 Melvar: possibly best to see what people do with Rust first :-) 12:10:08 fizzie: theoretically if you precompile them, then it could be running code with no memory accesses (except, y'know, the program). optomized! 12:10:24 Melvar: yeah... I think you'd really want a language designed from the ground-up to handle memory without GC for drivers and stuff. 12:11:18 -!- ais523 has quit. 12:12:22 -!- yiyus_ has quit (Ping timeout: 245 seconds). 12:13:53 I know, but I don't think it's very optomized to index a SIMD register by a non-constant byte. If you only had one tape pointer, you might get by with some sort of a shuffle/rotation thing (even that's quite awkward with AVX instruction set, I think), but there's two. 12:14:40 fizzie: I was thinking maybe use SIMD registers as tape pointers. 12:15:01 fizzie: just shift around a single "1" aligned with the tape registers for <>, and add/sub for +- 12:15:14 elliott_: *nodnod* I probably just shouldn’t have gone so far as to mention drivers. 12:15:16 bitwise and to check for loops 12:15:50 of course it's more complicated with the 128-bit registers you'd probably have to use. 12:16:14 -!- yiyus has joined. 12:16:51 Yeah, I don't think you can even shift a full 256-bit value. 12:17:04 it can do shuffles on 32-bit units, I think? 12:17:10 so you could use that to shuffle the 1. 12:17:54 but I don't think it could do the arithmetic you'd want 12:19:58 I don't think L1 is that expensive to justify this act of desperation 12:20:23 Have you looked at the event counters? 12:21:45 wrenchlance's register usage is documented in https://github.com/fis/chainlance/blob/master/wrenchlance-ops.s if you're curious. It constructs the left program (the one that has to jump into the right program's control flow) out of my handwritten blocks into raw binary x86-64 code, and the right program into some assembly code that's compiled and linked with a stub program so that it doesn't ... 12:21:51 ... need to do a register-based jump at the end of the cycle. 12:22:07 But I just did that for fun, not as a serious benchmarking-based optimization thing. 12:22:17 Might be interesting to do a bit of perf on it, actually. 12:22:25 Or on gearlance. But not now. 12:25:01 I do wonder how loose you could make the sync between the two programs. 12:34:48 -!- Guest51277 has changed nick to paul2520. 12:35:05 -!- paul2520 has quit (Changing host). 12:35:05 -!- paul2520 has joined. 12:41:02 !bfjoust offclear (>(+)*14>(-)*10)*5([(+)*9[-]]>)*-1 12:41:03 mroman_.offclear: points -12.81, score 11.64, rank 47/47 12:41:12 okkk 12:41:38 -!- Patashu has quit (Quit: Soundcloud (Famitracker Chiptunes): http://www.soundcloud.com/patashu MSN: Patashu@hotmail.com , AIM: Patashu0 , YIM: patashu2 , Skype: patashu0 .). 12:50:50 [wiki] [[Special:Log/newusers]] create * HarrisPmjiho * New user account 12:51:01 -!- L8D has joined. 12:51:05 [wiki] [[Some Thoughts On Establishing Major Details Of Indian Herbal Tea]] N http://esolangs.org/w/index.php?oldid=40532 * HarrisPmjiho * (+366) Created page with "Everything after that every activity requires a bit of The Huffington Post, Visalus is one of a friend or even troubled teens If you adored this information and you would cert..." 12:54:04 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 12:54:22 -!- GeekDude has joined. 12:55:23 -!- L8D has quit (Ping timeout: 240 seconds). 12:56:47 -!- ais523 has joined. 12:57:42 I think I like this connection 12:57:49 it is probably not 100% reliable 12:57:55 but it's the best one I've used in the past several months 12:59:39 you should get a grant for buying a decent internet connection. 13:00:25 that would mean I never got any work done 13:04:33 btw, I love these spam page titles 13:05:19 -!- L8D has joined. 13:05:52 elliott_: are the spambots beating the filter again? 13:05:56 I'm worried they've learned how to newline 13:06:06 in which case we're going to need a new strategy 13:06:27 -!- FreeFull has quit (Quit: Bbl). 13:06:43 oh, they're two different spambots 13:06:50 We should just make esolangs with those names 13:07:00 the one oerjan deleted was a oneliner naturally, so the spam filter couldn't determine that the lack of newlines was intentional 13:07:24 the one I deleted, the spambot prepended a newline to it and then did its normal nonsense 13:07:58 Jafet: http://esolangs.org/wiki/Befunge/index.php 13:09:42 I think there may have been another one, but I couldn't find it 13:10:00 I know there was one spam name so good we reserved it for an esolang 13:10:23 oh, http://esolangs.org/wiki/Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php 13:12:12 aha: http://esolangs.org/wiki/Twisted_Python_Chat_Server 13:12:24 This page was spam, but the name is unintentionally brilliant and the page content looked kind-of like an esolang. So it's being kept around until someone can edit it into an actual language. -- User:ais523 13:12:53 hehe 13:13:40 but "Twisted" is not an actual esolang, it's just a randomized appearance that could be assigned to any esolang in this particular game, right? 13:13:55 Twisted Python Chat Server has to be the complete name of the esolang 13:14:01 feel free to design any esolang where that description could fit 13:14:54 Twisted is a Python networking library, y'know 13:15:03 -!- dianne has joined. 13:15:05 descriptions have to _fit_ the esolangs? I couldn't determine much correlation between the name and the esolang so far 13:15:33 fungot: what do you think Twisted Python Chat Server iz lied? 13:15:33 b_jonas: cheese and wine... lol... you cant tell me, pleeeeeease. 13:16:12 Twisted is a Python networking library, y'know ← I do know, but it's funnier if you design the language so as to ignore that connection 13:16:26 ais523: presumably it should be about snakes too, then 13:17:00 elliott_: definitely 13:17:03 I was thinking that as well 13:18:05 anyone who likes looking at spam page titles, btw, they're listed at http://esolangs.org/wiki/Special:Log/delete 13:18:29 Doesn't beat RFNHS3:SDD though 13:18:46 Jafet: that was a spam title? 13:18:59 abbreviating it is no fun 13:19:10 although the credit has to go to whoever named the original film, I guess 13:19:17 It's too absurd to even be a spam title 13:20:06 hm 13:20:23 elliott_: usually esolang names are one or two words 13:20:31 Hmm, Nora's Hair Salon II had no subtitle. 13:20:34 so titles with many words are probably more spam prone 13:20:42 s/elliott_/ais523 13:21:04 23:34, 27 March 2013 Ehird (Talk | contribs | block) deleted page 4-5 Benefits Of Using Bathroom Ventilation Freakouts 13:21:12 spam titles can be pretty weird 13:21:15 also can you create a User page for a user that has no account? 13:21:21 mroman_: yes, but you're not supposed to 13:21:30 that should be deactivated 13:21:33 doing that on Wikipedia will get it deleted and you shouted at 13:21:33 Yes, but they'll follow english statistical patterns 13:21:39 that would prevent the User:Kymuigcn spams etc 13:21:45 mroman_: those mostly are real users 13:21:48 oh 13:21:49 ok 13:21:50 ais523: wow, that's an amazing title I forgot about it 13:21:51 who are also spambots 13:21:58 elliott_: so did I 13:22:01 good thing I'm reading the log 13:22:04 well 13:22:08 ok then :) 13:22:13 mroman_: in fact, the #1 most likely page for a spambot to spam is its own user page 13:22:25 to the extent that if your first edit is to your own userpage, you're including links and you don't know how to newline 13:22:34 you automatically get blocked, or should do but it seems to be misconfigured 13:22:38 (it just prevents the page being edited instead) 13:22:52 manual "new user" confirmation is probably strange 13:23:04 also because you never know if somebody really wants to call himself Rhot46nz4s 13:23:23 17:13, 16 March 2013 Ehird (Talk | contribs | block) deleted page Jerk Brief History Of Flashlights (I have run out of things to say. this spam has left me in awe.) 13:23:50 hahaha 13:25:42 ais523: it was more confusing than you might expect even from that title: (change visibility) (diff) 10:44, 16 March 2013 . . GenesisUU (Talk | contribs | block) (1,107 bytes) (Created page with "As you can see by her recent success Stoya is clearly one of the fleshlight. Del Corro could also be found in the semen if infectious preputial fluid drained into the fleshl...") 13:26:04 "That's not illegal -- but it is insignifigant compared to the ribbed edges of fleshlight." 13:27:02 elliott_: it's /very/ weird being in a situation where you can just post the contents of deleted pages from the deletion log 13:27:11 at Wikipedia you had to be generic, unless the page was actually worthy of undeletion 13:27:17 so you'd look at it and say "not undeleting, it was spam2 13:27:19 s/2/"/ 13:27:28 ais523: that's weird 13:27:37 what's the harm of pasting nonsense in IRC? 13:27:48 even if they were looking to see if the page stayed up, they wouldn't check the IRC logs 13:28:12 well deleted pages often contain personal information or something like that 13:28:28 personal information about stoya being one of the fleshlight 13:28:58 I believe it is a well-known fact that Stoya is one of the fleshlight 13:29:45 should we add a trigger on some bot? 13:30:44 the spam problem is manageable 13:31:00 you should have seen what it was like before I took over hosting 13:31:13 that's because the spam filter was hilariously bad before you took over hosting 13:31:35 once we had a working filter, a better CAPTCHA, and you gave me access to edit the filter rules 13:31:37 things got a lot better 13:31:44 yeah 13:31:53 I just mean, going to the lengths of finding a way to hide all the spam deletions from recent changes :p 13:37:44 in the future pages can only be entered as brainfuck programs that generate the actual content 13:38:13 -!- drdanmaku has joined. 13:38:18 `interp bf_txtgen in the future pages can only be entered as brainfuck programs that generate the actual content 13:38:22 mroman_: knowing our luck, we'd still get spam 13:38:22 969 +++++++++++++++[>+++++++>++>+++++++>++++++<<<<-]>.>>+++++.<++.>++++++.<<-.---.>.<+.>>+.<++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+.---.<-.---------------------------------------------------------------------.>>-----.>+++++++.++++++.--.<<+.<.>>>--.--.<--.<<.>>>++++++++++++++.-.<--.<++++++.<.>>--------- 13:38:31 mroman_: the spambots figured out how to answer questions about esolangs to register, after all 13:38:43 `ls bin/! 13:38:44 ls: cannot access bin/!: No such file or directory 13:38:45 also you'd need some javascript to actually display it then 13:38:47 (I still think the solution to any registered-user spam is just to get fizzie to replace the questions) 13:38:55 `ls bin/interp 13:38:56 which mean spam can now DoS your browser 13:38:56 bin/interp 13:38:57 :D 13:39:07 `run ln -s interp bin/! 13:39:09 No output. 13:39:17 `! bf_txtgen this looks like a good EgoBot replacement syntax 13:39:20 348 +++++++++++++++[>+++++++>++++++++>++>++++++<<<<-]>>----.<-.+.>-.>++.<-------.<++++++..>-.<++++.>>.<<-------.>--.<-.>----.>.>+++++++.<.>++++++.<<<++++..>-.>.<-------------------------------.>>.<<<.>---.<.+++++.>>.<<--.-------------.>>>+++++++++.----.<<+++++++++++++++++++++++++++++++.++.++.++++++++.<.>+.>>++++++++.<.>-.++++++.<<.++++++.<----.>+++ 13:39:31 `! bf8 +++++++++++++++[>+++++++>++++++++>++>++++++<<<<-]>>----.<-.+.>-.>++.<-------.<++++++..>-.<++++.>>.<<-------.>--.<-.>----.>.>+++++++.<.>++++++.<<<++++..>-.>.<-------------------------------.>>.<<<.>---.<.+++++.>>.<<--.-------------.>>>+++++++++.----.<<+++++++++++++++++++++++++++++++.++.++.++++++++.<.>+.>>++++++++.<.>-.++++++.<<.++++++.<----.>+++ 13:39:32 this looks like a good EgoBot replacement synta 13:39:40 hmm 13:39:50 I wonder if it ran out of space on the line 13:40:23 !bfjoust silly +++++++++++++++[>+++++++>++++++++>++>++++++<<<<-]>>----.<-.+.>-.>++.<-------.<++++++..>-.<++++.>>.<<-------.>--.<-.>----.>.>+++++++.<.>++++++.<<<++++..>-.>.<-------------------------------.>>.<<<.>---.<.+++++.>>.<<--.-------------.>>>+++++++++.----.<<+++++++++++++++++++++++++++++++.++.++.++++++++.<.>+.>>++++++++.<.>-.++++++.<<.++++++.<----.>+++ 13:40:24 Lymia.silly: points -35.60, score 3.10, rank 47/47 13:40:51 !bfjoust google http://google.com 13:40:51 ais523: error: parse error: encountered { without suitable enclosing ( 13:41:07 hmm 13:41:08 `! bf_txtgen bfjoust 13:41:10 Google missed a trick there 13:41:12 62 +++++++++++[>+++++++++>>><<<<-]>-.++++.++++.+++++.++++++.--.+. [177] 13:41:25 !bfjoust bfjoust +++++++++++[>+++++++++>>><<<<-]>-.++++.++++.+++++.++++++.--.+. 13:41:25 mroman_.bfjoust: points -35.29, score 2.98, rank 47/47 13:41:36 Meta BF Joust! 13:41:52 you submit an ASCII String which is fed through bf textgen which is then used as a BF Joust program 13:42:29 sillyness level over (unsigned long)-1; 13:42:43 or was it unsigned long long? 13:42:49 or possibly unsigned long long int 13:43:02 hm 13:44:00 mroman_: bf_txtgen-generated programs cannot ever attack 13:44:13 in fact, they will all eventually zero their own flag 13:44:25 thus, the strategy would be trying to find a string that took as long as possible before it committed suicide 13:45:19 -!- FreeFull has joined. 13:45:59 what is the >>><<<< doing in there, that looks ridiculous. 13:46:15 int-e: bf_txtgen always has exactly four > and exactly four < in the loop 13:47:35 ... 13:47:44 `! bf_txtgen @ 13:47:46 can't you just do < and be done with it/ 13:47:49 29 ++++++++[>++++++++>>><<<<-]>. [39] 13:48:03 also, is bf_txtgen written in bf? 13:48:13 wow I used to be able to delete a lot of spam in a minute 13:48:17 and no, it's written in Java IIRC 13:48:23 int-e: how comes? 13:48:28 `! bf_txtgen CTCP FINGER 13:48:32 erm, ais523: how comes? 13:48:33 86 +++++++++++[>++++++>++++++++>+++><<<<-]>+.>----.<.>----.>-.<<+++.+++.>--.<--.--.>++++. [965] 13:48:47 myname: I didn't write it, don't blame me! 13:48:57 ^bf +.++++++++++[>++++++>++++++++>+++><<<<-]>+.>----.<.>----.>-.<<+++.+++.>--.<--.--.>++++.>>>>>>>+. 13:48:57 CTCP FINGER 13:49:00 lol 13:49:07 whoops 13:49:12 `! bf_txtgen FINGER 13:49:14 lol 13:49:16 59 ++++++++++++++[>+++++>+++++>><<<<-]>.+++.+++++.>+.--.<++++. [165] 13:49:36 +.+++++++++++++[>+++++>+++++<<-]>.+++.+++++.>+.--.<++++>>+. 13:49:40 ^bf +.+++++++++++++[>+++++>+++++<<-]>.+++.+++++.>+.--.<++++>>+. 13:49:40 FINGE 13:49:44 uhh 13:49:51 o 13:49:55 ^bf +.+++++++++++++[>+++++>+++++<<-]>.+++.+++++.>+.--.<++++.>>+. 13:49:55 FINGER 13:49:58 aha! 13:50:06 `! bf_textgen bf_textgen 13:50:07 ​/hackenv/bin/!: 4: exec: ibin/bf_textgen: not found 13:50:16 txt 13:50:17 not text 13:50:17 `! bf_txtgen bf_txtgen 13:50:23 90 ++++++++++++++[>+++++++>++++++++>+++++++><<<<-]>.++++.>>---.<++++.++++.----.<+.--.>------. [155] 13:50:32 `! bf_txtgen ++++++++++++++[>+++++++>++++++++>+++++++><<<<-]>.++++.>>---.<++++.++++.----.<+.--.>------. 13:50:36 381 +++++++++++[>++++++++>++++>++++>++++<<<<-]>>>-...<-...>>-..<<..>....<<+++.-----------------------------.>>.>.<.<..>.>.<<<.>>...<.....<.>>..>...<<..<.--.>+++++++++++++++++..<.---------------.>+++++++++++++++++++++++++++++++++.-------------------------------.>+++.---.>.<..+++.<..>-...>+++.<<--.>--....<--------------.<--....+++.-..>>>-..+.++++++++ 13:50:42 ^- finding a fixpoint is left as an exercise for the reader 13:50:54 i.e. txt = bf_txtgen(txt) 13:50:58 `! bf_txtgen `! bf_txtgen Hello World! 13:51:01 182 ++++++++++++[>++++++>+++>++++++++>++++++++<<<<-]>>----.>.<+.-.>++.++++.>-.<++++++++++++++.++++.----.>++++++++.--.<------.<.<.>>>.<--..+++.<.>>--------------.<.+++.------.--------.<+. [296] 13:51:04 impossible, bf_txtgen(txt) is always longer than txt 13:51:08 ^bf ++++++++++++[>++++++>+++>++++++++>++++++++<<<<-]>>----.>.<+.-.>++.++++.>-.<++++++++++++++.++++.----.>++++++++.--.<------.<.<.>>>.<--..+++.<.>>--------------.<.+++.------.--------.<+. 13:51:08 `! bf_txtgen Hello World! 13:51:10 as it never puts . inside a loop 13:51:16 er 13:51:17 ais523: can you prove that? 13:51:24 `! bf_txtgen `! bf_txtgen Hello World! 13:51:28 204 ++++++++++++++[>+++++++>++>+++++++>++++++++<<<<-]>--.>+++++.-.>.++++.<<-.>>>++++.++++.----.<+.>---------------.<+++++++.<.<-----------------------.>>>.+++++++..<+.<.<+++++++++++++++.>>.+++.>.--------.<<+. [607] 13:51:31 mroman_: it's at least 2x 13:51:35 mroman_: well unless the person who explained the algorithm it uses to me was lying 13:51:38 I haven't seen the source 13:51:39 er 13:51:44 that's not true 13:51:51 if you wanted nulls it'd be the same 13:51:57 though... 13:52:02 `! bf_txtgen ttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt 13:52:05 ` !bf_txtgen aaaaaaaaaaaaaaaaaaaaaaaaaaaa 13:52:05 274 +++++++++++++[>+++++++++>+++++++++>+++++++++>+++++++++<<<<-]>-....>>>-....<-.<-.......>.>...<...<...<......>....>.>....<.<<....>..<..>.......>...<.>.>...<<<..>....>.>..<.<<...>>.<<.>....>..<.<..>.>.........>.<.<..>.>.......<....<..>..>..<.....<<..>..>.<...>..>.......<.<.>.. [937] 13:52:06 loops could make a lot of characters from just a few 13:52:06 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found 13:52:06 having . outside of loops sounds like a reasonable proof 13:52:10 haha 13:52:22 wtf is it doing for tttttt? 13:52:26 bf_txtgen is not very good at that sort of input 13:52:29 wtf :D 13:52:41 `! bf_txtgen `! bf_txtgen Pizza is delicious! 13:52:44 245 ++++++++++++[>+++++++++>++++++++++>++++++++>+++<<<<-]>>>.>---.-.<++.++++.-------.<----.++++.----.-------------.--.<++.>>>.<---------------.<++++.<++++++++++++..>>+++++++++++++++++.>.<<.<-------.>>>.<+++.+.<+++.---.>--.++++++.++++++.++++++.--.>+. [752] 13:52:53 ^bf ++++++++++++[>+++++++++>++++++++++>++++++++>+++<<<<-]>>>.>---.-.<++.++++.-------.<----.++++.----.-------------.--.<++.>>>.<---------------.<++++.<++++++++++++..>>+++++++++++++++++.>.<<.<-------.>>>.<+++.+.<+++.---.>--.++++++.++++++.++++++.--.>+. 13:52:53 `! bf_txtgen Pizza is delicious! 13:52:53 ^bf +.++++++++++[>++++++++++>++++++++>++++++>+++<<<<-]>>>-.++.<----.>++++++.++++++.-.>-.<<<-.>+++++++++++++.+++++++++++++++.<++.---.-------.>+++.>>.<-------.<<..++++++.>>---.<++.<-------.+.<+. 13:52:54 * fungot mapoles GeekDude 13:52:56 150 +++++++++++++++[>++>+++++>+++++++>++++++++<<<<-]>>+++++.>.>++..<<+++++++++++++++++.<++.>>.>-------.<<<.>+++.+.>+++.---.<--.++++++.++++++.++++++.--.<+. [492] 13:53:12 wait, what causes fungot to mapole people 13:53:12 ais523: isn't he the dj? it kinda adds up the whole story was explained 5 million times and the government never took it serious... hope things chance now. and that of 136 people on board 13:53:17 ais523: no idea 13:53:19 oh, CTCP ACTION 13:53:33 `! bf_txtgen ACTION is an idiot 13:53:38 159 +++++++++++[>++++++>+++>+++++++++>+++++++++<<<<-]>-.++.+++++++++++++++++.-----------.++++++.-.>-.>++++++.++++++++++.<.>>--.<-----.<.>-----.>+++.<.++++++.+++++. [362] 13:53:40 int-e must have been running txtgen in PM 13:53:57 ^bf +.++++++++++[>++++++>+++>+++++++++>+++++++++<<<<-]>-.++.+++++++++++++++++.-----------.++++++.-.>-.>++++++.++++++++++.<.>>--.<-----.<.>-----.>+++.<.++++++.+++++.[-]+. 13:53:57 * fungot is an idiot 13:53:59 ais523: I did :P 13:54:08 hmmmm 13:54:09 * int-e is sneaky sometimes 13:54:17 * GeekDude hatches a plot 13:54:31 * int-e plots a hatch 13:54:36 ^bf +++++++++[>++++++++<-]>. 13:54:37 H 13:54:56 ^bf +++++++++[>++++++++<-]>.<+++++++++++++.>. 13:54:56 H.H 13:54:59 ^bf +++++++++[>++++++++<-]>.<++++++++++++.>. 13:55:00 HH 13:55:12 ^bf +++++++++[>++++++++<-]>.<[-]++++++++++++.>. 13:55:13 HH 13:55:15 ^bf +++++++++[>++++++++<-]>.<[-]+++++++++++++.>. 13:55:15 H.H 13:55:21 does he replace \r with .? 13:55:56 ^bf +++++++++[>++++++++<-]>.<++++++++++.>. 13:55:57 H.H 13:56:09 he replaces a bunch of chars, yes 13:56:10 looks like it does :( 13:56:14 i do think \n too 13:56:38 I tested \n 13:56:40 was . 13:56:45 so no sending raw NICK commands 13:56:54 sadly 13:56:59 someone did that to my bot 13:57:06 I handled `n and `r`n, but not `r 13:57:10 er 13:57:19 ` is the escape in the language I was using 13:57:20 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found 13:57:56 @unlambda `r`.o`.l`.l`.e`.hi 13:57:57 hello 13:59:21 @metar rjcc 13:59:21 RJCC 251330Z 33015KT 9999 SCT025 BKN050 17/12 Q1008 RMK 3CU025 7CU050 A2977 14:02:58 Only \r and \n. 14:03:59 And you can tell how many "terms" (>s in the single loop, basically) you want to make to the command-line version of bf_txtgen. 14:04:18 It also makes better code if you let it run for a while, the cutoff for number of generations is pretty low on the bot. 14:04:33 (It's not my program, but I've looked at the code.) 14:05:13 ^bf .... 14:06:25 ^bf ....+++++++++[->+++++++++<]>.... 14:06:41 a thought for a really simple BF Joust "optimisation": if the tape pointers are distance n from each other, you can always run at least n cycles of each program independently 14:06:48 ^bf +[.+] 14:06:48 .. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ... 14:06:54 and then merge the resulting tapes 14:07:02 b_jonas: fungot ctcp spam was yesterday 14:07:02 ais523: i did not die for nothing. i've seen it too, and he said the plane hits the trees 14:07:06 possibly this could be generalised into something that allows loosening the sync further? 14:07:16 *n/2, rather 14:07:23 elliott_: check the distance to the next < or > instruction 14:07:28 ^bf +++++++++[->+++++++++<]>[.-] 14:07:28 QPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! .. 14:07:32 ^bf .+++++++++[->+++++++++<]>[.-] 14:07:41 aha, so if it outputs a zero byte, the line is truncated! 14:07:53 ais523: seeking ]s back to [s and taking the minimum of that and it passing the ], presumably? 14:07:54 ^bf +++++++++[->+++++++++<]>.-.-.-.->.<.-.-.-.- 14:07:54 QPON 14:07:55 see 14:07:57 b_jonas: Will you stop sending bells please! >.< 14:07:59 it doesn't filter zero bytes 14:08:04 Melvar: sorry 14:08:30 ascii is missing a "whistle" control character. 14:08:40 elliott_: yes 14:08:51 ais523: that sounds expensive, though 14:08:57 ais523: ooh, I suppose you could recompute it though 14:08:59 er, precompute 14:09:02 right 14:09:24 if you were compiling two programs into a program to battle them, then you could control how much you interleave/check things 14:09:27 -!- idris-bot has quit (Quit: Terminated). 14:09:43 I don't know how much of a win this would be. 14:09:44 Neat, broken terminal again. 14:09:49 -!- idris-bot has joined. 14:09:52 ideally you'd run the two programs completely independently and have them signal to each other when they need to sync. 14:09:57 ^bf +++++++++++++[->++++++++++++<]>[.--] 14:09:57 ~|zxvtrpnljhfdb`^\ZXVTRPNLJHFDB@><:86420.,*(&$" . 14:10:04 maybe the context-switching overhead would make that not worthwhile. 100k cycles isn't really much. 14:10:23 Melvar: what irc client are you using anyway? 14:10:24 fizzie: how long does gearlance take to go through a 100k cycle match? 14:10:58 int-e: It’s the bot’s debug output. 14:11:06 ideally you'd run the two programs completely independently and have them signal to each other when they need to sync. ← that's what I was considering for a Verity impl that has the programs hardcoded into the hardware 14:11:12 Melvar: oh, ouch :) 14:11:12 elliott_: I don't see how you'd do that, because they can basically sync any time 14:11:13 Oh yay. http://www.troyhunt.com/2014/09/everything-you-need-to-know-about.html 14:11:17 b_jonas: not true 14:11:21 b_jonas: Congratulations, once more. 14:11:22 although, even better 14:11:25 if you had cycle-accurate timing 14:11:26 -!- idris-bot has quit (Client Quit). 14:11:35 you could just make the two programs /literally/ run at the same speed 14:11:38 b_jonas: you only need to sync them when they cross the same place on the tape 14:11:39 it's hardware, you can do fun things like that 14:11:47 -!- idris-bot has joined. 14:11:50 Melvar: what? I thought that one only had even characters, and bell is odd 14:12:01 b_jonas: so if they're n distance apart on the tape, you can run n/2 cycles of each 14:12:16 b_jonas: even if they both run at each other at lightspeed, they can't observe each other at all 14:12:17 b_jonas: Not bell, messed-up terminal. 14:12:25 elliott_: uh yeah, but the tape is really short 14:12:27 (the exception is when one of the flags goes to 0) 14:12:34 Melvar: ah, you mean I shouldn't send you control-N and control-O! 14:12:37 why didn't you say so 14:12:38 sorry 14:12:44 so the bell tolls for fungot 14:12:44 int-e: oznaczono jako spam i shit on halo 3 odst or battlefield bad company 2 will have that much dedication with my own eyes. he had passengers on it. i can get this right? 14:12:45 b_jonas: well, yes 14:13:04 b_jonas: ESC can also be an offender, depending on what follows it 14:13:06 ^style 14:13:06 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss wp youtube* 14:13:22 I see. Ouch. 14:13:45 ^style lovecraft 14:13:46 Selected style: lovecraft (H. P. Lovecraft's writings) 14:14:03 fungot fungot fungot 14:14:03 int-e: at last the action so carefully devised by the band of the faithful order 0' dagon, an' made o' fnord' their fnord fnord, 14:14:21 I usually type rlwrap netcat chat.freenode.net 6667 | cat -v specifically to avoid this 14:14:40 uhm, how did "fnord" get into the lovecraft style? 14:14:55 b_jonas: that's how you IRC? 14:14:59 int-e: rare words 14:15:00 fungot, cthulhu 14:15:00 FreeFull: the nameless stone labyrinth consisted, for the nights are cold in oriab; and when upon awaking once he thought he felt the bondage of local and partial? 14:15:19 int-e: fnord is just fungot's placeholder 14:15:20 elliott_: the vault was very deep in the arcane of the cosmos and various other symbols known to fnord wizards. there were 14:15:50 elliott_: evil 14:16:27 C 14:16:31 oops 14:16:55 let me send a control-o to restore it: 14:17:49 elliott_: no, that's just how I test raw irc stuff sometimes 14:19:23 -!- `^_^v has joined. 14:29:44 [wiki] [[Special:Log/newusers]] create * MellisaFlorey * New user account 14:30:05 hmm, a misspelt, camelcase, name 14:30:10 odds it's a spambot? 14:30:48 huh, I just found an XSS vector in MediaWiki 14:31:01 admin-exploitable only, though, and they still have plenty of ways to do that 14:31:06 elliott_: My quick timing test (with all the process-creation overhead and program loading and such included) seems to be around 20-30 ms. 14:31:15 (Gone for a while now.) 14:31:38 that sort of thing could be relevant if the superprotection debacle ever happens again 14:32:20 ouch, that's quite bad 14:32:34 so adding a program to the hill can take like 40 seconds, worst-case 14:32:54 -!- J_Arcane has quit (Quit: Nettalk6 - www.ntalk.de). 14:33:48 ais523: can't admins, like, put any html and javascript in the Mediawiki: namespace such that it shows up on most pages for all users? 14:33:59 hmm no, probably no 14:34:00 b_jonas: yes 14:34:07 well. normally 14:34:29 there was a big row a while back where Wikimedia tried to push their new image viewer thing onto the German Wikipedia, who didn't want it 14:34:37 and one of the admins added a script to disable it 14:35:03 if they can, then any project admin could steal the mediawiki cookies of all users, and that lets them impersonate them on any other language project under at least the same domain (eg. *.wikipedia.org or *.wiktionary.org) 14:35:06 and Wikimedia responded by coding a new "superprotect" protection status that admin perms weren't enough to change and superprotecting the relevant pages 14:35:28 b_jonas: yes, but the fact they'd done so would be publicly logged 14:35:29 oh man, I hate that new image viewer, is there a config option to disable it? 14:35:40 somewhere, I think 14:35:53 the WMF are trying to convince everyone that they actually like the image viewer 14:35:55 ais523: but admins can hide old versions of changes (not delete forever, but hide very well) 14:36:02 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 14:36:07 b_jonas: no, not at admin level 14:36:15 you can certainly hide a change, but not the fact it's been hidden 14:36:22 ok 14:36:28 um, so how do I disable the image viewer? 14:37:14 also, the worst hill will take 14 and a half minutes to run with gearlance 14:37:15 I don't know, my guess is it's in preferences 14:37:17 (all programs just waiting forever) 14:37:20 I don't get all this stuff where everyone is trying to add extra layers and features to images on commons, both for uploading and viewing 14:37:30 if not that, it's somewhere in the image viewer itself, in which case good luck finding it 14:38:51 -!- J_Arcane has joined. 14:38:54 if it's in preferences, I can't find it. I've searched already, and searching again 14:40:45 -!- ais523 has quit. 14:42:24 [wiki] [[Special:Log/delete]] delete * Ais523 * deleted "[[Some Thoughts On Establishing Major Details Of Indian Herbal Tea]]": Spam: (and the only contributor was "[[Special:Contributions/HarrisPmjiho|HarrisPmjiho]]") 14:42:34 [wiki] [[Special:Log/block]] block * Ais523 * blocked [[User:HarrisPmjiho]] with an expiry time of 2 decades, 4 years, 4 hours, 19 minutes and 12 seconds (account creation disabled): spambot 14:47:09 "2 decades, 4 years" hehe 14:48:06 that sounds like "two dimes, one nickel, one penny" 14:49:55 and note how it has no month, forthnight, week, or day components 14:51:04 I like how it has code for displaying decade-long blocks in the first place. 14:56:50 -!- shikhin has joined. 15:05:13 < b_jonas> um, so how do I disable the image viewer? – NoScript seems to? 15:06:31 Or, hmm. Actually I’m not blocking wikipedia’s scripts. 15:07:16 elliott_: Sorry, I mean, that time was for the 42M cycle match: all tape lengths and polarities, two empty programs that just spin the full 100k cycles. 15:07:31 fizzie: ah 15:07:51 Or is it 4.2M. 15:07:53 I can't count. 15:07:56 Yes. 15:08:05 fizzie: so 21s for the worst hill 15:08:15 b_jonas: Here we go: block cookies. 15:09:50 [wiki] [[Special:Log/newusers]] create * AlanaHuynh * New user account 15:12:33 Melvar: all cookies? even the login cookie? then I wouldn't be logged in to the wiki. 15:14:11 b_jonas: Well, I don’t have an account on wikipedia. I just tested right now that allowing cookies from there enables the image viewer, and removing the permission returns to the usual behavior. 15:14:43 Melvar: I'm not asking for wikipedia only, but for other projects using the image viewer too 15:14:51 not that there's much difference 15:15:22 anyway, I do want to be able to be logged in 15:15:38 You could try to find a particular cookie that does the trick, I don’t know and don’t want to experiment on it right now. 15:16:04 i've still got a far more sane version of bftxtgen sitting around somewhere. does much shorter output than the randomly evolved ones. 15:16:53 Melvar: ok, thanks for the help 15:17:17 I was thinking of the O(nm) thing, where you take two BF Joust programs a_1, a_2, ..., a_n and b_1, b_2, ..., b_m and make a single n x m -sized program in the obvious way, then compile all reachable execution paths of that program. 15:17:22 Discounting the shorthand notation, control flow always goes diagonally, except for loops, which jump either vertically or horizontally. And I guess ()s could be combined with the inner instructions, at the cost of more jumps. 15:17:25 I'm sure it'd be easy to have pathological pairs that approach the full O(nm) size, though. E.g. a and b having big loops with coprime lengths. 15:17:59 -!- MoALTz has joined. 15:20:18 (And you couldn't still combine all "<>+-"-only basic blocks willy-nilly when they touch either of the flags, so it'd need to be more carefuller than a regular bf optimizer.) 15:24:59 -!- GeekDude has joined. 15:25:17 fizzie: now I'm imagining an n-dimensional tape for running an entire hill at once 15:37:56 -!- Lorenzo64 has joined. 15:43:10 -!- idris-bot has quit (Quit: Terminated). 15:43:25 -!- idris-bot has joined. 15:56:59 !bfjoust strapon_fuck_machine (>)*9-<-<+(<(+)*63<(-)*63)*3(>)*8(>[(+)*7[-]])*-1 15:56:59 mroman_.strapon_fuck_machine: points -5.74, score 13.93, rank 45/47 15:57:11 :( 15:58:45 elliott_: yesssss 15:59:06 quintopia: I'm not sure it'd actually work. 15:59:53 elliott_: yeah i'm not sure it'd save anything. but it would look cool! 16:03:13 !bfjoust strapon_fuck_machine (>)*9(-)*16<(-)*10<(+)*10(<(+)*33<(-)*33)*3(>)*8(>[(+)*7[-]]>[(-)*7[+]])*-1 16:03:14 mroman_.strapon_fuck_machine: points -4.19, score 16.26, rank 31/47 (+14) 16:04:14 !bfjoust strapon_fuck_machine (>)*9(-)*16<(-)*10<(+)*10(<(+)*33<(-)*33)*3(>)*8(>[(+)*7[-].]>[(-)*7[+].])*-1 16:04:15 mroman_.strapon_fuck_machine: points -3.57, score 16.85, rank 29/47 (+2) 16:04:31 fizzie: come to think of it, couldn't you trivially parallelise running the hill? 16:04:56 [wiki] [[Special:Log/newusers]] create * ShawnaEisenhaue * New user account 16:05:30 elliott_: if he has the cores to parallelize on! 16:06:43 !bfjoust strapon_fuck_machine (>)*9(-)*2<(+)*2<(+)*10(<(+)*33<(-)*33)*3(>)*8(>[(+)*7[-].]>[(-)*7[+].])*-1 16:06:44 mroman_.strapon_fuck_machine: points -2.81, score 17.11, rank 28/47 (+1) 16:06:55 quintopia: now I'm thinking about GPU bf joust. 16:07:27 -!- S1 has joined. 16:07:54 !bfjoust strapon_fuck_machine (>)*9(-)*2<(+)*2<(+)*20(<(+)*23<(-)*23)*3(>)*8(>[(+)*7[-].]>[(-)*7[+].])*-1 16:07:54 mroman_.strapon_fuck_machine: points -2.14, score 18.36, rank 25/47 (+3) 16:08:08 I designed that just to beat nyuroki 16:08:14 (Lymia.nyuroki) 16:08:17 good luck 16:08:28 -!- L8D has quit (Ping timeout: 260 seconds). 16:08:38 It doesn't do generally well apparentely 16:08:43 but it beats the crap ot ouf nyuroki 16:09:44 How can you know how it competes against one specific other program? 16:10:38 zem.fi/bfjoust/game 16:11:10 Or http://zem.fi/bfjoust/breakdown/ 16:11:49 -!- Phantom_Hoover has joined. 16:23:41 -!- aloril_ has joined. 16:26:27 -!- aloril has quit (Ping timeout: 245 seconds). 16:31:58 -!- aloril_ has changed nick to aloril. 16:34:25 fizzie: I wonder if the computed goto is actually a net win? 16:34:27 maybe it messes up branch prediction 16:41:52 Thanks to some very helpful contributions from another Racketeer, http://try-racket.org is now significantly more bugless and stable. 16:47:01 elliott_: It was a win in ff (some version) over a table of function pointers. 16:47:06 But who knows. 16:47:16 fizzie: I was thinking more compared to switch. 16:49:17 Well. I think I had a reasonable speed benefit from switching from "program is a set of integer values, dispatch via goto *foo[i]" (which should be pretty much equivalent to a switch if the compiler decides to implement it as a jump table) to "program is a sequence of computed-goto labels". But this is all very anecdotal. 16:50:11 * elliott_ nod 16:50:12 mooz once made a befunge interpreter where the dispatching was a table-less jump table: it was just a jump to base + K*op, with K selected so that most opcode implementations fit in K bytes (and the few that didn't just branched off). 16:50:22 -!- drlemon has joined. 16:57:24 -!- J_Arcane has quit (Quit: WeeChat 0.4.4-dev). 16:59:02 [wiki] [[Hello world program in esoteric languages]] http://esolangs.org/w/index.php?diff=40533&oldid=40523 * GermanyBoy * (+137) /* Goldfish */ 17:04:24 -!- J_Arcane has joined. 17:11:09 fizzie: wouldn't it be faster to put funcalls in the large opcode implementations instead? 17:11:16 oh, I guess that's what you meant 17:21:37 http://mroman.ch/mromansgame/spec.txt 17:22:12 probably needs some logic instructions like and/or/not 17:22:13 -!- conehead has joined. 17:23:18 -!- weissschloss has quit (Remote host closed the connection). 17:29:04 -!- weissschloss has joined. 17:41:07 http://mroman.ch/mromansgame/spec.txt <- updated. with pseudo example program now 17:41:49 -!- HackEgo has quit (Remote host closed the connection). 17:42:19 (you could also start by displacing the opponents figure) 17:42:24 -!- HackEgo has joined. 17:42:46 (which means to defend against that you'd have to search your figure) 17:43:36 technically you could just displace the enemies figure all the time 17:44:00 which makes it almost impossible without guessing to find it I guess 17:44:15 but it will never win (just draw all the time like an imp) 18:04:41 -!- L8D has joined. 18:06:02 !bfjoust (-.)*-1 (-.)*-1 18:06:02 mroman_: Program name ((-.)*-1) is restricted to characters in [a-zA-Z0-9_-], sorry. 18:06:07 pff 18:06:14 !bfjoust pff (-.)*-1 18:06:15 mroman_.pff: points -26.76, score 2.98, rank 47/47 18:06:23 !bfjoust pff (-.-)*-1 18:06:24 mroman_.pff: points -22.02, score 6.69, rank 47/47 (--) 18:06:28 !bfjoust pff (-.--)*-1 18:06:29 mroman_.pff: points -23.83, score 6.38, rank 47/47 (--) 18:06:42 !bfjoust pff (-.->+<)*-1 18:06:43 mroman_.pff: points -37.40, score 2.14, rank 47/47 (--) 18:06:46 !bfjoust pff (-.-)*-1 18:06:47 mroman_.pff: points -22.02, score 6.69, rank 47/47 (--) 18:07:10 !bfjoust pff (>)*9([-].>)*-1 18:07:10 mroman_.pff: points -15.93, score 9.90, rank 47/47 (--) 18:07:26 S1: ^- that's a pretty easy one for example 18:07:29 !bfjoust pff (>)*9([-]>)*-1 18:07:29 mroman_.pff: points -14.83, score 10.42, rank 47/47 (--) 18:07:39 It just rushes 9 cells forward and does a clear 18:07:49 !bfjoust pff (>)*11([-]>)*-1 18:07:49 mroman_.pff: points -18.00, score 8.81, rank 47/47 (--) 18:07:53 !bfjoust pff (>)*10([-]>)*-1 18:07:57 !bfjoust pff (>)*10([-]>)*-1 18:07:57 mroman_.pff: points -16.81, score 9.38, rank 47/47 (--) 18:08:06 !bfjoust pff (>)*9([-]>)*-1 18:08:06 mroman_.pff: points -14.83, score 10.42, rank 47/47 (--) 18:08:12 ^- rush 9 cells forward, clear 18:08:21 !bfjoust pff (>(-)*3)*9([-]>)*-1 18:08:22 mroman_.pff: points -27.38, score 4.07, rank 47/47 (--) 18:08:35 ^- rush forward with decoy setup, clear (it's bad though) 18:09:20 -!- L8D has quit (Ping timeout: 260 seconds). 18:09:40 !bfjoust pff (>)*9(-)*20<((-)*20<(+)*20<)*4(>)*9([-]>)*-1 18:09:41 mroman_.pff: points -13.98, score 10.29, rank 47/47 (--) 18:09:55 !bfjoust pff (>)*9(-)*20<((-)*20<(+)*20<)*4(>)*9([(+)*10[-]]>)*-1 18:09:57 mroman_.pff: points -13.52, score 9.44, rank 47/47 (--) 18:09:59 crap 18:10:11 !bfjoust pff (>)*9(-)*10<((-)*10<(+)*10<)*4(>)*9([(+)*10[-]]>)*-1 18:10:12 mroman_.pff: points -11.98, score 10.83, rank 47/47 (--) 18:10:16 almost 18:10:27 !bfjoust pff (>)*9(-)*10<((-)*10<(+)*10<)*3(>)*9([(+)*10[-]]>)*-1 18:10:28 mroman_.pff: points -9.12, score 12.66, rank 47/47 (--) 18:10:33 still almost 18:10:38 !bfjoust pff (>)*9(-)*10<((-)*10<(+)*10<)*3(>)*9([(+)*6[-]]>)*-1 18:10:38 mroman_.pff: points -13.02, score 10.53, rank 47/47 (--) 18:10:42 -!- S1 has quit (Ping timeout: 245 seconds). 18:10:52 !bfjoust pff (>)*9(-)*5<((-)*10<(+)*10<)*3(>)*9([(+)*10[-]]>)*-1 18:10:53 mroman_.pff: points -8.07, score 13.45, rank 47/47 (--) 18:10:59 ah. screw it 18:11:07 Reverse decoys suck 18:12:21 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*10>(-)*10>([(+)*10.[-]]>[(-)*10.[+]]>)*-1 18:12:21 mroman_.athena: points 1.52, score 22.71, rank 13/47 (-3) 18:12:29 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*10>(-)*10>([(+)*8.[-]]>[(-)*8.[+]]>)*-1 18:12:30 mroman_.athena: points 1.10, score 22.33, rank 14/47 (-1) 18:12:36 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*10>(-)*10>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:12:36 mroman_.athena: points 2.21, score 23.42, rank 10/47 (+4) 18:12:43 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*10>(-)*10>([(+)*6.[-]]>[(-)*6.[+]]>)*-1 18:12:43 mroman_.athena: points 1.33, score 22.58, rank 13/47 (-3) 18:12:49 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*10>(-)*10>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:12:50 mroman_.athena: points 2.21, score 23.42, rank 10/47 (+3) 18:13:11 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*5>(-)*5>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:12 mroman_.athena: points 1.98, score 23.19, rank 10/47 (--) 18:13:17 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*15>(-)*5>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:18 mroman_.athena: points 2.36, score 23.53, rank 9/47 (+1) 18:13:21 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*15>(-)*15>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:22 mroman_.athena: points 2.21, score 23.64, rank 9/47 (--) 18:13:27 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*25>(-)*15>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:28 mroman_.athena: points 2.31, score 23.81, rank 9/47 (--) 18:13:33 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*25>(-)*25>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:33 mroman_.athena: points 1.36, score 22.63, rank 13/47 (-4) 18:13:38 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*25>(-)*10>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:39 mroman_.athena: points 1.83, score 23.12, rank 11/47 (+2) 18:13:43 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*25>(-)*15>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:13:43 mroman_.athena: points 2.31, score 23.81, rank 9/47 (+2) 18:13:46 hm 18:13:53 alright. 18:14:05 !bfjoust athena (>(+)*14>(-)*7)*5>(-)*25>(-)*15>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:14:06 mroman_.athena: points 1.43, score 22.87, rank 13/47 (-4) 18:14:12 !bfjoust athena (>(+)*12>(-)*7)*5>(-)*25>(-)*15>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:14:13 mroman_.athena: points 1.12, score 22.18, rank 14/47 (-1) 18:14:17 !bfjoust athena (>(+)*13>(-)*7)*5>(-)*25>(-)*15>([(+)*7.[-]]>[(-)*7.[+]]>)*-1 18:14:18 mroman_.athena: points 2.31, score 23.81, rank 9/47 (+5) 18:14:24 the timings are real o_O 18:15:07 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*7[+]]+](<)*11([-][+]>)*-1 18:15:08 mroman_.snail: points -0.10, score 21.33, rank 16/47 (-1) 18:15:12 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*11[+]]+](<)*11([-][+]>)*-1 18:15:13 mroman_.snail: points 1.29, score 21.99, rank 15/47 (+1) 18:15:21 !bfjoust snail (>(-)*14>(+)*9)*5[>[(-)*12[+]]+](<)*11([-][+]>)*-1 18:15:22 mroman_.snail: points 0.07, score 20.81, rank 17/47 (-2) 18:15:28 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+]]+](<)*11([-][+]>)*-1 18:15:28 mroman_.snail: points 1.12, score 21.72, rank 15/47 (+2) 18:15:38 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+]]+](<)*10([-][+]>)*-1 18:15:39 mroman_.snail: points 1.07, score 21.67, rank 15/47 (--) 18:15:51 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+]]+](<)*11([-]>)*-1 18:15:51 mroman_.snail: points 1.19, score 21.79, rank 15/47 (--) 18:16:04 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+]]+](<)*11([(+)*9[-]]>)*-1 18:16:05 mroman_.snail: points 1.24, score 21.84, rank 15/47 (--) 18:16:10 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+].]+](<)*11([(+)*9[-]]>)*-1 18:16:11 mroman_.snail: points 1.90, score 22.61, rank 14/47 (+1) 18:16:14 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+].]+](<)*11([(+)*9[-].]>)*-1 18:16:15 mroman_.snail: points 1.90, score 22.61, rank 14/47 (--) 18:16:18 hehe 18:16:24 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 18:16:28 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+].]+](<)*11([(+)*9[-]].>)*-1 18:16:28 mroman_.snail: points 2.02, score 22.73, rank 13/47 (+1) 18:16:35 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+]]+](<)*11([(+)*9[-]].>)*-1 18:16:36 mroman_.snail: points 1.36, score 21.95, rank 15/47 (-2) 18:16:38 !bfjoust snail (>(-)*14>(+)*8)*5[>[(-)*11[+].]+](<)*11([(+)*9[-]].>)*-1 18:16:39 mroman_.snail: points 2.02, score 22.73, rank 13/47 (+2) 18:36:23 !bfjoust wigglewigglewiggleyeah (+.+.-.)*-1 18:36:26 mroman_.wigglewigglewiggleyeah: points -14.52, score 7.91, rank 47/47 18:36:34 !bfjoust wigglewigglewiggleyeah (+.+.+.-.)*-1 18:36:36 mroman_.wigglewigglewiggleyeah: points -16.74, score 7.29, rank 47/47 (--) 18:36:39 !bfjoust wigglewigglewiggleyeah (+.+.+.-.-.)*-1 18:36:41 mroman_.wigglewigglewiggleyeah: points -12.52, score 9.15, rank 47/47 (--) 18:36:45 !bfjoust wigglewigglewiggleyeah (+.+.+.-.-)*-1 18:36:46 mroman_.wigglewigglewiggleyeah: points -24.67, score 6.18, rank 47/47 (--) 18:37:03 !bfjoust wigglewigglewiggleyeah >(128+)<(+.+.+.-.-.)*-1 18:37:04 mroman_.wigglewigglewiggleyeah: points -12.50, score 9.15, rank 47/47 (--) 18:37:17 !bfjoust wigglewigglewiggleyeah (>(128+))*3<<<(+.+.+.-.-.)*-1 18:37:19 mroman_.wigglewigglewiggleyeah: points -12.14, score 9.40, rank 47/47 (--) 18:37:29 !bfjoust wigglewigglewiggleyeah (>(128+))*3<<<(+.+.+.+.-.-.-.)*-1 18:37:31 mroman_.wigglewigglewiggleyeah: points -12.07, score 9.42, rank 47/47 (--) 18:37:42 !bfjoust wigglewigglewiggleyeah (>(128+))*8(<)*8(+.+.+.+.-.-.-.)*-1 18:37:43 mroman_.wigglewigglewiggleyeah: points -11.83, score 9.91, rank 47/47 (--) 18:38:10 !bfjoust wigglewigglewiggleyeah (>(+)*128)*8(<)*8(+.+.+.+.-.-.-.)*-1 18:38:12 mroman_.wigglewigglewiggleyeah: points -27.74, score 4.18, rank 47/47 (--) 18:38:19 !bfjoust wigglewigglewiggleyeah (>(+)*10)*8(<)*8(+.+.+.+.-.-.-.)*-1 18:38:21 mroman_.wigglewigglewiggleyeah: points -21.05, score 5.59, rank 47/47 (--) 18:38:30 !bfjoust wigglewigglewiggleyeah (>+)*8(<)*8(+.+.+.+.-.-.-.)*-1 18:38:32 mroman_.wigglewigglewiggleyeah: points -19.86, score 3.99, rank 47/47 (--) 18:38:45 !bfjoust wigglewigglewiggleyeah (>(+)*128)*3<<<(+.+.+.+.-.-.-.)*-1 18:38:47 mroman_.wigglewigglewiggleyeah: points -18.12, score 5.91, rank 47/47 (--) 18:38:52 :( 18:38:58 not working anymore 18:54:48 !bfjoust clear (>)*9([-[-].]>)*-1 18:54:49 mroman_.clear: points -16.69, score 9.63, rank 47/47 18:54:55 !bfjoust clear (>)*10([-[-].]>)*-1 18:54:55 mroman_.clear: points -18.62, score 8.64, rank 47/47 (--) 18:55:04 !bfjoust clear (>)*9([--[-].]>)*-1 18:55:05 mroman_.clear: points -17.43, score 9.37, rank 47/47 (--) 18:55:16 !bfjoust clear (>)*9([(+)*10[-].]>)*-1 18:55:21 !bfjoust clear (>)*9([(+)*10[-].]>)*-1 18:55:21 mroman_.clear: points -9.12, score 13.60, rank 47/47 (--) 18:55:27 !bfjoust clear (>)*9([(+)*20[-].]>)*-1 18:55:27 mroman_.clear: points -16.40, score 9.93, rank 47/47 (--) 18:55:39 !bfjoust clear (>)*9([(+)*10[(-)*3].]>)*-1 18:55:40 mroman_.clear: points -14.83, score 10.61, rank 47/47 (--) 19:18:46 -!- shikhout has joined. 19:22:13 -!- shikhin has quit (Ping timeout: 260 seconds). 19:42:43 -!- AnotherTest has quit (Remote host closed the connection). 20:03:38 -!- AndoDaan has joined. 20:18:26 !bfjoust clear (>-)*9([(+)*10[-].]>)*-1 20:18:27 mroman_.clear: points -19.64, score 7.62, rank 47/47 (--) 20:19:05 !bfjoust clear (>)*9(+)*32<(-)*32>>([(+)*10[-].]>)*-1 20:19:06 mroman_.clear: points -19.14, score 7.99, rank 47/47 (--) 20:19:15 hm 20:19:34 -!- GeekDude has joined. 20:20:04 !bfjoust clear (>)*9(>[-..>+<])*-1 20:20:05 mroman_.clear: points -34.62, score 2.59, rank 47/47 (--) 20:20:30 !bfjoust clear (>)*9(>[-..])*-1 20:20:31 mroman_.clear: points -24.62, score 6.61, rank 47/47 (--) 20:20:35 !bfjoust clear (>)*9(>[-.-.])*-1 20:20:35 mroman_.clear: points -22.24, score 7.19, rank 47/47 (--) 20:20:39 !bfjoust clear (>)*9(>[-.-.-])*-1 20:20:39 mroman_.clear: points -20.79, score 7.84, rank 47/47 (--) 20:20:43 !bfjoust clear (>)*9(>[-.-.-.-.])*-1 20:20:44 mroman_.clear: points -24.98, score 6.30, rank 47/47 (--) 20:20:49 !bfjoust clear (>)*9(>[-.-.-])*-1 20:20:49 mroman_.clear: points -20.79, score 7.84, rank 47/47 (--) 20:21:02 !bfjoust clear (>)*9(>[-.-.-]>[+.+.+])*-1 20:21:03 mroman_.clear: points -21.36, score 7.40, rank 47/47 (--) 20:21:24 !bfjoust clear (>------------->+++++++)*4>>>>>(>[-.-.-])*-1 20:21:25 mroman_.clear: points -22.90, score 7.18, rank 47/47 (--) 20:21:28 !bfjoust clear (>------------->+++++++)*4>>>>(>[-.-.-])*-1 20:21:29 mroman_.clear: points -22.69, score 7.17, rank 47/47 (--) 20:21:39 !bfjoust clear (>------------->+++++++)*4>>>>(>[-.+.-])*-1 20:21:40 mroman_.clear: points -26.10, score 5.97, rank 47/47 (--) 20:21:47 !bfjoust clear (>------------->+++++++)*4>>>>(>[-.[+].-])*-1 20:21:47 mroman_.clear: points -29.36, score 4.54, rank 47/47 (--) 20:22:02 hm. 20:22:07 can you detect polarity? 20:22:39 i.e detect that decoys are >(+)*a>(-)*b or >(-)*a>(+)*b 20:22:58 i. mean 20:23:08 you could clear the first decoy and check if it took more than n cycle 20:23:27 if it took more you chose the wrong polarity 20:24:00 also is there some C-like meta-language that compiles to BFjoust :D? 20:25:23 !bfjoust sleep (+[.-])*-1 20:25:24 mroman_.sleep: points -26.24, score 4.12, rank 47/47 20:25:32 !bfjoust sleep (+[>.-])*-1 20:25:32 mroman_.sleep: points -45.90, score 0.04, rank 47/47 (--) 20:25:43 !bfjoust sleep (+[>-<])*-1 20:25:45 mroman_.sleep: points -24.57, score 4.32, rank 47/47 (--) 20:26:16 !bfjoust sleep ([>--<])*-1 20:26:20 mroman_.sleep: points -20.83, score 4.63, rank 47/47 (--) 20:26:25 !bfjoust sleep ([>(-)*5<])*-1 20:26:28 mroman_.sleep: points -23.93, score 4.31, rank 47/47 (--) 20:26:32 !bfjoust sleep ([>(-)*3<])*-1 20:26:36 mroman_.sleep: points -18.57, score 5.27, rank 47/47 (--) 20:26:53 !bfjoust sleep ([>(-)*3<+-])*-1 20:26:56 mroman_.sleep: points -22.14, score 5.59, rank 47/47 (--) 20:27:11 !bfjoust sleep (>[>(-)*3<+-])*-1 20:27:12 mroman_.sleep: points -34.57, score 2.44, rank 47/47 (--) 20:27:46 clearing and leaving decoys after clear is inefficient 20:28:04 because changes are huge that the opponent already advanced further on the tape than his decoys 20:28:25 so clearing the decoy wait for the two cycles and set up a decoy at that location isn't really a good choice so it seems to me 20:29:05 I'm not sure whether a (>-)*9(<)*9 decoy-setup-rush 20:29:15 followed by the real decoy setup (with larger) decoys 20:29:20 then followed by a clear is much better 20:29:47 also it looks like some programs detect your decoys 20:29:52 and jump past three or five of them 20:30:00 which makes them advance to your flag pretty quickly 20:30:57 hm 20:31:16 (>[])*-1 searches for a non empty cell 20:31:22 but this blocks until the cell reaches zero 20:31:27 so it's not really good 20:31:52 [wiki] [[Mindcrush]] N http://esolangs.org/w/index.php?oldid=40534 * 76.198.18.197 * (+2008) Created page with "==Mindcrush== '''Mindcrush''' is a [[Category:Brainfuck derivatives|Brainfuck derivative]] created by [http://petitcomputer.wikia.com/wiki/User:IAmAPersson IAmAPersson] and im..." 20:32:22 !bfjoust detect_clear (>[(>)*2(>[(+)*10.[-]])*-1])*-1 20:32:22 mroman_.detect_clear: points -9.55, score 12.85, rank 47/47 20:32:27 like that I think 20:32:49 [wiki] [[Mindcrush]] http://esolangs.org/w/index.php?diff=40535&oldid=40534 * 76.198.18.197 * (-14) /* Mindcrush */ removed superfluous header 20:33:18 Can "brainfuck derivative" be added to the spam blacklist 20:33:59 [wiki] [[Mindcrush]] http://esolangs.org/w/index.php?diff=40536&oldid=40535 * 76.198.18.197 * (-31) 20:34:20 !bfjoust search_and_destroy (>[>>>([(+)*10.[-]]>)*-1])*-1 20:34:21 mroman_.search_and_destroy: points -9.55, score 12.85, rank 47/47 20:34:28 !bfjoust search_and_destroy (>[>>>>([(+)*10.[-]]>)*-1])*-1 20:34:28 mroman_.search_and_destroy: points -9.26, score 13.41, rank 47/47 (--) 20:34:31 !bfjoust search_and_destroy (>[>>>>>([(+)*10.[-]]>)*-1])*-1 20:34:31 mroman_.search_and_destroy: points -8.38, score 13.88, rank 45/47 (+2) 20:34:34 !bfjoust search_and_destroy (>[>>>>>>([(+)*10.[-]]>)*-1])*-1 20:34:35 mroman_.search_and_destroy: points -13.45, score 11.42, rank 47/47 (-2) 20:34:43 !bfjoust search_and_destroy (>[>>>>([(+)*6.[-]]>)*-1])*-1 20:34:43 mroman_.search_and_destroy: points -6.52, score 15.06, rank 39/47 (+8) 20:34:49 !bfjoust search_and_destroy (>[>>>([(+)*6.[-]]>)*-1])*-1 20:34:49 mroman_.search_and_destroy: points -4.88, score 15.70, rank 35/47 (+4) 20:34:53 !bfjoust search_and_destroy (>[>>([(+)*6.[-]]>)*-1])*-1 20:34:53 [wiki] [[Mindcrush]] http://esolangs.org/w/index.php?diff=40537&oldid=40536 * 76.198.18.197 * (+1) /* Language Definition */ formatting fixes. formatting fixes everywhere 20:34:55 mroman_.search_and_destroy: points -6.57, score 14.30, rank 44/47 (-9) 20:34:57 !bfjoust search_and_destroy (>[>>>([(+)*6.[-]]>)*-1])*-1 20:34:57 mroman_.search_and_destroy: points -4.88, score 15.70, rank 35/47 (+9) 20:35:00 !bfjoust search_and_destroy (>[>>>([(+)*7.[-]]>)*-1])*-1 20:35:00 mroman_.search_and_destroy: points -5.36, score 15.75, rank 34/47 (+1) 20:35:03 !bfjoust search_and_destroy (>[>>>([(+)*8.[-]]>)*-1])*-1 20:35:04 mroman_.search_and_destroy: points -7.95, score 13.85, rank 45/47 (-11) 20:35:08 !bfjoust search_and_destroy (>[>>>([(+)*7[-]]>)*-1])*-1 20:35:09 mroman_.search_and_destroy: points -5.55, score 15.54, rank 35/47 (+10) 20:35:15 !bfjoust search_and_destroy (>[>>>([(+)*7.[-]]>)*-1])*-1 20:35:16 mroman_.search_and_destroy: points -5.36, score 15.75, rank 34/47 (+1) 20:35:20 !bfjoust search_and_destroy (>[>>>([(+)*7.[-].]>)*-1])*-1 20:35:21 mroman_.search_and_destroy: points -6.67, score 14.85, rank 40/47 (-6) 20:35:23 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>)*-1])*-1 20:35:24 mroman_.search_and_destroy: points -5.38, score 15.73, rank 34/47 (+6) 20:35:35 !bfjoust search_and_destroy (>)*7(>[>>>([(+)*7[-].]>)*-1])*-1 20:35:36 mroman_.search_and_destroy: points -9.67, score 13.27, rank 47/47 (-13) 20:35:39 !bfjoust search_and_destroy (>)*3(>[>>>([(+)*7[-].]>)*-1])*-1 20:35:40 mroman_.search_and_destroy: points -7.05, score 14.86, rank 41/47 (+6) 20:35:47 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>)*-1])*-1 20:35:47 mroman_.search_and_destroy: points -5.38, score 15.73, rank 34/47 (+7) 20:36:12 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>[(-)*7[+].]>)*-1])*-1 20:36:12 mroman_.search_and_destroy: points -5.90, score 15.07, rank 38/47 (-4) 20:36:17 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>)*-1])*-1 20:36:17 mroman_.search_and_destroy: points -5.38, score 15.73, rank 34/47 (+4) 20:36:23 ok 20:36:41 this should search for a decoy and then skip three cells and go in a clear 20:36:47 but it's obviously not that good :( 20:37:16 -!- S1 has joined. 20:38:04 Hey, mroman_, what exactly does the -1 do. In my current thinking, there isn't much use of having it exectued twice. 20:38:12 The loop looks like a lock 20:38:23 Oh, it's a clear 20:38:24 I thought it just means "keep doing this." 20:38:50 i think *-1 is the same as *9999 20:39:08 i.e. do this 9999 times 20:39:38 !bfjoust search_and_destroy (>[>([(+)*7[-].]>)*-1])*-1 20:39:39 mroman_.search_and_destroy: points -8.93, score 12.91, rank 47/47 (-13) 20:39:43 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>)*-1])*-1 20:39:44 mroman_.search_and_destroy: points -5.38, score 15.73, rank 34/47 (+13) 20:39:56 against slow decoy setups this will loose on small tapes 20:39:57 :) 20:40:04 because >>> just jumps of the tape 20:40:07 Why don't you skip 7 cells at the start? 20:40:13 Jafet: because that sucks 20:40:22 !bfjoust search_and_destroy (>)*7(>[>>>([(+)*7[-].]>)*-1])*-1 20:40:22 mroman_.search_and_destroy: points -9.67, score 13.27, rank 47/47 (-13) 20:40:25 ^- see 20:40:26 it sucks 20:40:33 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>)*-1])*-1 20:40:33 mroman_.search_and_destroy: points -5.38, score 15.73, rank 34/47 (+13) 20:40:44 I don't know why 20:40:49 but it does 20:40:54 !bfjoust search_and_destroy >(>[>>>([(+)*7[-].]>)*-1])*-1 20:40:55 mroman_.search_and_destroy: points -5.69, score 15.64, rank 35/47 (-1) 20:40:57 It sucks, but it looks more like a decoy hunter to me 20:41:01 !bfjoust search_and_destroy (>[>>>([(+)*7[-].]>)*-1])*-1 20:41:01 mroman_.search_and_destroy: points -5.38, score 15.73, rank 34/47 (+1) 20:41:02 -!- L8D has joined. 20:41:03 The mysteries of Brain Fuck. 20:41:14 Hello, L8D. 20:41:28 maybe with a decoy setup ... 20:41:29 AndoDaan: hi? that was weird 20:41:30 How's you're jousting going. 20:41:44 I know right. I'm still new here. 20:41:46 AndoDaan: Doing pretty well. My first and only two bots seem to have solid ranks 20:41:47 Too. 20:41:52 !bfjoust search_and_destroy (>(+)*13>(-)*7)*2(>[>>>([(+)*7[-].]>)*-1])*-1 20:41:52 mroman_.search_and_destroy: points -2.69, score 19.14, rank 23/47 (+11) 20:41:55 yeah 20:41:58 Good for yoda. 20:41:59 !bfjoust search_and_destroy (>(+)*13>(-)*7)*3(>[>>>([(+)*7[-].]>)*-1])*-1 20:42:00 mroman_.search_and_destroy: points 1.00, score 22.64, rank 13/47 (+10) 20:42:04 Well, the likely reason is there won't have been enough time after skipping 7 for the enemy to make decoys 20:42:04 !bfjoust search_and_destroy (>(+)*13>(-)*7)*4(>[>>>([(+)*7[-].]>)*-1])*-1 20:42:05 mroman_.search_and_destroy: points -1.17, score 20.43, rank 18/47 (-5) 20:42:12 !bfjoust search_and_destroy (>(+)*13>(-)*7)*4(>[([(+)*7[-].]>)*-1])*-1 20:42:13 mroman_.search_and_destroy: points -6.07, score 16.26, rank 31/47 (-13) 20:42:18 !bfjoust search_and_destroy (>(+)*13>(-)*7)*3(>[>>>([(+)*7[-].]>)*-1])*-1 20:42:18 mroman_.search_and_destroy: points 1.00, score 22.64, rank 13/47 (+18) 20:42:31 !bfjoust yoda (>)*8(>[(+)*5[-]])*21 20:42:31 So your program just runs off the end then 20:42:32 L8D.yoda: points -4.05, score 17.33, rank 30/47 (--) 20:42:37 !bfjoust yoda (>)*8(>[(+)*10[-]])*21 20:42:37 L8D.yoda: points -6.48, score 15.39, rank 37/47 (-7) 20:42:45 !bfjoust yoda (>)*8(>[(+)*3[-]])*21 20:42:45 L8D.yoda: points -5.45, score 16.40, rank 33/47 (+4) 20:42:50 !bfjoust yoda (>)*8(>[(+)*6[-]])*21 20:42:52 L8D.yoda: points -4.29, score 17.01, rank 30/47 (+3) 20:42:57 !bfjoust yoda (>)*8(>[(+)*5[-]])*21 20:42:58 L8D.yoda: points -4.05, score 17.33, rank 30/47 (--) 20:43:01 mwahahahaha 20:43:09 offset of 5 it is! 20:43:16 !bfjoust search_and_destroy (>(+)*13>(-)*7)*3(>[>>>([(+)*7[-].]>)*-1])*-1 20:43:16 mroman_.search_and_destroy: points 1.00, score 22.65, rank 13/47 (--) 20:43:19 !bfjoust search_and_destroy (>(+)*13>(-)*7)*3(>[>>>>([(+)*7[-].]>)*-1])*-1 20:43:20 mroman_.search_and_destroy: points 3.17, score 24.69, rank 8/47 (+5) 20:43:23 I prefer small and simplified programs... 20:43:25 !bfjoust search_and_destroy (>(+)*13>(-)*7)*3(>[>>>>>([(+)*7[-].]>)*-1])*-1 20:43:25 mroman_.search_and_destroy: points 4.31, score 26.06, rank 8/47 (--) 20:43:29 !bfjoust search_and_destroy (>(+)*13>(-)*7)*3(>[>>>>([(+)*7[-].]>)*-1])*-1 20:43:29 mroman_.search_and_destroy: points 3.17, score 24.69, rank 8/47 (--) 20:43:46 And L8D.blitz was one of the first out there that could beat nyuroki 20:44:07 ...because I specifically designed it to beat nyuroki... 20:44:27 I feel like I introduced a revolutionary concept to the bfjousting community 20:44:56 which is analyzing your competition and using offset/decoys that are just-high-enough 20:45:30 *-1 is actually the same as *100000. 20:45:41 Or any negative number, in fact. 20:48:46 now L8D.blitz is in 18th ;( 20:49:15 it was in 8th for a little bit and ventured back to 12-14th 20:51:34 Yeah 20:51:38 you got beat by me 20:51:42 who knows bfjoust for what 20:51:44 two days now? 20:51:49 ;) 20:52:09 I learned it last night... 20:52:16 hence why I've only maintained two bots 20:52:21 :( 20:52:34 but nice job with snail 20:52:35 hm 20:52:51 why snail? 20:52:57 search_and_destroy is way better 20:53:15 er...it barely beats blitz 20:53:20 ok 20:53:22 ah 20:53:31 snail leaves a slimy trail after clearing 20:54:05 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*11[-]]+)*21 20:54:07 L8D.blitz: points -1.43, score 19.01, rank 22/47 (-4) 20:54:11 o.o 20:54:15 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*9[-]]+)*21 20:54:15 L8D.blitz: points -2.71, score 18.33, rank 24/47 (-2) 20:54:20 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*10[-]]+)*21 20:54:20 L8D.blitz: points -0.17, score 20.27, rank 18/47 (+6) 20:54:30 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*12[-]]+)*21 20:54:30 L8D.blitz: points -1.88, score 18.61, rank 24/47 (-6) 20:54:38 You're decoys are uneven 20:54:48 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*13[-]]+)*21 20:54:49 L8D.blitz: points -1.07, score 19.07, rank 22/47 (+2) 20:54:52 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*14[-]]+)*21 20:54:53 L8D.blitz: points -1.74, score 18.60, rank 24/47 (-2) 20:54:56 !bfjoust blitz (>->+)*4((+)*11<(-)*12<)*4(>)*8(>[(+)*10[-]]+)*21 20:54:57 L8D.blitz: points -0.17, score 20.27, rank 18/47 (+6) 20:56:24 nyuroki loses against two of my bots 20:56:45 I see several bots have taken inspiration from my method... 20:57:14 with decoys of height 11 instead of 10 20:58:10 i use 13,7 alternating for decoys 20:58:35 [wiki] [[Mindcrush]] http://esolangs.org/w/index.php?diff=40538&oldid=40537 * 76.198.18.197 * (+8) added year 21:19:17 -!- AndoDaan has quit (Ping timeout: 260 seconds). 21:21:27 -!- AndoDaan has joined. 21:21:50 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 21:35:19 -!- GeekDude has joined. 21:53:44 -!- zolbap has joined. 21:54:52 -!- zolbap has quit (Client Quit). 21:55:23 -!- zolbap has joined. 21:57:25 -!- zolbap has quit (Client Quit). 21:58:08 -!- zolbap has joined. 22:05:49 -!- oerjan has joined. 22:08:06 [wiki] [[Special:Log/newusers]] create * BelleMendis * New user account 22:09:52 -!- AndoDaan has quit (Ping timeout: 250 seconds). 22:13:59 Hmm... 22:14:04 Now here's a conudrum 22:14:19 How do I combine an offset clear and an wiggle clear effectively 22:19:05 -!- zolbap has quit (Ping timeout: 260 seconds). 22:21:26 -!- AndoDaan has joined. 22:26:53 Lymia: http://esolangs.org/wiki/BF_Joust_strategies#Wiggle_clear 22:27:05 already covers how to do offsets with wiggle clears 22:36:49 -!- AndoDaan______ has joined. 22:37:02 -!- AndoDaan______ has quit (Client Quit). 22:37:23 -!- S1 has quit (Quit: S1). 22:39:39 -!- AndoDaan has quit (Ping timeout: 272 seconds). 22:46:28 -!- zolbap has joined. 22:46:34 -!- zzo38 has joined. 22:49:34 -!- Phantom_Hoover has quit (Ping timeout: 272 seconds). 22:59:00 [wiki] [[Talk:German]] http://esolangs.org/w/index.php?diff=40539&oldid=39384 * 77.181.56.186 * (+307) /* German compiler in German doesn't work */ new section 22:59:34 Das ist nicht gut 23:05:30 -!- Sorella has joined. 23:06:20 -!- Sorella has quit (Changing host). 23:06:20 -!- Sorella has joined. 23:18:14 -!- zolbap has quit (Quit: Leaving). 23:18:46 yeah, traces are finite so programs are too <-- hm the number should be calculable 23:19:17 oerjan: it's a little subtle, since e.g. ] and . can look equivalent in one trace 23:19:26 (but not under different circumstances) 23:19:49 elliott_: well i mean the number of trivially non-equivalent programs in 100000 steps 23:20:01 right 23:20:12 I agree it's calculable, just it's not quite as simple as "count the unique traces" or whatever 23:20:18 i am thinking you do it via conversion to the never-running ] form which people have alluded to 23:20:27 (the exponential size one) 23:21:08 essentially a kind of CPS transform 23:21:40 so a conventionally-written program would appear as an equivalent in the set, just in the weirdo form? 23:22:14 yes. it's not hard to translate back and forth as long as you have exponential time 23:24:30 in exponential form, a program is either one of +-<>. followed by a program for one less step, or a branch with two programs for one less step 23:25:47 you could even use the notation [P]Q for the latter and it would be legal BF joust syntax. 23:27:25 right. 23:27:26 so if you want to count them, f(n) = 5*f(n-1) + f(n-1)^2 23:27:45 where n is the number of steps 23:27:52 f(0) = 1 presumably 23:27:58 what about [P]P? 23:28:01 you don't want to count that 23:28:16 it's equivalent to .P, I guess 23:28:17 hm oh you want that to be treated as equivalent to .P 23:28:24 ok i wasn't thinking that far 23:28:43 (was briefly considering how to ignore the initial polarity) 23:28:55 there are maybe cases where there is a branch where one branch is always taken, too? I guess you could probably always make a counterprogram to show the difference 23:29:38 i said _trivially_ non-equivalent above, didn't i? i certainly meant to exclude looking at actual tape contents 23:30:54 i wasn't considering tape lengths either. or you might want to treat anything moving outside the largest possible tape as equivalent at that point 23:31:45 although your counterprogram idea does have a point, it might make it at least _theoretically_ computable even with a more refined equivalence 23:32:12 well, actually, _theoretically_ it's all finite. 23:32:59 > iterate (\f -> f*(5 + f)) 1 23:33:01 [1,6,66,4686,21982026,483209576974806,233491495280173380882643611666,5451827... 23:33:11 looks somewhat large 23:33:22 I guess adding a duplicate to the hill shouldn't change any rankings with the markov score system? maybe? 23:33:27 maybe it does 23:33:44 really I just want to know what the platonically winningest BF Joust program is 23:33:53 (I suspect it's tied) 23:35:37 heh 23:36:00 there's going to be a nash equilibrium somewhere 23:36:07 (possibly more than one) 23:36:15 yeah. 23:36:34 I'd be interested in how well the higher-up programs do against the actual hill. 23:37:30 hm a duplicate will always tie against itself, i think? 23:38:26 since nothing can break the symmetry 23:38:29 does , do something? 23:38:35 Bike: no 23:38:58 oh. i was thinking it could input from a random stream just to fuck all this up. 23:39:03 why am i not eating again 23:40:21 -!- boily has joined. 23:42:18 yes, X ties X, but I guess other programs then have to fight X twice? 23:42:27 and maybe that could dilute the scores? I don't understand the scoring well enough to say 23:42:42 possibly each X would just be betting half the score because of the tie, though 23:48:00 [wiki] [[Talk:Pada]] http://esolangs.org/w/index.php?diff=40540&oldid=17375 * 77.181.56.186 * (+460) Requesting clarification on jump 23:51:07 [wiki] [[Talk:Pada]] http://esolangs.org/w/index.php?diff=40541&oldid=40540 * 77.181.56.186 * (+38)