--- Log opened Fri Aug 25 00:00:02 2006 |
00:14 | | Derakon[AFK] is now known as Derakon |
00:21 | | MahalWork [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Connection reset by peer] |
00:26 | | MahalWork [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #Code |
00:26 | | mode/#code [+o MahalWork] by ChanServ |
00:37 | | aoanla is now known as caps[t-2] |
00:40 | | caps[t-2] is now known as fhtagncaps |
01:15 | <@Vornicus> | quitting time |
01:15 | | Vornicus [~vorn@Admin.Nightstar.Net] has quit [Quit: ] |
01:40 | | himi-sleeping is now known as himi-coffee |
01:58 | | * Vornicus-Latens returns, at home. |
01:58 | | Vornicus-Latens is now known as Vornicus |
01:58 | <@Mahal> | Vornicus! |
01:58 | <@Mahal> | Greets. |
02:09 | <@jerith> | Hey Vorn. |
02:19 | | himi-coffee is now known as himi-heading-to-work |
02:42 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Connection reset by peer] |
02:43 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
02:43 | | mode/#code [+o Mahal] by ChanServ |
02:52 | | Chalc [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
02:52 | | Chalc is now known as Chalcedon |
02:53 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Killed (NickServ (GHOST command used by Chalcedon))] |
02:54 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has left #code [] |
02:54 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
02:54 | | mode/#code [+o Chalcedon] by ChanServ |
03:01 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
03:15 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
03:15 | | mode/#code [+o Chalcy] by ChanServ |
03:16 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
03:18 | | Chalc [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
03:19 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
06:14 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
06:14 | | mode/#code [+o Chalcy] by ChanServ |
06:15 | | Chalcy is now known as Chalcedon |
06:15 | | Chalc [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
06:32 | | Derakon is now known as Derakon[AFK] |
07:13 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
07:13 | | mode/#code [+o Mahal] by ChanServ |
07:26 | <@Vornicus> | ...it occurs to me that this module would be so much easier in a statically-typed language. |
07:37 | | Vornicus is now known as Vornicus-Latens |
07:47 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
07:53 | | McMartin [~mcmartin@Nightstar-9698.dsl.pltn13.pacbell.net] has quit [Quit: brb] |
08:53 | | Serah [~Shemhazai@Nightstar-8502.ds1-ba.adsl.cybercity.dk] has quit [Killed (NickServ (GHOST command used by Shemhazai))] |
08:53 | | Serah [~Shemhazai@Nightstar-8502.ds1-ba.adsl.cybercity.dk] has joined #Code |
09:04 | | Syloqs-AFH [Syloq@NetAdmin.Nightstar.Net] has quit [Connection reset by peer] |
09:07 | | brocksta [~brocksta@58.165.202.ns-21053] has joined #Code |
09:07 | < brocksta> | hello |
09:07 | < brocksta> | any1 there |
09:07 | < brocksta> | echo |
09:07 | < brocksta> | anwser in 10 |
09:07 | < brocksta> | 9 |
09:07 | < brocksta> | 8 |
09:07 | < brocksta> | 7 |
09:07 | < brocksta> | 6 |
09:07 | < brocksta> | 5 |
09:07 | < brocksta> | 4 |
09:07 | < brocksta> | 3 |
09:07 | < brocksta> | 2 |
09:07 | < brocksta> | 1 |
09:07 | < brocksta> | bye |
09:08 | | brocksta [~brocksta@58.165.202.ns-21053] has quit [Quit: PJIRC user from RSH http://www.runescapehall.net] |
09:09 | <@EvilDarkLord> | Runescape? That explains a lot. |
09:10 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
09:11 | | mode/#code [+o Mahal] by ChanServ |
09:42 | | McMartin [~mcmartin@Nightstar-9698.dsl.pltn13.pacbell.net] has joined #code |
09:42 | | mode/#code [+o McMartin] by ChanServ |
09:48 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
09:59 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
09:59 | | mode/#code [+o Mahal] by ChanServ |
10:28 | | himi-heading-to-work is now known as himi |
10:40 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
10:46 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
10:46 | | mode/#code [+o Mahal] by ChanServ |
11:13 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
11:36 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
11:37 | | mode/#code [+o Mahal] by ChanServ |
12:09 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
12:16 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
12:16 | | mode/#code [+o Mahal] by ChanServ |
12:36 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has quit [Quit: This computer just fell asleep.] |
14:49 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
14:49 | | mode/#code [+o Chalcy] by ChanServ |
14:50 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
14:54 | | * ToxicFrog|AFK stabstabstabs pthreads |
14:54 | | ToxicFrog|AFK is now known as ToxicFrog|W`rkn |
14:59 | | fhtagncaps [~scs105@Nightstar-20994.york.ac.uk] has quit [Quit: leaving] |
16:26 | | aoanla [~scs105@Nightstar-20994.york.ac.uk] has joined #code |
16:34 | | himi is now known as himi-sleeping |
16:51 | | aoanla is now known as fhtagncaps |
17:02 | | Syloq [Syloq@NetAdmin.Nightstar.Net] has joined #code |
17:06 | | Vornicus [~vorn@Nightstar-18307.slkc.qwest.net] has joined #code |
17:06 | | mode/#code [+o Vornicus] by ChanServ |
17:26 | <@ToxicFrog|W`rkn> | Aha! |
17:26 | <@ToxicFrog|W`rkn> | It is solved zomg |
17:27 | <@Vornicus> | what is solved zomg? |
17:27 | <@ToxicFrog|W`rkn> | My threading problem. |
17:27 | <@ToxicFrog|W`rkn> | It was something like this: |
17:27 | <@ToxicFrog|W`rkn> | lock_index() |
17:27 | <@ToxicFrog|W`rkn> | check_thread_exists(target) |
17:27 | <@ToxicFrog|W`rkn> | unlock_index() |
17:27 | <@ToxicFrog|W`rkn> | // HIDEOUS RACE CONDITION RIGHT HERE |
17:28 | <@ToxicFrog|W`rkn> | stack2stack(this, target) |
17:28 | <@Vornicus> | so it was locking to check but not to act. |
17:28 | <@ToxicFrog|W`rkn> | Well, it has to unlock the master index before it acts. |
17:28 | <@ToxicFrog|W`rkn> | Otherwise it deadlocks. |
17:29 | <@Vornicus> | so, then... how did you fix it? |
17:29 | <@ToxicFrog|W`rkn> | Because stack2stack can block for arbitrarily long periods of time, and if it holds the master index locked, no threads can be created or destroyed, or can signal, send or recieve. |
17:30 | <@ToxicFrog|W`rkn> | The problem is that if it gets preempted after it unlocks the index but before it calls stack2stack, it's possible for the target thread to exit. |
17:30 | <@ToxicFrog|W`rkn> | Then it calls stack2stack on a nonexistent thread and segfaults. |
17:30 | <@ToxicFrog|W`rkn> | lock_index() |
17:30 | <@ToxicFrog|W`rkn> | check_thread_exists(target) |
17:30 | <@ToxicFrog|W`rkn> | increment_sendblocked_count(target) |
17:31 | <@ToxicFrog|W`rkn> | unlock_index() |
17:31 | <@ToxicFrog|W`rkn> | stack2stack(this, target) |
17:31 | <@ToxicFrog|W`rkn> | And then, in the cleanup function: |
17:31 | <@ToxicFrog|W`rkn> | lock_index() |
17:31 | <@ToxicFrog|W`rkn> | delete_thread_from_index(this) |
17:31 | <@ToxicFrog|W`rkn> | unlock_index() |
17:31 | <@ToxicFrog|W`rkn> | while(sendblocked > 0) |
17:31 | <@ToxicFrog|W`rkn> | cleanup_sendblocked_thread() |
17:32 | <@ToxicFrog|W`rkn> | Thus, even if it gets preempted and the target exits, it won't actually be free()d until all threads send-blocked on it have a chance to call stack2stack and recieve an error code ("target thread exited before receiving message") |
17:34 | <@ToxicFrog|W`rkn> | And since it deletes the thread from the master index before processing send-blocked threads, any further sends while it's in cleanup will immediately return an error indicating that the target thread does not exist. |
17:35 | <@ToxicFrog|W`rkn> | (in actual implementation, the sendblocked count is a semaphore, but conceptually it's the same) |
17:55 | <@ToxicFrog|W`rkn> | Ok. So that's the error checking->data transfer handoff of CK_Send handled. |
17:56 | <@ToxicFrog|W`rkn> | I'm constantly wondering how much error checking to have. |
18:10 | | * Vornicus blings |
18:23 | <@ToxicFrog|W`rkn> | I mean, at one extreme, it's impossible to break. Manipulating nonexistent threads returns correct error codes, threads vanishing in mid-IO clean up properly, etc, etc. |
18:24 | <@ToxicFrog|W`rkn> | At the other extreme, we have SGOS, where calling CK_Send() on a nonexistent thread generates a kernel panic. |
18:27 | <@Vornicus> | heh. |
19:20 | | * Vornicus gets bored, does some analysis on galciv 2 data files. |
19:20 | <@ToxicFrog|W`rkn> | Hee. |
19:21 | <@Vornicus> | right now I'm making an advancement tree for the starbase modules. |
19:21 | <@ToxicFrog|W`rkn> | Reverse engineering, the sport of coders with latent masochistic tendencies~ |
19:21 | <@Vornicus> | Reverse engineering? |
19:21 | <@Vornicus> | THis is /XML/ |
19:21 | <@ToxicFrog|W`rkn> | Oh. Handy. |
19:21 | | * ToxicFrog|W`rkn hadn't actually looked at them. |
19:21 | <@ToxicFrog|W`rkn> | Although XML is the sport of coders with over masochistic tendencies, IMO~ |
19:21 | <@ToxicFrog|W`rkn> | *overt |
19:21 | <@Vornicus> | Heh. |
19:22 | <@Vornicus> | This isn't really bad. The parent of each module is in the MOdule Requirement field. |
19:23 | <@ToxicFrog|W`rkn> | Well, in the case of XML I'm talking from the point of view of getting at your XML-stored data from inside your program. |
19:23 | <@ToxicFrog|W`rkn> | Since all the XML libraries in existence have a depressing habit of massive, overwhelming suck. |
19:24 | <@Vornicus> | ...once I'm done turning this into an outline I've got to go over to Visio. |
19:26 | <@ToxicFrog|W`rkn> | I had a symbol table entry for Visio at one point, but I seem to have excised it for the sake of my sanity. |
19:27 | <@Vornicus> | Visio: Drawing tool with a lot of developer stuff in it. |
19:27 | <@Vornicus> | BOught out by Microsoft in about 2000. |
19:27 | <@Vornicus> | Really it's the best drawing tool I've ever used. |
19:29 | <@ToxicFrog|W`rkn> | Is it horribly abusable to create diagrams that will rend the soul asunder and bring the wailing horrors from outside time itself pouring into our world? |
19:29 | <@ToxicFrog|W`rkn> | Because I think I heard of it in TDWTF. |
19:30 | <@Vornicus> | You remember that thing recently in TDWTF where the diagram /is/ the workflow? |
19:30 | <@Vornicus> | Yeah, that was Visio, mangled beyond mortal ken. |
19:31 | <@Vornicus> | But I've seen modules that, if you make a database diagram, will extract SQL statements that create the database described. |
19:32 | <@ToxicFrog|W`rkn> | That's fairly nice, if you use such things. |
19:32 | <@Vornicus> | And wil make C++ or Java class declarations from class diagrams. And so forth. |
19:33 | <@Vornicus> | It's heavily scriptable, in short. |
19:33 | <@Vornicus> | But on the other end, you can select a line and tell it that you want it to start here and end there - and even script that. |
20:20 | <@Vornicus> | hm. WHat's the equivalent of whoami for groups? |
20:28 | | RSH_guest_43 [~RSH_guest@Nightstar-7664.hsd1.mi.comcast.net] has joined #Code |
20:29 | < RSH_guest_43> | anybody need to switch accounts on runescape |
20:29 | < RSH_guest_43> | im a guy i'm a mem i got full dragon and 300k i'm a lvl 65 |
20:29 | < RSH_guest_43> | i need a new accont |
20:29 | <@EvilDarkLord> | ...not another one. Argh. |
20:29 | < RSH_guest_43> | wanna? |
20:30 | < RSH_guest_43> | i hate this account |
20:30 | < RSH_guest_43> | please msan |
20:30 | <@EvilDarkLord> | New person, this is a channel dedicated to programming. Not Runescape. |
20:30 | | RSH_guest_43 was kicked from #code by Vornicus [No.] |
21:46 | | Mahal [~Mahal@Nightstar-5107.worldnet.co.nz] has joined #code |
21:46 | | mode/#code [+o Mahal] by ChanServ |
21:53 | | Erik [~nsJChat@Nightstar-4953.bb.online.no] has joined #code |
22:12 | | EvilDarkLord is now known as Thokk |
22:20 | <@Chalcy> | what's runescape? |
22:21 | <@Thokk> | It is a world where teenagers of all levels of stupidity congregate. |
22:21 | <@ToxicFrog|W`rkn> | It is an MMORPG. |
22:21 | <@ToxicFrog|W`rkn> | In fact, one of my friends is a developer for it. |
22:22 | <@Chalcy> | ok. |
22:22 | <@ToxicFrog|W`rkn> | Like all MMORPGs, however, a minimum of 85% of the players don't have the intelligence evolution gave a whelk. |
22:22 | | * Chalcy was mildly curious |
22:22 | <@Chalcy> | heh. |
22:22 | | Chalcy is now known as Chalcedon |
22:24 | < Erik> | Also, runescape is famous for its opressive censorship system. |
22:24 | <@Chalcedon> | ah |
22:24 | | * Chalcedon begins to see the light |
22:24 | < Erik> | I played for a month and gave up in disgust. |
22:25 | <@ToxicFrog|W`rkn> | It is? |
22:25 | < Erik> | Everything which could be construed as rude is censored, down to "hump". |
22:25 | < fhtagncaps> | I do vaguely remember hearing of this. |
22:25 | < Erik> | So the players wander around saying "fjuk u". |
22:25 | <@Chalcedon> | ... great. |
22:25 | <@Chalcedon> | gtg. |
22:25 | < Erik> | The censorship applies across spaces, too. If you say "hum" followed by a song starting with a P, it'll get censored to *** *. |
22:26 | <@McMartin> | Awesome |
22:26 | <@McMartin> | Though my absolute favorite was CoH |
22:26 | <@McMartin> | In which you fought the Antarctic Space Nazis as one of the villains |
22:26 | <@McMartin> | But the censor code would block "Nazi" |
22:27 | <@McMartin> | Tactics talk would get @#*^&!ed. |
22:27 | <@McMartin> | As, really, would a lot of stuff the NPCs said. |
22:27 | < fhtagncaps> | ...now, that's foresight. |
22:27 | <@McMartin> | Fortunately, the profanity filter was easy to turn off. |
22:27 | < Erik> | Turn off??? |
22:27 | < Erik> | You could turn it *off*? |
22:27 | < Erik> | There was no such thing in Runescape. |
22:27 | <@McMartin> | Yes. You would go to Options, and there would be an option "Profanity Filter", and you clicked on it so that it said Disabled. |
22:27 | <@McMartin> | CoH showed true foresight. |
22:28 | <@McMartin> | Though they should have called it Comics Code Enabled~ |
22:29 | <@ToxicFrog|W`rkn> | Pfft. |
23:04 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
23:04 | | mode/#code [+o Chalcy] by ChanServ |
23:04 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
23:16 | | Erik [~nsJChat@Nightstar-4953.bb.online.no] has left #code [] |
23:26 | | Mahal is now known as MahalFood |
23:32 | | ToxicFrog|W`rkn is now known as ToxicFrog|AFK |
23:53 | | Princess_Corra [~Corra@207.226.175.ns-4975] has joined #code |
23:53 | | Princess_Corra is now known as Corra |
23:53 | < Corra> | Hello? |
23:54 | <@Thokk> | Corra: State your question in its entirety, chances are that someone competent will get around to answering it soonish. |
23:55 | < Corra> | Thank you. |
23:56 | < Corra> | I'm building a system that generally runs at at 800 Mhz rate. That includes bus and ram speed. Unfortunately I found that the AMD Athlon 64 chip only communicates with ram at 400 Mhz via it's own controller. I'm afraid that may hinder my computer's performance. Should I be worried? |
23:56 | | Syloq [Syloq@NetAdmin.Nightstar.Net] has quit [Connection reset by peer] |
--- Log closed Sat Aug 26 00:00:03 2006 |