--- Log opened Sun Oct 11 00:00:40 2009 |
00:03 | < SmithKurosaki> | I wasn't intended that as annoyance |
00:04 | | You're now known as TheWatcher[T-2] |
00:07 | | AnnoDomini [farkoff@Nightstar-417b26e3.adsl.tpnet.pl] has quit [[NS] Quit: <Reiv> Vord would have no real utility, and Eden has a pair anyway.] |
00:08 | | You're now known as TheWatcher[zZzZ] |
00:18 | <@Vornicus> | Though more entertaining imo is prefix. |
00:25 | <@Vornicus> | infix is just a pain in the ass. |
00:27 | < SmithKurosaki> | o.0 |
00:28 | <@Vornicus> | I have 200 lines of shitty python that does infix parsing. I'm hoping to beat that with the 8 years of experience between then and now. |
00:30 | < SmithKurosaki> | heh |
00:30 | < SmithKurosaki> | gl |
00:30 | <@Vornicus> | thankies. |
01:02 | < SmithKurosaki> | Tip to any of you server-admins, your #fleet is showing |
01:02 | < SmithKurosaki> | Or did whoever made that chan forget to make it +s |
01:03 | < Derakon> | We're leaving it off as an experiment. |
01:03 | < SmithKurosaki> | Oh, cool |
01:03 | < SmithKurosaki> | Seeing how many people wander in? |
01:18 | <@Vornicus> | Quite |
01:19 | < SmithKurosaki> | Ahh |
01:19 | < SmithKurosaki> | Well, I am not going to wander in there unless you guys want me there, so... |
01:44 | <@Vornicus> | Ah, I love linked list insertion. |
01:44 | <@Vornicus> | fresh_row.up.down = fresh_row; |
01:44 | <@Vornicus> | fresh_row.down.up = fresh_row; |
01:44 | <@Vornicus> | |
01:45 | | SmithKurosaki [Smith@Nightstar-ab52522f.dsl.teksavvy.com] has quit [Client closed the connection] |
01:46 | | SmithKurosaki [Smith@Nightstar-ab52522f.dsl.teksavvy.com] has joined #code |
01:46 | | * Vornicus wonders if Smith saw that last bit. |
01:46 | < SmithKurosaki> | I can see up to fresh_row |
01:47 | <@Vornicus> | Then yes you did. |
01:47 | < SmithKurosaki> | *well, fresh_row |
01:47 | < SmithKurosaki> | ; |
01:47 | <@Vornicus> | Heh. |
01:47 | < SmithKurosaki> | Sorry, I had to kill my nx session because I needed a terminal and stuff |
01:47 | <@Vornicus> | no sorrying! |
01:48 | < SmithKurosaki> | Yea, linked list is teh shit when it's not eating my head |
01:50 | < SmithKurosaki> | Well, let's see if I can eat all of this haagen daas toniht |
01:51 | | * Vornicus offers to assist. |
01:52 | < SmithKurosaki> | I might need it all, I am looking forward to a rather shitty month or solooking at a happy me at |
01:53 | < SmithKurosaki> | Sorry, lag = weirdness |
01:53 | < SmithKurosaki> | My next month is at least 1 assignment/week + no time to relax, and even if I had the time, no one to relax with |
01:54 | < SmithKurosaki> | (even friends wise) |
02:03 | | * Vornicus steals SmithKurosaki to the land of relax. |
02:03 | < SmithKurosaki> | Yea, I have been working on class assignments that are due next week for about the last 6 hours |
02:03 | < SmithKurosaki> | (probably more) |
02:05 | | * Vornicus has been doing much of the same. |
02:06 | < SmithKurosaki> | ;.; |
02:08 | <@Vornicus> | whee, 42-line function to write something to the matrix. |
02:08 | < SmithKurosaki> | lovely |
02:09 | <@Vornicus> | And I haven't even done anything where it decides which direction is likely cheaper. |
02:09 | < SmithKurosaki> | rercursion? |
02:10 | <@Vornicus> | No, it's entirely iterative. But the question for a sparse matrix goes something like this: Will it be easier to go across then down, or down then across? |
02:10 | <@Vornicus> | (and at that, easier to go left or right? Up or down?) |
02:14 | < SmithKurosaki> | Depends on the layout, no. Also, what direction you are going |
02:14 | <@Vornicus> | Indeed. But we can use probability heuristics to pick. |
02:14 | < SmithKurosaki> | hmm |
02:14 | < Derakon> | Is this all part of the assignment, or is it just you deciding to optimize? |
02:15 | < SmithKurosaki> | I have never heard of those before |
02:15 | <@Vornicus> | Well, no, I won't optimize this. |
02:16 | < SmithKurosaki> | too much like effort? |
02:16 | <@Vornicus> | Well that and the meat will get lost. |
02:16 | < SmithKurosaki> | aww |
02:17 | < SmithKurosaki> | So, what is probaility heuristics? I know what they both mean seperately, but not together |
02:20 | <@Vornicus> | Well, I can't know - without traversing the entire matrix - whether it will /actually/ be cheaper to go up or down. However, if I know that it's /probably/ going to be easier to go down if my y value is closer to the first y value than it is to the last. And I can get a likely decision whether to go across or down first based on the density of the matrix. |
02:20 | < SmithKurosaki> | mhm |
02:21 | <@Vornicus> | (the first direction sees every row/column that there's stuff in, no matter what column/row the stuff is in. The second direction sees only those cells in the row/column that I found.) |
02:22 | < SmithKurosaki> | cool |
02:23 | <@Vornicus> | (though I did not do the math for that...) |
02:23 | < SmithKurosaki> | heh |
02:31 | < gnolam> | <Vornicus> No, it's entirely iterative. But the question for a sparse matrix goes something like this: Will it be easier to go across then down, or down then across? |
02:31 | < gnolam> | Great. Now I have a mental image of an emo matrix. |
02:33 | <@Vornicus> | Pfff. |
02:33 | < SmithKurosaki> | hahah |
02:33 | < SmithKurosaki> | Don't we have one of those already? |
02:33 | | * SmithKurosaki glares at that Neo douchebag |
02:34 | <@Vornicus> | Heh. |
02:37 | < SmithKurosaki> | I tried to make a funny |
02:37 | | * Vornicus thinks it was funny. Took him a minute though to realize you were talking about keanu reeves. |
02:38 | < SmithKurosaki> | heh |
02:56 | | * Vornicus proceeds to defeat reading much more easily. |
02:58 | | * Vornicus didn't optimize this, either. |
02:58 | <@Vornicus> | Hm. It appears to me that the best way to actually go about optimizing is to turn the four links from attributes into an array, and then write a thing that chooses the array indexes to work on via my heuristic. |
03:00 | <@Vornicus> | But I won't do that, it'll make me go insane. |
03:20 | | * Vornicus fiddles. Okay. Read, write, delete. |
03:22 | < SmithKurosaki> | heh |
03:23 | <@Vornicus> | Now what. |
03:23 | < SmithKurosaki> | Amusement |
03:23 | <@Vornicus> | Probably want things that iterate a row or a column, spew filled row and column indexes, iterate the whole matrix in row-major and column-major directions... |
03:24 | < SmithKurosaki> | yuo |
03:24 | < SmithKurosaki> | yup* |
03:34 | | Attilla [The.Attilla@FBC920.482E2D.402892.A075C8] has quit [Client closed the connection] |
03:41 | <@Vornicus> | meh. Decide that later. Right now I have a binary tree and quicksort to write. |
03:42 | < SmithKurosaki> | yay |
04:06 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?] |
04:10 | < SmithKurosaki> | IRC is pretty dead tomnight :( |
04:12 | | * Vornicus finds Array.concat, this makes his life much easier! |
04:12 | < SmithKurosaki> | :) |
04:54 | <@Vornicus> | return concat(quickSort(lo), [pivot], quickSort(hi)); <--- for instance, the return statement in quicksort. |
05:01 | | * Vornicus then tries to figure out how to instrument it to show what's going on! |
05:13 | <@Vornicus> | Also quicksort is a lot easier to implement than I used to think. |
05:17 | <@Vornicus> | Tells you how often I implement sorts. Thank god for languages that already know how. |
05:17 | < Derakon> | Yeah, I'm fond of "sort(list, comparisonFunc)". |
05:28 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
05:31 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
05:31 | | mode/#Code [+o Vornicus] by Reiver |
07:33 | | Derakon is now known as Derakon[AFK] |
07:37 | | * jerith contemplates character set conversion. |
07:44 | <@McMartin> | THEY CAN HAVE UTF-8 AND THEY CAN LIKE IT |
07:44 | <@McMartin> | >_> |
07:44 | <@McMartin> | <_< |
07:44 | <@jerith> | Ah. I needed to tell iconv to transliterate. |
07:45 | | * McMartin sends in the linguistic daleks |
07:45 | <@McMartin> | TRANSLITERATE |
07:45 | <@McMartin> | TRANSLITERATE |
07:46 | | * jerith turns utf-8 into windows-1252, so that his ebook compiler doesn't build strings of crap instead of quotes. |
07:46 | <@McMartin> | wtf-8~ |
07:48 | <@jerith> | Quite. |
07:50 | <@jerith> | Seems to have worked. |
07:52 | | Alek [omegaboot@Nightstar-32f25247.emhril.sbcglobal.net] has quit [Ping timeout: 121 seconds] |
07:53 | | Alek [omegaboot@A2BA3E.D9488C.4EAD6F.5FB089] has joined #code |
08:27 | | * Rhamphoryncus wonders, if you broke a list up internally into blocks, could you utilize them to get constant memory merge sort? |
08:28 | < Rhamphoryncus> | Basically turn it into a linked list on the fly |
08:29 | | * Vornicus thinks about it. |
08:30 | <@Vornicus> | It appears to me that you can do constant memory merge sort already but that it vastly reduces performance. |
08:30 | <@Vornicus> | You have to do memmove a number of times near the size of the smaller merge segment. |
08:31 | < Rhamphoryncus> | Technically you could store a linked list indexed by an array. Updating the array after the merge sort is O(n), which is just a constant factor for a merge sort |
08:32 | <@Vornicus> | Right but a linked list is O(n) memory in addition to the actual data. |
08:32 | <@Vornicus> | You can't just squeeze in another pointer. |
08:32 | < Rhamphoryncus> | Aye, from a practical point of view that's a very ugly thing to do |
08:33 | < Rhamphoryncus> | Oh yeah, the problem with linked list blocks is that you tend to get gaps |
08:33 | < Rhamphoryncus> | partially filled blocks in the middle |
08:34 | < Rhamphoryncus> | And also from a practical point of view, python's hybrid adaptive merge sort only requires n//2 pointers of temporary space |
08:35 | <@Vornicus> | That's actually worst case in merge sort, period. |
08:35 | < Rhamphoryncus> | right |
08:35 | < Rhamphoryncus> | The best case is constant :) |
08:35 | <@Vornicus> | You need at most the number of elements in the smaller of the two merge segments. |
08:36 | < Rhamphoryncus> | ah, I wondered why it was that number |
08:36 | <@Vornicus> | You shove that aside, and then merge that and the other into the open space in the original array. |
08:38 | <@Vornicus> | --This is of course the array method. If you're working with linked lists, merge is a linear time operation with constant temp memory. |
08:38 | | * Rhamphoryncus notes that you could also preallocate O(n) space along side your basic array.. and that this uses less memory than a O(1) linked list.. |
08:40 | < Rhamphoryncus> | That O(1) space is only because you're counting the array and the sort separately. A linked list is sneaking memory into the array so that it can avoid accounting for it.. |
08:41 | <@Vornicus> | Yes. |
08:42 | <@Vornicus> | But linked lists /are/ kind of important. |
08:42 | < Rhamphoryncus> | someone made a timsort article on wikipedia o.O |
08:44 | < Rhamphoryncus> | oh, because someone wrote an article on it a couple months ago |
08:44 | < Rhamphoryncus> | http://www.hatfulofhollow.com/posts/code/timsort/index.html |
08:44 | | Vornicus is now known as Vornicus-Latens |
08:46 | | * Vornicus-Latens intends on implementing timsort at some point here. |
08:49 | < Rhamphoryncus> | I'll probably have to implement it too at some point |
08:50 | < Rhamphoryncus> | Assuming my compiler progresses that far |
08:58 | | AbuDhabi [farkoff@Nightstar-93bbfe6f.adsl.tpnet.pl] has joined #code |
09:13 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited] |
09:52 | | You're now known as TheWatcher |
10:56 | | Attilla [The.Attilla@FBC920.482E2D.402892.A075C8] has joined #code |
10:56 | | mode/#Code [+o Attilla] by Reiver |
14:05 | | You're now known as TheWatcher[afk] |
15:04 | | AbuDhabi [farkoff@Nightstar-93bbfe6f.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
15:06 | | AnnoDomini [farkoff@Nightstar-93bbfe6f.adsl.tpnet.pl] has joined #code |
15:06 | | mode/#Code [+o AnnoDomini] by Reiver |
15:34 | < SmithKurosaki> | I always miss the good convos |
15:34 | < SmithKurosaki> | McM gets a o/ for the dalek thing |
15:42 | | MyCatVerbs [mycatverbs@Nightstar-492e7e67.co.uk] has quit [Ping timeout: 121 seconds] |
15:52 | <@jerith> | SmithKurosaki: McM is the Dalek Master. |
15:53 | | * jerith can't remember what his Dalek IF was called, though. |
15:55 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code |
16:14 | < SmithKurosaki> | Ahh |
17:00 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
17:50 | | You're now known as TheWatcher |
18:04 | | Vornicus-Latens [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: ] |
18:07 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
18:07 | | mode/#Code [+o Vornicus] by Reiver |
18:13 | | Derakon[AFK] is now known as Derakon |
20:09 | | * Vornicus is getting a parse error. Wishes it would give more information than just "parse error". |
20:10 | <@AnnoDomini> | That's what I call a sparse error report. |
20:11 | <@Vornicus> | :( |
20:14 | <@Vornicus> | return quickSort(lo, instrument + "L").concat([pivot], quickSort(hi, instrument + "H")); <--- it's giving me an error on this. |
20:15 | < Derakon> | Split that into multiple lines, is my advice. |
20:27 | | MyCatVerbs [mycatverbs@Nightstar-492e7e67.co.uk] has joined #code |
20:27 | | mode/#Code [+o MyCatVerbs] by Reiver |
20:37 | <@Vornicus> | Correction, it was the line before, a giant string conglomeration. i missed a + |
20:38 | <@Vornicus> | Now however I have another problem: Quicksort with instrumentation murders Safari. |
20:38 | < Alek> | hm. |
20:38 | < Alek> | I dunno why, but Chrome still has problems with many popular sites. |
20:38 | < Alek> | sometimes the front page loads fine, but go a level deep and you have PROBLEMS |
20:43 | <@Vornicus> | Ah. li needs closing tags in strict. I should correct my code. |
20:50 | | * Vornicus tries to figure out how his data is getting mangled. |
20:52 | | MyCatVerbs [mycatverbs@Nightstar-492e7e67.co.uk] has quit [[NS] Quit: BRB, restarting GNu screen] |
20:53 | | MyCatVerbs [mycatverbs@Nightstar-492e7e67.co.uk] has joined #code |
20:53 | | mode/#Code [+o MyCatVerbs] by Reiver |
20:56 | <@Vornicus> | aaaaaa I'm a dumbass |
20:59 | <@Vornicus> | And so is javascript. Damn global by defaulty. |
21:13 | | * Vornicus now does battle with the DOM. |
21:18 | <@Vornicus> | There. Extraneous list nodes removed. |
21:20 | <@Vornicus> | Apropos of little: I love modern computers. I just asked it to sort 10,000 elements and put each quicksort operation's basic data (the depth level, the number of elements, and the splits) in a hierarchical list, so I can examine it all as a webpage. In Javascript. And it took less time to execute than it takes for me to scroll down the list of elements alone. |
21:47 | | * Vornicus eyes it. Why is it not doing this innerHTML bit? |
21:51 | | * ToxicFrog stabs windows file naming conventions in the face until he runs out of knives, then warms up the chainsaw |
21:56 | <@Vornicus> | arg, case sensitivity and silent acceptance of new, unknown attributes to DOM elements. |
22:00 | <@Vornicus> | There we go. |
22:00 | <@Vornicus> | What'd it do to you today, TF? |
22:00 | | Vornicus is now known as Finerty |
22:01 | <@TheWatcher> | Vorn: unfortunately, I still wish it was faster - I'm still looking at ~1.5 seconds to process the tables and popups in a page with about 200 rows in the table (with a popup per row) |
22:06 | <@ToxicFrog> | Vorn: naming files after the lexical elements they correspond to will make it impossible to install this library on windows. |
22:06 | <@ToxicFrog> | I am not amused. |
22:09 | | Alek is now known as Nathia |
22:10 | | Nathia is now known as Alek |
22:15 | <@Finerty> | TF: ...I'm kinda lost. What are you doing? |
22:19 | < Rhamphoryncus> | If loading a table is slow you might consider turn it into something besides a table, or splitting it into multiple tables |
22:26 | | Alek [omegaboot@A2BA3E.D9488C.4EAD6F.5FB089] has quit [Ping timeout: 121 seconds] |
22:26 | | Alek [omegaboot@Nightstar-32f25247.emhril.sbcglobal.net] has joined #code |
22:30 | <@ToxicFrog> | Finerty: vstruct 2.0. |
22:31 | <@ToxicFrog> | IO and control handlers are now their own files. |
22:31 | <@ToxicFrog> | It would be nice to, say, name the handler for bigendian '>.lua', as this simplifies the loading logic |
22:31 | <@Finerty> | How about converting the names into html entity names. gt, for instance |
22:32 | <@ToxicFrog> | That's no harder or easier than what I would nneed to do to call it |
22:32 | <@ToxicFrog> | 'bigendian.lua' |
22:32 | <@Finerty> | Mh, point. |
22:33 | <@Finerty> | Use of symbols for filenames is still, even on systems that allow it, Bad Juju. |
22:33 | <@Finerty> | imo. |
22:44 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited] |
22:49 | <@ToxicFrog> | Why? |
22:50 | <@McMartin> | More chances for disaster when you forget to escape or when some script forgets the quotes. |
22:51 | <@Finerty> | Hell, there is production-released code out there that still doesn't know that spaces are allowed in path names. MacWine for instance I still haven't figured out precisely how to fix for this. |
22:52 | <@ToxicFrog> | McMartin: these are internal library files, soooo... |
22:53 | <@ToxicFrog> | That said, it's irrelevant because I need this to work on windows. Cue package.preload wackiness. |
22:53 | <@Finerty> | As are the files that MacWine fails to find! |
22:53 | <@ToxicFrog> | Aah. |
22:54 | | * Derakon returns from a walk. |
22:56 | | AnnoDomini [farkoff@Nightstar-93bbfe6f.adsl.tpnet.pl] has quit [[NS] Quit: KAA NAMAH FHTAGHN CTHULHU!!!] |
--- Log closed Mon Oct 12 00:00:54 2009 |