[04:26] MSG: Ping timeout: 246 seconds [04:27] Join: Caelian|w joined #corewars [09:38] Join: fiveop joined #corewars [10:02] MSG: Quit: humhum [11:20] Join: yoR joined #corewars [11:34] Join: Core_new joined #corewars [12:55] MSG: Quit: dat [14:15] Join: Core_old joined #corewars [14:37] Join: yoR joined #corewars [15:51] MSG: Quit: dat [16:19] MSG: Read error: Connection reset by peer [16:22] Join: Core_old joined #corewars [16:24] hrm [16:24] ahem [16:25] hrrm [16:27] heya [16:51] Metcalf is gone but DJN is the only way I know to implement "sempaphores". It's also why I added the IJN instruction to the Coreworld language. [16:52] not necessary, but nice. [17:08] Join: Metcalf joined #corewars [17:08] Hi :-) [17:08] hi john. [17:08] curious. [17:08] do you really get semaphores with DJN? [17:08] it seems to me it's a pain... [17:08] you want test and set. [17:08] yes [17:09] so setting to non-zero is as good? [17:09] sorry. i'm sure that is not understandable. [17:10] in coreworld, i have a 1 bit field. [17:10] and when you you apply a DJN/IJN it really does test/set. [17:10] so fields are modulo coresize but that size (the "qubit" is just a 1-bit field.) [17:11] sema:dat 1 [17:11] .... [17:11] fail:add #1, sema [17:11] wait:djn fail, sema [17:11] ..... [17:11] sig: add #1, sema [17:11] entry point is wait [17:12] thinking. [17:12] Should make multiple process wait [17:13] right, i see. [17:14] I should jot this down for coreworld. [17:14] :-) [17:14] it's not possible to have multiple processes enter at the same place. [17:14] Why not? [17:15] well. the way "tasks" work is different. [17:16] basically, SPL is much les important and everything is pretty much executing in parallel. [17:16] but this could be a very long conversation. [17:16] I think, it's at least partly documented on the web but I hesitate to point you there. [17:16] I'll update things when I have a chance. [17:17] There will definitely be a QCW chapter in my dissertation (and that's coming shortly...) [17:17] :-) [17:18] your code does have a small chance of failing in QCW but, as I said, could be a long conversation. Not worth it. [17:18] it might actually always work because you can't use that idiom at all. sorry. I'm actually fascinated by the chance to think about this again. [17:18] I've been doing personal genomics for two years. [17:19] very exciting and practical but I've always enjoyed the QCW. [17:19] and corewar. [17:19] Okay bad news [17:19] bad news? [17:20] The semaphore example above won't work in certain situations [17:20] Works fine for 1 process waiting [17:21] basically, it's not an atomic test-and-set. [17:21] Works fine for 2 processes waiting [17:21] because you are relying on the second instruction to complete the set. [17:21] but I'm not really sure if it can ever fail in corewar. [17:21] it might be fine, no? [17:21] But for 3 processes waiting it can fail [17:21] I like stuff to work 100% ;-) [17:22] well. yeah. [17:23] It will fail for 3 processes if the 3rd process arrives after the first process has executed add #1, sema, but not the second process [17:23] i'm thinking it might be pretty hopeless without a lot of extra work. [17:24] that was my conclusion. [17:24] Any ideas how to fix it? [17:24] no. i just changed the language. [17:24] :-) [17:24] IJN and DJN on the 1-bit (qubit) field work as desired. [17:24] I could just kill the processes and keep count of them. [17:25] Then make signal spawn off a new process [17:25] yeah. it's got to be possible. I'll definitely mention your solution in my write-up of QCW. [17:25] this was an interesting part of my dissertation. [17:25] I hope you're putting a copy online ;-) [17:25] so in the original "coreworld" the world often ended up in a "soup" that wasn't very interesting. [17:26] yes. i'll have a copy online. [17:26] even if you are hand-writing the concurrently executing lifeforms, coordination between "related" lifeforms is a big problem. [17:26] they tend to try and move into the same area and then end up corrupting themselves. [17:27] -( [17:27] test-and-set lets them easily agree to lock a part of the core. [17:27] -( EQU :-( [17:27] of course, competing lifeforms can ignore each other's locks. [17:27] It could be done if we had an xchg instruction [17:27] but the problem was that without test and set it was *really* hard to get co-operating lifeforms. [17:28] I think I can fix it anyway [17:28] ok. yeah. I'm looking forward to it. as i said. [17:28] instead of add #1, sema use mov #0, sema [17:28] i only recognized i needed a test-and-set primitive but since I was free to modify the language I chose to do that. [17:29] well. I'll listen on this channel and definitely am curious. [17:31] No, that doesn't work because the signal is sometimes overwritten :-( [18:05] Join: fiveop joined #corewars [18:05] Hi Fiveop [18:07] hi [18:07] today I learn about the wonders of english pubs [18:08] through field work :P [18:08] You have to pay when you get your drink! [18:08] Some pubs serve decent food. [18:09] I just ate in the catina [18:09] cantina [18:09] no [18:09] canteen [18:09] :/ [18:10] (not that it would be enought that I have to learn to speak english all the time currently) [18:11] +not [18:12] Time to go [18:12] * Metcalf waves [18:13] MSG: Quit: mov.i #1,1 [18:45] MSG: Quit: humhum [18:56] Join: Core_new_ joined #corewars [18:59] MSG: Ping timeout: 246 seconds [18:59] MSG: Ping timeout: 246 seconds [19:29] Join: log_guy joined #corewars [19:29] Join: Mizcu joined #corewars [19:30] Join: sasha joined #corewars [19:30] Join: pak21 joined #corewars [19:30] Join: Fluffy joined #corewars [19:56] Join: Raptor joined #corewars [19:57] Hey where's bvowk! :( [20:06] MSG: Quit: ChatZilla 0.9.78.1 [Firefox 2.0.0.6/2007072518] [20:08] Join: KOTH joined #corewars [20:09] Caelian|w - What do you have your retry time set to, every 1/2 second???? :) [20:11] Anyway, that should be the last server reboot for a bit... I upgraded the underlying OS from 5.3 to 5.5 [20:12] Part: KOTH left #corewars [20:31] Oh great, we have an op at the channel again [20:32] op that drops every --- 8 hours from the net [20:32] Caelian|w: awaken? [20:43] not that id be much more stable, irc-traffic happens to be assigned low priority on the univ server [20:49] jeez, wonder why [21:08] Join: Roy joined #corewars [21:14] Join: Metcalf joined #corewars [21:15] Hi :-) [21:22] This looks interesting http://www.springerlink.com/content/n71026x0808vh142/ [21:22] "Categorizing Evolved CoreWar Warriors Using EM and Attribute Evaluation" [21:22] But also costs $25 :-( [21:26] Nice... [21:26] I can't find a free copy anywhere :-( [21:27] No, I doubt there are more then 10 copies ever made haha [21:42] * Metcalf waves [21:42] MSG: Quit: mov.i #1,1 [21:44] MSG: Ping timeout: 252 seconds [21:46] Join: Roy joined #corewars [22:08] Join: fiveop joined #corewars [22:21] "No, I doubt there are more then 10 copies ever made haha" [22:22] I'll find the PDF and post here when I do. [22:22] Seems like Harvard doesn't subscribe to LCNS but I'm pretty sure MIT does. [22:22] Hehe, always challenge people [22:23] 2007. it's kind of interesting from the abstract. [22:23] CoreWar is a computer simulation where two programs written in an assembly language called redcode compete in a virtual memory array. These programs are referred to as warriors. Over more than twenty years of development a number of different battle strategies have emerged, making it possible to identify different warrior types. Systems for automatic warrior creation appeared more recently, evolvers being the dominant kind. This paper describes [22:23] an attempt to analyze the output of the CCAI evolver, and explores the possibilities for performing automatic categorization by warrior type using representations based on redcode source, as opposed to instruction execution frequency. Analysis was performed using EM clustering, as well as information gain and gain ratio attribute evaluators, and revealed which mainly brute-force types of warriors were being generated. This, along with the obse [22:23] rved correlation between clustering and the workings of the evolutionary algorithm justifies our approach and calls for more extensive experiments based on annotated warrior benchmark collections. [22:25] but i have to run now. [22:25] * sasha waves [22:25] But it always dissapoints me that the writer probably did some fine research but didn't come here to chat with us, or mail somebody [22:25] * Roy waves [22:25] i doubt they have any idea about "us". [22:25] Yeah, but if you google CW you come here pretty quickly [22:25] if I wasn't such a lazy ass, I'd try and be a better bridge between "academia" and "here". [22:26] aren't we all... [22:26] bye! [22:26] * sasha still waving [22:39] MSG: