code logs -> 2009 -> Sun, 11 Oct 2009< code.20091010.log - code.20091012.log >
--- 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
code logs -> 2009 -> Sun, 11 Oct 2009< code.20091010.log - code.20091012.log >