00:00:15 * oerjan swats ais523 -----### 00:00:18 ouch! 00:00:24 ais523: pretty epic story, though 00:01:26 yes 00:01:33 I wonder what she was meant to be employed for? 00:02:09 ais523: er? 00:02:18 ais523: what do you mean? 00:02:29 I mean, presumably there was some reason he was involved with her in the first place 00:02:33 ais523: girlfriend 00:02:35 read the post 00:02:36 ah 00:03:36 oh god, a jeff atwood post 00:03:38 * ehird runs for cover 00:09:04 wowwtfbbq 00:19:17 !bfjoust foobar >>>+>+[]<[--](-)*111(+)*100000 00:19:48 Score for jix_foobar: 0.0 00:20:11 what was the stepcount again? 00:20:18 100000 00:20:37 hum 00:27:34 ais523: Wolfram Research are hard at work adding pointless hardcoded gags to Wolfram|Alpha instead of improving it: http://www65.wolframalpha.com/input/?i=Where+is+Waldo%3F 00:28:12 Are you Skynet? 00:28:52 Totally. 00:31:29 !bfjoust foobar >>>>>>>>(>[+[+[+[+[+[-[-[-[@-----]]]]]]]]])*20 00:31:36 Score for jix_foobar: 13.2 00:33:11 @? 00:46:23 -!- AnMaster has joined. 00:49:52 breakpoint in my debugger ^^ 00:50:34 ah 00:53:09 !bfjoust foobar >>>>>>>>(>[+[+[+[+[+[-[-[-[@-----]]]]]]]]])*30 00:53:16 Score for jix_foobar: 13.3 00:55:09 !bfjoust foobar (+>[<(+++++[->-<]>+++++[-])*30])*30 00:55:17 Score for jix_foobar: 7.0 00:56:39 -!- inurinternet has quit (Read error: 113 (No route to host)). 01:00:24 -!- ais523 has quit (Remote closed the connection). 01:01:07 -!- ais523 has joined. 01:03:07 -!- oerjan has quit ("Good night"). 01:06:45 !bfjoust wiggle3 (>+>-)*4 (>([-)*5 [+++++ ([+)*20 [-] (])*20] (])*5)*30 01:06:54 Score for jix_wiggle3: 35.1 01:07:48 my goal is a short, readable version of wiggle that gets good results 01:08:59 "Why GIMP is Better than Adobe Photoshop" 01:09:00 RAGE 01:11:12 Why emacs is better than visual studio 01:11:39 -!- Corun has changed nick to Corun|away. 01:11:39 !bfjoust wiggle3 (>+>-)*4(>([-)*5[+++++([+)*8(+)*15[-](])*8](])*5+>([+)*5[-----([-)*8(-)*15[+](])*8](])*5-)*15 01:11:47 Score for jix_wiggle3: 35.6 01:13:26 -!- Corun|away has changed nick to Corun. 01:15:35 !bfjoust wiggle3b (>+>-)*4(>([-)*5[+++++([+)*8(+)*15[-.](])*8](])*5+>([+)*5[-----([-)*8(-)*15[+.](])*8](])*5-)*15 01:15:42 Score for jix_wiggle3b: 34.6 01:16:02 !bfjoust wiggle3b < 01:16:08 Score for jix_wiggle3b: 0.0 01:18:35 !bfjoust wiggle3b (>+>-)*4(>([-)*5[+++++([+)*8(+)*15[-.](])*8](])*5+>([+)*5[-----([-)*8(-)*15[+.](])*8](])*5-)*2(>([-)*5[+++++([+)*8(+)*15[-](])*8](])*5+>([+)*5[-----([-)*8(-)*15[+](])*8](])*5-)*15 01:18:43 Score for jix_wiggle3b: 26.9 01:19:55 !bfjoust wiggle3b < 01:20:01 Score for jix_wiggle3b: 0.0 01:30:36 jix: i don't suppose you could cut out that putting a dozen clones of the same thing on the hill bit? 01:31:21 unless you think it'd be fun if the rest of us did the same thing 01:33:11 all wiggle versions on the server are different 01:33:40 except the wiggle3b version which was a try to get better than wiggle3 and thus got removed as it wasn't 01:34:00 they'r esame enough to have the same name eh? 01:34:01 jix: same basic implementation = same name 01:34:24 well they are as similar as defend* 01:34:46 they share the same concept 01:35:02 there's 3 defends, one is majorly different from the other two.. but when i said that i saw like 5 wiggles on the hill 01:35:17 * nescience shrugs 01:35:18 nescience: there were 4 and one was already deleted by sucide 01:35:36 correction: 5 and one is now a suicide 01:35:41 jix__wiggle1.bfjoust 01:35:43 jix_wiggle1.bfjoust 01:35:46 jix_wiggle2.bfjoust 01:35:49 jix_wiggle3.bfjoust 01:35:50 jix_wiggle3b.bfjoust 01:35:53 oh didn't saw that jix__ one 01:35:58 that is left there by accident 01:36:00 -!- jix has changed nick to jix_. 01:36:05 !bfjoust wiggle1 < 01:36:11 Score for jix__wiggle1: 0.0 01:36:14 -!- jix_ has changed nick to jix. 01:36:15 if you want to try something else, just reuse the name.. that way you don't bump all the variety (?) off the hill 01:36:16 heh 01:36:27 jix: you could have just done !bfjoust _wiggle1 01:36:32 i mean, if you want to try and see if some code does better than som eother code 01:36:37 nescience: ais523 just told me a few hours ago to not do that.... 01:36:55 wat 01:36:59 but instead use a different name and then suicide or replace it 01:37:11 so i don't delete my good programs with bad testing programs 01:37:17 you can always put them back 01:37:28 but i'm talking variants, not new programs 01:37:57 yeah ais523's wrong; his suggestion would clutter the hill 01:38:05 well wiggle1,2,3 are different programs 01:38:08 if you are testing if having 3 +s does better than 1, it doesn't make sense to submit a bunch of warriors, thus knocking off stuff for no reason 01:38:10 he was angry jix lost space 4 or sth 01:38:15 ehird: I don't like good programs being deleted 01:38:22 if you have a program that does well, use another name for testing 01:38:25 ais523: even for 3 seconds? 01:38:27 that's ridiculous 01:38:33 and replace the good program even when one of the tests does better 01:38:59 well i for myself don't really care ^^ 01:39:20 so i'll just do _something_ now as someone will complain anyway 01:39:30 lol 02:02:11 AnMaster: btw you can do watercooling without a pump 02:02:14 w/ a reserator 02:02:29 can cool more things than heatpipes but less than pumpful watercooling 02:15:42 -!- Patashu has joined. 02:18:28 !bfjoust wiggle3 http://nopaste.com/p/a2wMZwDJe/txt 02:18:37 Score for jix_wiggle3: 33.7 02:32:47 !bfjoust wiggle3 http://nopaste.com/p/axaXCQAjY/txt 02:32:56 Score for jix_wiggle3: 35.2 02:37:48 !bfjoust wiggle3 http://nopaste.com/p/aP6cwk1x5/txt 02:37:56 Score for jix_wiggle3: 35.2 02:40:15 !bfjoust wiggle3 http://nopaste.com/p/aUeFcpPwdb/txt 02:40:23 Score for jix_wiggle3: 36.6 02:45:13 !bfjoust wiggle3 http://nopaste.com/p/aJDTST6eN/txt 02:45:20 Score for jix_wiggle3: 37.0 02:48:23 !bfjoust wiggle3 http://nopaste.com/p/aWq3CeYTo/txt 02:48:30 Score for jix_wiggle3: 42.3 02:53:10 wtf pasting readable code 02:53:10 ;p 02:53:15 you have one too many decoys 02:53:37 what is a decoy? 02:53:46 er, your "farm" 02:53:48 is one cell too big 02:53:53 you'll lose on field length 10 02:53:56 i do? 02:54:04 jix: a tape element near your flag set to a nonzero value in order to slow down the opponent 02:54:12 ah 02:54:19 near or far from your flag, it doesn't really matter 02:54:30 more effective near because there's less chance your opponent will already be past where you are putting it 02:54:38 anyway, 02:54:46 !........! 02:54:54 field length 10, 8 cells between your flag and their fla 02:54:54 g 02:54:59 so 9 is too far 02:55:02 yeah 03:03:47 -!- myndzi has quit (Remote closed the connection). 03:05:30 -!- inurinternet has joined. 03:05:30 -!- inurinternet has quit (Remote closed the connection). 03:05:46 !bfjoust wiggle3 http://nopaste.com/p/ao0IKplNq/txt 03:05:50 -!- inurinternet has joined. 03:05:53 Score for jix_wiggle3: 52.8 03:05:54 might be overtuned to one opponent 03:05:57 or not ^^ 03:07:28 -!- myndzi has joined. 03:10:55 !bfjoust wiggle3 http://nopaste.com/p/apkixpgyr/txt 03:11:04 Score for jix_wiggle3: 46.4 03:12:07 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)). 03:12:23 it's interesting what you can do in just bf 03:12:44 !bfjoust wiggle3 http://nopaste.com/p/avON2JNox/txt 03:12:51 Score for jix_wiggle3: 52.6 03:13:17 -!- puzzlet has joined. 03:13:26 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)). 03:13:36 hmmm i'm getting close to the top with my original idea :) 03:13:41 (and even readable code) 03:16:47 !bfjoust wiggle3 http://nopaste.com/p/aCZN6xEspb/txt 03:16:56 Score for jix_wiggle3: 40.8 03:17:00 :/ 03:18:23 -!- puzzlet has joined. 03:18:29 !bfjoust wiggle3 http://nopaste.com/p/aiTnviDic/txt 03:18:38 Score for jix_wiggle3: 38.0 03:20:07 !bfjoust wiggle3 http://nopaste.com/p/a50Zu4QqJ/txt 03:20:15 Score for jix_wiggle3: 52.6 03:21:48 Everyone knows that sentence fragments make perfectly good sentences. 03:22:02 Received bobcat instead of office chair. Would not buy again. 03:23:17 !bfjoust wiggle3 http://nopaste.com/p/aY58XLAaO/txt 03:23:26 Score for jix_wiggle3: 43.7 03:25:51 !bfjoust wiggle3 http://nopaste.com/p/a1e2qbAt6/txt 03:26:01 Score for jix_wiggle3: 44.4 03:26:35 !bfjoust wiggle3 http://nopaste.com/p/aLm9yG2V6/txt 03:26:44 Score for jix_wiggle3: 42.0 03:29:58 !bfjoust wiggle3 http://nopaste.com/p/aUXmYc81t/txt 03:30:08 Score for jix_wiggle3: 41.9 03:30:48 !bfjoust wiggle3 http://nopaste.com/p/agI369nDf/txt 03:30:58 Score for jix_wiggle3: 41.8 03:31:19 !bfjoust wiggle3 http://nopaste.com/p/alPD4N8vv/txt 03:31:28 ! 03:31:29 Score for jix_wiggle3: 42.0 03:31:35 jix is walling again. 03:32:44 !bfjoust wiggle3 http://nopaste.com/p/ar4WKzf4L/txt 03:32:53 Score for jix_wiggle3: 46.7 03:33:31 !bfjoust wiggle3 http://nopaste.com/p/aJfWVa4lp/txt 03:33:40 Score for jix_wiggle3: 44.0 03:33:45 Hmm. 03:34:03 !bfjoust wiggle3 http://nopaste.com/p/aiUNLWjC7/txt 03:34:09 !bfjoust evil http://normish.org/ihope/evil 03:34:12 Score for jix_wiggle3: 45.3 03:34:19 once you fix one another one breaks 03:34:53 http://normish.org/ihope/evil blocks. 03:35:04 Hopefully, EgoBot is not thereby dead. :-P 03:35:15 If it is, I can free it. 03:35:46 !help 03:35:46 help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 03:35:52 Doesn't seem dead. 03:35:53 !ps 03:36:19 Wä wä wä. 03:36:35 !bfjoust wiggle3 http://nopaste.com/p/aZLIIPjWjb/txt 03:36:44 Score for jix_wiggle3: 41.8 03:37:52 !bfjoust wiggle3 http://nopaste.com/p/anH9RMHwdb/txt 03:38:02 Score for jix_wiggle3: 45.2 03:39:03 -!- pikhq has quit (Read error: 104 (Connection reset by peer)). 03:45:14 !bfjoust wiggle3 http://nopaste.com/p/aNJawZgp3/txt 03:45:25 Score for jix_wiggle3: 46.2 03:47:29 !bfjoust wiggle3 http://nopaste.com/p/a3Zw4eM4Z/txt 03:47:39 Score for jix_wiggle3: 47.2 03:51:17 !bfjoust wiggle3 http://nopaste.com/p/aSiaC5KB6/txt 03:51:27 Score for jix_wiggle3: 51.2 03:52:12 !bfjoust wiggle3 http://nopaste.com/p/ak84GnaGeb/txt 03:52:22 Score for jix_wiggle3: 48.9 03:52:58 !bfjoust wiggle3 http://nopaste.com/p/aGqKUZTLnb/txt 03:53:08 Score for jix_wiggle3: 48.6 03:53:29 !bfjoust wiggle3 http://nopaste.com/p/alRX7Ro1eb/txt 03:53:40 Score for jix_wiggle3: 48.2 03:54:14 !bfjoust wiggle3 http://nopaste.com/p/aG16QnTGY/txt 03:54:24 Score for jix_wiggle3: 49.5 03:55:09 !bfjoust wiggle3 http://nopaste.com/p/adi0Sfe7c/txt 03:55:19 Score for jix_wiggle3: 42.1 03:55:58 !bfjoust wiggle3 http://nopaste.com/p/aEKIPPU7nb/txt 03:56:09 Score for jix_wiggle3: 50.9 03:56:46 !bfjoust wiggle3 http://nopaste.com/p/aTcBwdEocb/txt 03:56:57 Score for jix_wiggle3: 52.3 03:57:50 !bfjoust wiggle3 http://nopaste.com/p/aH8BwhaPdb/txt 03:58:00 Score for jix_wiggle3: 52.6 03:58:39 !bfjoust wiggle3 http://nopaste.com/p/aZ0bbURY6/txt 03:58:48 Score for jix_wiggle3: 57.2 03:58:54 -!- coppro has quit ("The only thing I know is that I know nothing"). 03:59:21 !bfjoust wiggle3 http://nopaste.com/p/alx52eZ50/txt 03:59:31 Score for jix_wiggle3: 57.3 03:59:31 oo, 57.2 03:59:33 .3 :D 03:59:46 so close 04:00:10 experimental: 04:00:14 !bfjoust wiggle3 http://nopaste.com/p/ajrNY51ag/txt 04:00:23 Score for jix_wiggle3: 56.7 04:00:45 !bfjoust wiggle3 http://nopaste.com/p/aRluO2Qhnb/txt 04:00:54 Score for jix_wiggle3: 53.1 04:01:33 !bfjoust wiggle3 http://nopaste.com/p/av8GVZbvn/txt 04:01:43 Score for jix_wiggle3: 57.3 04:02:10 !bfjoust wiggle3 http://nopaste.com/p/awkAoi7wj/txt 04:02:21 Score for jix_wiggle3: 57.3 04:02:26 hah 04:02:28 finally 04:03:26 now you can delete 1, 2, and 3b 04:03:31 unless they use a radically different strategy 04:03:42 which reminds me, I should delete defend6 04:03:46 !bfjoust defend6 < 04:03:52 Score for ais523_defend6: 0.0 04:04:09 thanks -_- 04:04:15 and i thought i could go to bed now ^^ 04:04:20 I'm leaving 7 there, anyway 04:05:08 !bfjoust wiggle3 http://nopaste.com/p/aORaPkjSt/txt 04:05:18 Score for jix_wiggle3: 59.4 04:05:58 ais523: this is why your thing about submitting duplicates sucks 04:06:06 myndzi: why? 04:06:12 because it messes up the scoreboard 04:06:13 ? 04:06:17 now there's 3, possibly to be 4 or 5 suicides on the hill 04:06:25 they'll disappear in due course 04:06:34 but there's no reason for them to be there 04:06:47 instead they alter the scores 04:06:59 I don't think having a suicide alters anything? 04:07:02 by favoring certain strategies (namely, fast attack) 04:07:13 Patashu: did you watch what just happened? 04:07:17 sorry, no 04:07:29 hmm 04:07:34 i tuned my program against defend 04:07:34 oh, I can see how it might have an effect 04:07:39 it gives the same number of wins to everyone 04:07:39 (there were three variants) 04:07:45 now were there are only two left... 04:07:48 i lost points of course 04:08:04 Patashu: excuse me, i was confusing myself :P 04:08:14 you are correct of course, it gives the same points to everyone 04:08:21 but it still shortens the playing field too 04:08:28 just submit filler 04:08:40 i'd rather have whatever warriors got knocked off back 04:08:48 hehe 04:08:49 !bfjoust lazy >(+)*5>(-)*5>(+)*5>(-)*5>(-)*5>(+)*5>(+)*5>(-)*5(>(+.)*129)*21[-]((-)*2048(+)*2048.)*2 04:08:49 submitting filler isn't much better than submitting < :P 04:08:56 Score for Patashu_lazy: 15.7 04:09:00 !bfjoust matador >+[]<(++-)*1000+(--+)*1000(>)*9(>[+][-])*21 04:09:01 !bfjoust waiter ((+--)*10000(-++)*10000)*2(+)*10000(-)*10000(+-)*10000(-+)*10000 04:09:13 lol. they were yours? :P 04:09:18 which ones? 04:09:23 the ones that got knocked off 04:09:25 Score for Patashu_matador: 8.9 04:09:26 Score for Patashu_waiter: 17.4 04:09:27 no 04:09:30 I'm just subbing them now 04:09:30 !bfjoust juggernaut >+>+>->->+>+>->-(>(-)*128.-.+)*29 04:09:37 Score for Patashu_juggernaut: 10.5 04:09:38 !bfjoust 2_3weave (>(+)*23>(-)*23)*1>+>->->+>+>-(>[(-)*20[+]]->[(+)*21[-]]+>+)*10 04:09:47 Score for Patashu_2_3weave: 17.1 04:10:13 anything's better than < 04:10:15 -!- Corun has quit ("Leaving..."). 04:10:25 i think that my 3 wiggles are different enough to have a place on the hill 04:10:45 i'll wiggle you you.. wiggly... thing! 04:10:46 :P 04:11:30 they use a different structure... the only thing they share is that they try to get a cell to zero fast by using nested loops going in different directions 04:11:46 oh interesting 04:11:47 :) 04:11:53 wiggle1 is just a very simple implementation of that 04:12:06 someone was doing that a few days ago, but you seem to have had much more success with it ;) 04:12:06 so it goes...+--+++----+++++ etc and keeps checking? 04:12:13 or something more optimized 04:12:23 i tried using nested loops for a similar reason, but it didn't work out 04:12:27 it does -[-[-[-[++++[+ ... 04:12:28 i thought it was the speed loss because of ]]]]]]] 04:12:30 yeah 04:12:33 I was thinking 04:12:37 check five values one way, check five the other, etc 04:12:38 would be faster 04:12:42 but it might have been the hash rng at that time 04:13:08 on the other hand, i guess it's faster than -.-.-.-. for example 04:13:13 in wiggle 2 i did exactly the same... but "elminated" the ]]]]] 04:13:15 in cases where all those aren't necessary 04:13:29 which turns it into a rather large program 04:13:31 i see plenty of them? 04:13:42 myndzi: but they will be evaluated much less 04:13:56 worst case every 4 cells i think 04:14:14 i was going to make one where i nested everything so it never executes ]]]]] at all ;p 04:14:24 myndzi: would have been to large for that 04:14:34 (my definition of too large) 04:14:42 -!- Patashu has quit ("Patashu/SteampunkX - MSN = Patashu@hotmail.com , AIM = Patashu0 , YIM = Patashu2 , Googletalk = Patashu0@gmail.com ."). 04:14:44 indeed, it was a pain in the ass 04:14:55 just take a look at that http://codu.org/eso/bfjoust/in_egobot/jix_wiggle2.bfjoust 04:15:03 i did 04:15:26 and in wiggle3 i tried to do a tradeoff 04:15:36 a) i setup proper decoys 04:15:50 b) i combine the "wiggle" technique with the +++++[-] thing 04:15:52 (i should have let you take those 1/20th losses ;) 04:16:03 -!- bsmntbombdood has joined. 04:16:10 i noticed a lot of contstant fiddling 04:16:26 the way you did it allows you to be pretty highly tuned to the hill contents 04:16:32 c) i use [-.] [+.] to defeat defend 04:16:42 (but only for the 2nd and 3rd non zero cell) 04:17:00 jix: what about for the 4th? do you go back to [-] and [+]? 04:17:06 if so, that's what's defeating defend9 04:17:15 he does 04:17:16 + 04:17:18 -. 04:17:19 -. 04:17:20 +. 04:17:21 + 04:17:25 ah 04:17:35 myndzi: you got one additional -. there 04:17:43 * myndzi refreshes 04:17:45 well, in that case I could probably beat wiggle just by giving defend7 a few more decoys 04:17:59 and then he could beat defend by adding a few more lines too 04:18:03 lols 04:18:09 why don't you just add 30 decoys 04:18:10 :) 04:34:18 Mao mao mao mao mao mao mao mao mao mao mao mao mao mao mao mao mao mao mao mao. 04:39:58 -!- pikhq has joined. 04:44:00 -!- ais523 has quit (Remote closed the connection). 04:46:00 -!- pikhq has quit (Read error: 54 (Connection reset by peer)). 04:46:10 -!- ais523 has joined. 04:49:36 -!- pikhq has joined. 04:51:42 GregorR: i dont think mao is like buffalo, in that respect. 05:11:57 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)). 05:17:04 Score for kerlo__evil: 4.6 05:17:53 Oh. 05:17:56 -!- pikhq has quit (Read error: 54 (Connection reset by peer)). 05:18:10 Wow. EgoBot was loating http://normish.org/ihope/evil for that long. 05:21:16 -!- pikhq has joined. 05:22:53 -!- psygnisfive has joined. 05:57:01 -!- myndzi\ has joined. 05:58:29 -!- psygnisfive has quit (Read error: 60 (Operation timed out)). 05:59:22 -!- psygnisfive has joined. 06:04:36 -!- myndzi has quit (Read error: 60 (Operation timed out)). 06:18:33 dbc: Ah, yes. You're in here, too. XD 06:18:43 Yeah :) 07:19:27 -!- Sgeo has quit (Read error: 110 (Connection timed out)). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:12:54 -!- KingOfKarlsruhe has joined. 08:20:18 -!- amca has joined. 08:39:59 -!- inurinternet has quit (Success). 08:56:39 AnMaster: http://lifthrasiir.jottit.com/exe i revised the spec. does it look reasonable? 09:00:45 -!- Slereah has joined. 09:53:28 -!- Patashu has joined. 09:56:40 lifthrasiir: Is it only possible to have sync io in such an OS, or would async io be also possible? 10:13:16 amca: have you looked at $05 xxxx 06..08 commands? 10:13:33 * amca looks 10:15:53 * GregorR-L puts forth again that any esolang-to-OS-through-stdout protocol should require or at least allow a \n at the end of every command sent. 10:16:24 Since some annoying interps (read: any interp that uses C stdio and doesn't fflush) will otherwise not send its data. 10:16:33 GregorR: oh, that's good idea. 10:17:14 I've mentioned that twice in previous (aborted or at least mostly aborted) such systems :P 10:17:29 :p 10:17:36 "# $05 xxxx 09 returns ??, which is true only if the handle is available for reading. On failure it returns error. # $05 xxxx 0a is same to $05 xxxx 09, but it's for writing." <- does that refer to checking if the io is ready-to-send/receive? 10:17:47 And in a week, somebody will ask why that's required, nobody will be able to answer, and it will disappear again, only for me to come back and explain it again. Oh, the cycle of annoying X-P 10:18:03 amca: something like select(2) system call. 10:18:16 Ah 10:18:21 tnx 10:18:31 (maybe i have to mention such equivalences) 10:18:44 GregorR-L: :p 10:18:58 lifthrasiir: Sorry, it's just happened before :P 10:19:05 GregorR-L, do you have any suggestions didn't make it into previous systems? 10:19:24 That's the only suggestion I ever had, I waited for them to mature a bit so I could poke around, and they never did. 10:19:38 Nobody can seem to get past the "idea" stage and to the "interpreter" stage for some reason. 10:20:13 that's bad. 10:20:26 but afaik PSOX has some implementation... 10:20:27 had* 10:21:38 lifthrasiir: Which part deals with signals, or h/ware interrupts/handlers? 10:22:44 amca: currently not, maybe added soon. 10:22:52 * lifthrasiir afk 10:35:19 :o 12:41:13 -!- clog has joined. 12:41:13 -!- clog has joined. 12:41:48 clog: We missed you! 12:44:08 * oerjan hugs clog 13:12:48 -!- tombom has joined. 13:13:01 -!- GregorR-L has quit (Read error: 110 (Connection timed out)). 13:34:27 From the spam directory: "Subject: Fortune cookies help cops naab suspect" 13:35:06 * oerjan has a naaging doubt about the spelling there 13:35:15 heh 13:43:02 lifthrasiir, the long integer format seems screwy 13:43:19 but interesting 13:49:45 rofl (but old) http://www.theonion.com/content/node/30832?utm_source=onion_rss_daily 14:10:48 -!- tombom has quit ("Peace and Protection 4.22.2"). 14:14:44 -!- Corun has joined. 15:34:31 -!- oerjan has quit ("leaving"). 15:50:36 -!- Slereah has quit ("Leaving"). 15:59:51 -!- amca has quit ("the teacher I mean"). 16:14:55 -!- impomatic has joined. 16:15:41 -!- Slereah has joined. 16:24:38 -!- Slereah_ has quit (Read error: 110 (Connection timed out)). 16:35:50 -!- Corun has changed nick to Corun|away. 17:05:40 -!- KingOfKarlsruhe has quit (Remote closed the connection). 17:09:56 -!- M0ny has quit (Read error: 60 (Operation timed out)). 17:13:59 -!- Corun|away has changed nick to Corun. 17:14:44 I'm still thinking about a good I/O model for Migol. I want something elegant that jumps to the I/O subroutine, executes the I/O, modifies the memory and jumps back to the main program, without messing up the language. 17:16:09 -!- Patashu has quit ("Patashu/SteampunkX - MSN = Patashu@hotmail.com , AIM = Patashu0 , YIM = Patashu2 , Googletalk = Patashu0@gmail.com ."). 17:19:53 -!- Gracenotes has quit ("Leaving"). 17:21:26 hm, what about sections, similar to actual assembly languages? 17:23:29 -!- Judofyr has joined. 17:23:30 tetha: Sections? 17:25:16 MigoMipo: define a section as a sequence of statements, and entering a statement as setting the program counter to the first element in a section 17:25:46 MigoMipo: that way, you could have interrupt-based IO by simply executing the IO-section whenever the input-interrupt occurs (besides executing the code-section by default) 17:26:32 this would also generalize nicely to all kinds of interrupts :) 17:28:02 tetha: Sounds interesting, can it be used as an interface to for example C libraries? Jumping to an another Migol code section seems pointless. 17:29:33 MigoMipo: I think so. If you can map C's calling conventions into your memory model (which should be possible), then you could define something like a c-section which is entered upon the right interrupt 17:29:38 -!- Judofyr has quit (Remote closed the connection). 17:35:08 -!- Judofyr has joined. 17:36:45 -!- AnMaster has quit ("ZNC - http://znc.sourceforge.net"). 17:49:07 -!- inurinternet has joined. 17:57:51 -!- M0ny has joined. 18:00:45 -!- kar8nga has joined. 18:03:35 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)). 18:04:59 -!- kar8nga has joined. 18:11:47 -!- Sgeo has joined. 18:26:36 -!- olsner has joined. 18:28:42 -!- AnMaster has joined. 18:47:18 -!- jix_ has joined. 19:01:52 -!- jix has quit (Read error: 110 (Connection timed out)). 19:02:58 -!- sebbu2 has joined. 19:03:32 -!- jix_ has changed nick to jix. 19:18:10 -!- sebbu has quit (Read error: 110 (Connection timed out)). 19:25:35 -!- Judofyr_ has joined. 19:27:00 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)). 19:38:58 -!- tetha has quit (Nick collision from services.). 19:39:06 -!- tetha has joined. 20:03:29 -!- Corun has changed nick to Corun|away. 20:06:35 -!- tombom has joined. 20:22:08 -!- Corun|away has changed nick to Corun. 20:24:58 -!- oerjan has joined. 20:30:57 yay back on usable screen resolution 20:31:30 320x200 CGA 20:31:36 ___ 20:31:42 __ _ _ __ ___ _ _ ___ _ _ ___ _ _ _ __ __|__ \ 20:31:42 / _` | '__/ _ \ | | | |/ _ \| | | | / __| | | | '__/ _ \/ / 20:31:42 | (_| | | | __/ | |_| | (_) | |_| | \__ \ |_| | | | __/_| 20:31:42 \__,_|_| \___| \__, |\___/ \__,_| |___/\__,_|_| \___(_) 20:31:42 |___/ 20:32:39 * pikhq high-fives Ørjan 20:32:49 Can't read that in my IRC client, had to paste it to notepad. 20:33:07 impomatic: ... You don't have monotype IRC? 20:33:14 Monospaced, rather. 20:33:19 That's... Wow. 20:33:33 No, it seems not 20:34:02 well it's probably not _that_ important 20:37:41 -!- impomatic has quit ("connection terminated by profanity filter"). 20:40:51 oerjan, 1400x1050 20:41:25 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)). 20:41:38 -!- Corun has changed nick to Corun|away. 20:41:57 oerjan, instead of 1280x1024 on TFT with 1400x1050 as native res! 20:42:03 (which seriously sucked) 20:44:53 why were you using that again? 20:45:34 Argh, LCDs not being run at native resolution! 20:46:10 usually either the graphics or the monitor is able to do letterboxing 20:46:55 Monitors don't letterbox. Evil, isn't it? 20:55:15 -!- Corun|away has changed nick to Corun. 21:11:45 -!- Corun has changed nick to Corun|away. 21:14:01 -!- M0ny has quit ("Read error: 182 (Connection reset by beer)"). 21:44:05 -!- Slereah_ has joined. 21:47:34 -!- Judofyr has joined. 21:52:25 11:03 GregorR-L: Since apparently the master logging bots are prone to deadeadead. 21:52:27 clog is rock-solid 21:52:37 tunes.org is not 21:52:57 19:33 pikhq: impomatic: ... You don't have monotype IRC? 21:52:57 19:33 pikhq: Monospaced, rather. 21:52:58 19:33 pikhq: That's... Wow. 21:53:00 nor I 21:53:39 i wrote two silly things today: 21:53:48 -!- MigoMipo has quit ("QuitIRCServerException: MigoMipo disconnected from IRC Server"). 21:54:06 http://pastie.org/499629.txt?key=turhqwrztzeyugdoq3wzq 21:54:07 http://pastie.org/499631.txt?key=cosj6kske51habowtnh5qa 21:54:20 both have a rather complex backstory only comprehensible if your mind is identical to mine. 21:54:55 clog is rock-solid tunes.org is not <-- huh? 21:55:01 oerjan: what? 21:55:15 clog logs on tunes.org 21:55:18 i know 21:55:28 i'm saying that tunes.org is the problem; clog itself is rock-solid software that never crashes 21:55:38 hm 21:55:39 it just lacks, y'know, any open source code. 21:55:45 -!- Corun|away has changed nick to Corun. 21:55:52 it doesn't help that the tunes project is dead^A(g64,g64) 21:56:38 -!- Slereah has quit (Read error: 110 (Connection timed out)). 21:58:25 dead? 22:00:19 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)). 22:02:49 !c printf("%d\n", 0xdead) 22:02:51 57005 22:03:19 o 22:03:41 Busy beaver instead 22:04:40 busy beaver is computable isn't it 22:04:46 if you have a machine more powerful than what you're trying to busy beaver 22:05:14 um... 22:05:28 Well, you know it halts, so I guess you could just run every possible program of that length in parallel 22:05:33 exactly 22:05:42 takes a fuck of a long time, but very possible 22:05:59 And then count the 1's 22:06:12 yep 22:06:15 Maybe by using the LOVE MACHINE 9000 22:06:19 oerjan: prove me wrong 22:06:46 Here is a little beaver of hers : 22:06:47 [ 22:06:47 a[0:P1RI:b;1:P1LE:b]| 22:06:47 b[0:P1LE:a;1:P0LE:c]| 22:06:47 c[0:P1RIHA:c;1:P1LE:d]| 22:06:47 d[0:P1RI:d;1:P0RI:a] 22:06:49 ] 22:06:51 [0=0;ims=a;d13;vh;etTecT;t1] 22:06:53 :D 22:06:54 assuming you mean what i think you mean, it seems fine 22:07:09 oerjan: yeah; so why is busy beaver considered uncomputable? 22:07:18 a turing machine can calculate BB(x) for all x in finite time 22:07:22 well 22:07:25 apart from non-halting things 22:07:30 ehird: because it doesn't work if some of the programs you test might _not_ halt 22:07:43 oerjan: if it was an FSM this'd be trivial 22:07:44 grumble 22:08:05 oerjan: if you run it all in parallel and keep a running total you can oslev it practically (with a few billion years or thereabouts) 22:08:09 but that's not a pure solution 22:08:21 "oslev"? 22:08:23 oslev? 22:08:31 oerjan: solve 22:08:33 solve? 22:08:35 Ah 22:08:44 oslev: Solve practically but not theoretically. 22:08:44 :P 22:09:00 But yeah, it's true that you might have one that seems to not stop, but will 22:09:03 ehird: it's not a few billion years. once you get up to the length where you can embed an ackermann function... 22:09:05 In the distant future 22:09:09 oerjan: true 22:09:14 Slereah_: yeah 22:09:17 -!- Judofyr_ has quit (Read error: 113 (No route to host)). 22:09:22 BB(x,y) where y is a parameter for size of an FSM can be done trivially 22:09:23 though 22:38:35 -!- nooga has joined. 22:39:26 hello þar 22:39:49 Ð. 22:40:12 -!- tombom has quit ("Peace and Protection 4.22.2"). 22:42:56 pikhq: gimme one of those fancy f's 22:43:15 You mean s? 22:43:18 Yes. 22:43:23 I think I can ſee about getting you one. 22:43:27 \o/ 22:45:05 ſoo þar 22:45:08 soo thar 22:45:16 pikhq: Argh. Unicode has small-caps, but not for all letters. 22:45:20 (They're just for IPA) 22:45:30 Ugh. 22:45:43 wait 22:45:44 yes they do 22:45:45 \o/ 22:50:56 pikhq: 22:50:57 Brethren, and Fellow Citizens ! 22:50:58 22:50:59 Yᴏᴜ may depend, that thoſe odius Miſcreants and deteſ– 22:51:01 table Tools to Miniſtry and Governor, the Tᴇᴀ Cᴏɴꜱɪɢɴᴇᴇꜱ, 22:51:03 (thoſe Traitors to their Country, Butchers, who have done, and are do– 22:51:05 ing every Thing to Murder and deſtroy all that ſall ſtand in the Way 22:51:07 of their private Intereſt,) are determined to come and reſide again in 22:51:09 the Town of Boſton. 22:51:11 22:51:13 I therefore give you this early Notice, that you may hold yourſelves 22:51:15 in Readineſs, on the ſhorteſt Notice, to give them ſuch a Reception, as 22:51:17 ſuch vile Ingrates deſerve. J O Y C E, jun. 22:51:19 (Chairman of the Committee for Tarring and Feathering. 22:51:21 22:51:23 ☞ If any Perſon ſhould be ſo hardy as to Tear this down, they may 22:51:25 expect my ſevereſt Reſentment. J. jun. 22:51:30 I can't see all of that; not all of the smallcaps show up right. 22:52:02 pikhq: I can give you a plaintext document with which to use another font on. 22:52:18 Mmkay; URL? 22:52:28 http://pastie.org/499720.txt?key=thydhbk8cjeonqchaaagq (also added a space to the first line, to align as in the original letter) 22:52:35 well, notice 22:52:43 http://upload.wikimedia.org/wikipedia/en/0/07/BostonTeaPartyJoyceNotice.jpg ← I think I did a pretty good reproduction 22:52:52 Thare. 22:52:52 Designed for a monospaced font 22:55:23 -!- Patashu has joined. 22:55:35 heh— [[In the colonies, Benjamin Franklin stated that the destroyed tea must be repaid, all 90,000 pounds.]] 23:02:02 -!- FireFly has quit ("Later"). 23:02:12 loeb loeb loeb loeb loeb loeb 23:02:36 -!- BeholdMyGlory has quit (Remote closed the connection). 23:02:40 Who's (a) around, (b) knows haskell? 23:02:49 hi 23:02:57 * pikhq pokes oerjan 23:04:24 'lo there 23:04:36 ...aw damn, I had an idea but I realised that it required a type of (a = a -> b) 23:04:55 specifically: a function which, when given a function of its type, probes it with inputs to attempt to determine if it's itself. 23:05:07 so mirror :: a = a -> Bool 23:05:36 newtype Mirror = Mirror (Mirror -> Bool) 23:06:16 needs only a little additional pattern matching 23:07:30 I seem to remember seeing that before 23:08:26 oerjan: ah, goo 23:08:27 d 23:09:24 oerjan: I'm not sure it's possible 23:09:32 i wonder if it isn't going to be hard creating one that isn't constant or non-terminating 23:09:47 yeah 23:10:02 you can pass special functions as "signals" to the questionee, but how do you detect if you get one? 23:10:05 infinite regress 23:10:06 well, ok you have const True and const False 23:10:55 hm it may not be that impossible to get some information 23:11:02 * ehird writes a draft implementation 23:11:13 oerjan: it can't be perfect, of course 23:11:36 newtype Mirror = M { runM :: Mirror -> Bool } for a little convenience, perhaps 23:11:53 18:04 < ehird> ...aw damn, I had an idea but I realised that it required a type of (a = a -> b) 23:11:54 then M (const True), M (const False) are examples 23:12:01 is this Haskell? 23:12:05 if so, what does that mean 23:12:14 and from those you can make M ($ const False), etc. 23:12:16 comex: yes 23:12:23 mirror :: Mirror -> Bool 23:12:23 mirror (Mirror f) = 23:12:24 let r1 = f $ const True 23:12:26 r2 = f $ const False 23:12:28 it's a start 23:12:37 and you can do boolean operations on the result 23:13:14 err, wrap of course 23:13:30 oerjan: the problem is that if you do "f (Mirror f)", you don't terminate when passed yourself 23:13:39 right 23:13:53 I mean, what does a type of (a = a -> b) mean 23:13:58 or is that pseudo-syntax 23:14:00 comex: pseudo 23:14:08 comex: it means "type a such that a -> b" 23:14:13 as in, f f f f f f 23:14:14 is valid 23:14:19 you can't represent it; it's not sound 23:14:23 but you can do it w/ a newtype 23:14:29 (since that adds a safety boxing layer 23:14:30 ) 23:14:35 er 23:14:40 f $ f $ f $ f $ that is 23:14:41 well 23:14:43 OMG Gregor is back in Indiana. 23:14:45 that's for (a = a -> a) 23:14:58 newtype actually does only virtual boxing, it doesn't show up in the compiled result 23:15:02 yes 23:15:05 but it's boxing in theory 23:15:28 it's not non-strict boxing 23:15:36 oerjan: it's theoretical boxing 23:15:37 type boxing 23:16:17 mirror :: Mirror -> Bool 23:16:17 mirror (Mirror f) = 23:16:19 let r1 = f $ Mirror (const True) 23:16:21 r2 = f $ Mirror (const False) 23:16:23 in traceShow (r1, r2) False 23:16:25 → 23:16:27 *Main> mirror (Mirror mirror) 23:16:29 (True,True) 23:16:31 (False,False) 23:16:33 (False,False) 23:16:35 ehird: Mirror ($ const True) 23:16:35 False 23:16:37 i'm doubting this is possible without specially-crafted sentinel functions 23:16:39 and I'm unsure how to craft them 23:16:43 oerjan: ehm, what's that do? 23:16:53 oerjan: that doesn't type yo 23:16:54 er wait 23:16:56 mirror (Mirror `on` the wall)... 23:17:00 Asztal: yeah :) 23:17:24 Asztal: the pun was of course on the magic mirror detecting who the fairest of them all is, and introspection 23:18:37 ehird: you're probably going to get some diagonalized non-terminating counterexample anyway 23:18:50 coke mixed with coffee 23:18:58 evil 23:18:58 oerjan: nontermination on some inputs is fine 23:19:07 but mirror (Mirror mirror) should always be True 23:19:14 and most random functions of the tpe should be False 23:19:15 *type 23:19:18 nooga: the drug or the drink? 23:19:34 the drink 23:19:39 boring 23:19:41 the drug is yuck btw 23:19:55 :) 23:20:29 ehird: hm with wrapping my ($ const True) should become M ($ M (const True)) 23:20:38 oerjan: what would that do? 23:20:42 I don't follow how it works 23:21:00 -!- Corun has quit (Read error: 104 (Connection reset by peer)). 23:21:04 *Main> Mirror ($ Mirror (const True)) 23:21:04 :1:8: 23:21:05 Couldn't match expected type `a -> b' 23:21:07 against inferred type `Mirror' 23:21:08 it tests by applying f to M (const True) 23:21:09 if only it typed. 23:21:16 erm 23:21:17 oerjan: 23:21:18 let r1 = f $ Mirror (const True) 23:21:20 r2 = f $ Mirror (const False) 23:21:22 oh, I see 23:21:24 wait 23:21:26 no I don't 23:21:31 doesn't my example do that? 23:21:31 what do we call mutable variables? 23:21:38 nooga: evil. 23:21:40 but: state 23:21:43 ehird: yes 23:21:53 what are them? ;f 23:21:59 ehird: but then you could test more by using _that_ as the test 23:22:08 oerjan: follow i don't 23:22:10 nooga: state 23:22:11 to apply to 23:22:21 oerjan: what does f get? 23:22:25 lige 23:22:28 like* 23:22:36 ehird: for any test function you make, you get a new test by applying to the first 23:22:54 define a,b,c here { something something } forget a,b,c ? 23:22:58 oerjan: sorry? 23:23:04 oerjan: gimme a function (test->newTest) 23:23:06 and I'll understand 23:23:15 nooga: what? 23:23:28 ehird: yodawg t (Mirror f) = f (Mirror t) 23:23:46 oerjan: no, not function and test 23:23:48 test->newTest 23:23:51 give an argument to f, get a new one back 23:24:21 ehird: t is the old test, yodawg t the new one 23:24:38 oerjan: so (\test -> Mirror test) 23:24:47 aka Mirror 23:24:50 i'm not sure of the effects, oerjan 23:24:59 what happens to the function? 23:25:04 sheesh 23:25:07 ehird: i'm not sure if i understand 23:25:23 could you give my an example? 23:25:32 ehird: why don't you just try yodawg out? 23:25:33 nooga: I have no idea what the heck yo're talking about 23:25:35 *you're 23:25:47 ehird: about mutable vars 23:25:54 oerjan: because I can blindly apply functions all day but my mirror doesn't return reasonable results so I'd have no idea at all what it does 23:25:58 nooga: be more specific dammit 23:26:54 http://llvm.org/docs/tutorial/OCamlLangImpl7.html << about wtf is that chapter about 23:27:14 nooga: that is not what I meant! 23:27:17 WHAT is your question to me? 23:27:53 oerjan: wait, I get it 23:27:59 ehird: about wtf is that chapter about 23:27:59 whew 23:28:03 oerjan: we're asked: detect this function. we give it (const True). 23:28:06 we pass that result on. 23:28:19 what are those "mutable variables" 23:28:22 -!- Judofyr has quit (Remote closed the connection). 23:28:25 nooga: variables you can change 23:28:30 as opposed to invariable variables 23:28:36 erm 23:28:51 if domething is called a variable it's variable, right? 23:28:55 no 23:28:59 for instance, 23:29:03 a :: Integer; a = 2 23:29:07 in haskell, that's (informally) a variable 23:29:10 but you can't reassign it 23:29:13 nooga: it's a relic of old names 23:29:18 we made variables, then we made immutable variables 23:29:21 and now they're commons 23:29:24 so we say mutable variables 23:29:34 immutable variables: just names for values 23:29:43 mutable variables: names for changable state that contains values 23:30:09 okay 23:30:16 now it's clearer 23:30:33 oerjan: but I'm not sure how wrapping it helps us decide about the function 23:30:38 nooga: an immutable variable, like in mathematics, doesn't vary in a _single_ use, it varies _between_ uses 23:31:03 i mean, not only should mirror interrogate its argument; if we think we're being called by mirror (i.e., it's responding like we would), we should try and pass information it expects back 23:31:08 oerjan: erm 23:31:10 oerjan: no 23:31:17 don't say that, that's wrong 23:31:21 that's not what it means in this context 23:31:24 in fact I've never heard that 23:31:33 it's maybe too vague 23:31:41 no, it's just wrong 23:32:19 i wonder if it's possible to use partial evaluation to generate all possible cases of type usage in a SADOL program 23:32:42 to generate fast code that doesn't care about types in runtime 23:33:21 hm put it differently, it doesn't vary within its scope, but it can have a different value if you enter its scope again 23:33:35 oerjan: nope 23:33:37 that's not what it means 23:33:39 simply wrong 23:34:06 ehird: in mathematics? 23:34:12 i don't know about mathematics 23:34:14 I am talking about programming 23:34:17 and language design 23:34:22 okay okay 23:34:22 and the term is never meant as you say 23:34:25 -!- sebbu has joined. 23:34:28 programming borrowed the word from math 23:34:34 now i moved my thoughts to partial evaluation 23:36:27 nooga: why not write a sadol interp, and a specializer? 23:36:31 that'd be so more futamura. 23:36:51 hm 23:37:15 probably harder than a compiler 23:37:25 * oerjan read that as futurama 23:37:36 i guess he gets that a lot 23:37:38 and with llvm i can make something quite optimal 23:37:42 * nooga either 23:37:47 nooga: do you know what a specializer is? 23:37:47 well 23:37:48 in this cas 23:37:50 e 23:37:51 yea 23:37:53 it's (interpreter → compiler) 23:37:57 so the specializer could make an LLVM compiler 23:37:58 i've read that twisted paper 23:38:04 yes, a bit harder, but fuck, a lot coole. 23:38:05 r 23:39:38 porbably i'm too stupid to make it work 23:40:07 probably* (destroy all mac keyboards) 23:40:39 nooga: buy another keyboard, foo 23:40:43 and it's an apple kb 23:40:51 Man, a specialiser would be cool. If tricky. 23:41:24 pikhq: they exist 23:41:27 they're crap, but they exist 23:41:31 -!- coppro has joined. 23:41:47 hey 23:41:51 greenity. 23:42:04 i assume that the specialiser is a program that modifies the code of interpreter to obtain an instance of the interpreter suited for interpreting specific program 23:42:10 and then the interpreter is compiled 23:42:11 no 23:42:17 nooga: that's one of the projections, pretty much 23:42:19 (but more detailed) 23:42:25 nooga: but another projection, is you give it an interpreter 23:42:27 and we've got relatively fast running program 23:42:30 and it gives you a compiler (interpreter → program) 23:43:02 nooga: http://blog.sigfpe.com/2009/05/three-projections-of-doctor-futamura.html read this, it'll get you psyched about futamura 23:43:14 pikhq: huh, youtube hd is 720p 23:43:17 i thought it was 540p 23:43:18 i've read that once, at night 23:43:19 or w/e 23:43:25 and it was too much 23:44:20 ehird: Yeah. 23:44:36 ... There *are* specialisers? 23:44:39 you know what's awesome?