code logs -> 2006 -> Tue, 10 Oct 2006< code.20061009.log - code.20061011.log >
--- Log opened Tue Oct 10 00:00:59 2006
00:01 Reiver is now known as Reivette
00:02 Reivette is now known as Reiver
00:09 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code
00:09 mode/#code [+o ToxicFrog] by ChanServ
00:36 Vornicus [~vorn@ServicesOp.Nightstar.Net] has quit [Quit: Leaving]
00:39 Vornicus [~vorn@67.50.40.ns-3674] has joined #code
00:39 mode/#code [+o Vornicus] by ChanServ
00:44 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #code
01:25 ThaquiWork is now known as Thaqui
01:41 Reiver is now known as ReivClass
02:44 himi-heading-home is now known as himi
02:45 himi is now known as NSGuest-329
02:45 NSGuest-329 is now known as himi
02:59 ReivClass is now known as Reiver
03:28 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: 8%]
04:18 * Reiver accosts jerith idly.
04:52 McMartin [~mcmartin@Nightstar-8843.dsl.pltn13.pacbell.net] has joined #code
04:52 mode/#code [+o McMartin] by ChanServ
04:52
<@McMartin>
"The Shadows Shadowed Rating is a Shadows Shadowed Outcome that varies."
04:52 * McMartin should maybe reconsider his variable naming scheme.
04:54
<@Vornicus>
i agree
04:59
<@McMartin>
Mmm. I need a better name for my final scene, though.
04:59
<@McMartin>
"Endgame" is kind of... anticlimactic.
05:13 * McMartin works out a nifty trick.
05:14
<@Vornicus>
show uuussss
05:15
<@Vornicus>
<pstickne> Does Ruby have anything like weak hashes?
05:15
<@Vornicus>
<Vornicus> What makes weak hashes weak?
05:15
<@Vornicus>
<cschneid_foo> Vornicus, sitting in front of computers all day
05:16
<@McMartin>
A weak hash will let you garbage-collect its keys or values.
05:16
<@McMartin>
And remove the relevant entry at garbage-collection time.
05:16
<@Vornicus>
Yeah
05:17
<@Vornicus>
I got that later
05:17 * McMartin wonders if this would be worth actually turning into an I7 extension, but he kind of doubts it.
05:17
<@McMartin>
To say win message: (- deadflag = 2; -)
05:17
<@Vornicus>
I thought maybe he meant "I can look up a key that doesn't exist and still get a sane value back"
05:18
<@McMartin>
Now you can say, for instance: end the game saying "You have pwn3d the world, go you[win message]".
05:18
<@McMartin>
And you'll get the option for the AMUSING menu, just as you would for "end the game in victory".
05:18
<+himi>
A hash of weak references . . .
05:18
<@Vornicus>
I just thought it was funny.
05:19 * Vornicus doesn't quite understand the usage of weak references - seems to him that trying to talk about an already-GC'd thing would, uh. suck.
05:20
<@McMartin>
Vorn: It's generally for instrumentation.
05:21
<@McMartin>
So, if I want to have a separate index to "everything the program really wants to deal with"
05:21
<@McMartin>
Then when the program I'm watching lets stuff leave its scope -- that is to say, the only links left to it are the ones in my watching program, I want to clean up and then trigger collection.
05:22 * McMartin isn't doing this in his prototype just now, but he really should be.
05:22
<@McMartin>
Failure to use weak references in places where you really should be is how you get memory leaks in garbage-collected languages like Java or presumably Ruby.
05:23
<+himi>
Also something like elements tied to entries in a database backend - you want a cache, but you don't care too much if they get collected after a while and you have to regenerate them
05:24
<@Vornicus>
Ruby tends to have the same problem as early Java did, in my experience - it leaks and leaks until it runs out and /then/ goes looking.
05:24
<+himi>
Hey, GCs are hard
05:24
<@McMartin>
Java and *I think* OCaml are the only GCed languages that do pre-emptive GCing.
05:25
<@McMartin>
Hell, I think Perl is still using pure reference counting, which isn't even correct
05:25
<+himi>
Perl is still using Perl 5, which is now more than a decade old
05:25
<@Vornicus>
GCs are hard, but also mostly a solved problem. Refcounts or whatever that got replaced by first, then if you're /still/ having problems, mark/sweep.
05:26
<+himi>
And OCaml does incremental GC regularly, so yeah, it's preemptive
05:26 * himi was being somewhat sarcastic when he said GCs are hard
05:29
<@McMartin>
Vorn has just described the system that does have the problem he notes in Ruby.
05:29
<@Vornicus>
really?
05:30
<@McMartin>
Yes.
05:30
<@McMartin>
Mark and sweep involves walking the entirety of core.
05:30
<+himi>
Yay!
05:30
<@McMartin>
You have to use generational or "the train algorithm", with which I am kind of unfamiliar, to get workable incremental collection.
05:30
<+himi>
At least it's not stop and copy . . .
05:31
<@Vornicus>
stop and copy?
05:31
<@McMartin>
Generational has some of the same problems stop and copy has, but it suffers a little less.
05:31
<@McMartin>
Stop and copy: Divide core in half. Instead of mark-and-sweep, instead copy over all live objects to the other half.
05:31
<@Vornicus>
...wait, that's "hang on, I'm out of memory, let me copy what's live and dump the rest"?
05:31
<@McMartin>
Yeah, and you only get half the core to work in, since you need that other half as workspace.
05:32
<@McMartin>
This has the added advantage of removing all memory fragmentation, I note.
05:32
<+himi>
(incidentally, that issue I was seeing with CSIRO's Websphere/Vignette setup was probably due to the lack of a generational GC in the JVM being used)
05:32
<@McMartin>
A really lame version of stop and copy is actually totally reasonable for a lot of subshell-based systems like emacs.
05:32
<+himi>
Yeah, the fragmentation cleanup is nice, but the memory copy is heavy
05:32
<@McMartin>
Unless you don't have a lot of objects that need saving.
05:33
<@McMartin>
Serializing state to disk and then reloading it all under the hood every 15 minutes or so would solve a lot of Word's bloat problems~
05:33 * himi believes GNU emacs uses plain stop and copy, though it may be more sophisticated in v21
05:33
<@McMartin>
stop and copy should be sufficient for Emacs, really.
05:34
<@McMartin>
How many object roots does it really have, after all?
05:34
<+himi>
Never looked at elisp beyond the minimum needed for fiddling with my .emacs, so I can't comment usefully
05:35 * Vornicus hunts around for the train algorithm
05:36
<@McMartin>
It's better at spatial locality than generational, but worse at time locality.
05:36
<+himi>
But a sophisticated GC will use a combination of algorithms to tune things for the expected uses, so someone trying to gank, say, the OCaml GC would probably have a nasty time of it
05:37
<+himi>
Which is probably why so many languages start out doing refcounting
05:37
<@Vornicus>
nerb
05:37
<@Vornicus>
SLEP
05:38 * Vornicus nerbSLEP
05:38
<@Mahal>
nini Vorni
05:39 Vornicus is now known as Vornicus-Latens
05:57 Thaqui is now known as ThaquiWork
06:07
<@McMartin>
"Hi, I'm writing my first IF, and I want to randomly change the background color every turn." "No. No you really don't want to do this."
06:10 himi [~fow035@152.83.10.ns-12024] has quit [Connection reset by peer]
06:22
<@Reiver>
...
06:22
<@Reiver>
But why?
06:22 Chalcedon is now known as ChalcyOut
06:22
<@McMartin>
The answer appears to be that he's trying to use it to create an art gallery piece.
06:26
<@Reiver>
O.o
06:26
<@Reiver>
What?
06:27 * McMartin dunno.
06:37 ChalcyOut [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
06:37 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
06:37 mode/#code [+o Chalcedon] by ChanServ
06:58 EvilNiNiLord is now known as EvilDarkLord
07:59 You're now known as TheWatcher
08:30 Mahal is now known as MahalZzz
08:30 MahalZzz [~Mahal@Nightstar-11770.worldnet.co.nz] has quit [Quit: It's hard to be mad at someone who misses you while you're asleep. ]
08:58 McMartin [~mcmartin@Nightstar-8843.dsl.pltn13.pacbell.net] has quit [Operation timed out]
09:00 McMartin [~mcmartin@Nightstar-8843.dsl.pltn13.pacbell.net] has joined #code
09:00 mode/#code [+o McMartin] by ChanServ
09:13 Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
09:13 mode/#code [+o Chalcy] by ChanServ
09:14 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Killed (NickServ (GHOST command used by Chalcy))]
09:14 Chalcy is now known as Chalcedon
09:29 You're now known as TheWatcher[wr0k]
09:37 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Quit: ]
09:38 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
10:08 Chalcedon is now known as ChalcyZzz
11:46 ThaquiWork is now known as Thaqui
11:47 Thaqui is now known as NSGuest-334
11:47 NSGuest-334 is now known as ThaquiWork
11:48 ThaquiWork is now known as Thaqui
12:52
< EvilDarkLord>
Silly question. How do I detect linebreaks in PHP ( \n ) using regexps?
12:54
< EvilDarkLord>
Neither '\n' nor '/\n/' seem to do it.
13:23 ChalcyZzz [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
13:38 Thaqui is now known as ThaquiWork
13:39 Reiver is now known as ReivZzz
13:39 ThaquiWork is now known as ThaquiSleep
13:51 ReivZzz is now known as ReivSLEP
14:05 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout]
14:17 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code
15:23
<@ToxicFrog>
EDL: as a general rule, detecting linebreaks in regexes is made of pain and suffering except in the forms $ (end of line) and ^ (start of line).
15:24
<@ToxicFrog>
That is, you can detect \nfoo, and foo\n, but not foo\nbar except by using two seperate regexes.
15:26
<@ToxicFrog>
Depending on PHP's regex API, you may be able to change this by messing with REG_NEWLINE, REG_NOTBOL and REG_NOTEOL, but only maybe.
15:37
<@TheWatcher[wr0k]>
TF: ... I'm not sure about PHP, but somehting like $body =~ /foo(\w+)\n(.*?) bar/ will work fine in perl
16:34 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout]
16:35 You're now known as TheWatcher
16:44 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code
17:19 You're now known as TheWatcher[afk]
17:22 Vornicus [~vorn@Nightstar-18307.slkc.qwest.net] has joined #code
17:22 mode/#code [+o Vornicus] by ChanServ
17:58
<@Vornicus>
My coat contained a furnace where there used to be a guy
18:50 ChalcyZzz [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
18:52 ChalcyZzz is now known as Chalcedon
18:54 You're now known as TheWatcher
19:05
<@Vornicus>
gnar. I can't find a way to get this file without manually entering a password.
19:05
<@TheWatcher>
Hrm?
19:06
<@Vornicus>
I have a file on a machine with ssh/sftp. I need a password for either.
19:06
<@TheWatcher>
Can't use public cert auth for the ssh?
19:07
<@Vornicus>
...having never heard of public cert auth, no.
19:07
<@Vornicus>
What do I need to do to set it up?
19:08
<@TheWatcher>
on the client:
19:08
<@Vornicus>
I have another machine that I have total control over, but it's not publicly routable.
19:08
<@Vornicus>
which is where I have to get the file /to/
19:10
<@TheWatcher>
Okay, the idea is that on the client you set up a public/private keypair, then copy the public key to the server's allowed_keys file, then the client can connect to the server without the need to enter a password
19:10
<@Vornicus>
aha
19:11 * TheWatcher digs
19:11
<@TheWatcher>
http://sial.org/howto/openssh/publickey-auth/
19:11
<@TheWatcher>
I think that'll do it for you
19:12
<@Vornicus>
shiny
19:12
<@Vornicus>
okay I might be able to do that
19:24
<@Vornicus>
will doing this for ssh allow me to use scp or sftp the same way?
19:27
<@TheWatcher>
Yes
19:28
<@TheWatcher>
(I use the same technique for automatic remote backups on some of my servers - uses scp to do transfers)
19:30
<@Vornicus>
awesome
20:02 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout]
20:13 EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code
20:20 aoanla [~sam@Nightstar-26565.range81-158.btcentralplus.com] has joined #code
20:28
<@ToxicFrog>
Vornicus: public-private key authentication is pretty tasty, yes.
20:29 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #code
20:41 * aoanla ponders.
20:41 aoanla [~sam@Nightstar-26565.range81-158.btcentralplus.com] has quit [Quit: Leaving]
21:02 aoanla [~sam@Nightstar-26565.range81-158.btcentralplus.com] has joined #code
21:03 * aoanla notes that asymmetric key authentication only really works with at least one trusted authority.
21:04
<@ToxicFrog>
I trust myself; my systems trust me; problem solved.
21:04
< aoanla>
I meant in the Wider World of People.
21:04
< aoanla>
Or, actually, in e-Science >.>
21:05
<@ToxicFrog>
Heh.
21:05 * ToxicFrog just uses it so he can easily log into Orias from the other systems on his LAN.
21:06
< aoanla>
Well, that's also good, yes.
21:07
< aoanla>
And it /is/ lovely that SSH will use asymmetric crypto for that, since it's much better than passwords.
21:11 Mahal [~Mahal@Nightstar-11770.worldnet.co.nz] has joined #Code
21:11 mode/#code [+o Mahal] by ChanServ
22:17 MahalPC [~Mahal@Nightstar-11770.worldnet.co.nz] has quit [Quit: Leaving.]
22:30
<@Vornicus>
HI MY NAME IS VORN AND I'M RETARDED
22:30
<@McMartin>
HI VORN
22:30
< Janus>
Hi Mr. Vorn!
22:31
<@TheWatcher>
Hello Vorn
22:31
<@TheWatcher>
(um, no you're not)
22:31 Mahal [~Mahal@Nightstar-11770.worldnet.co.nz] has quit [Quit: It's hard to be mad at someone who misses you while you're asleep. ]
22:31
< EvilDarkLord>
Y halo thar monsieur vorn.
22:31
<@Vornicus>
Meet Chalain. He's my boss.
22:31 * aoanla notes that none of us are travelling backwards in time.
22:31
<@Vornicus>
He's even more retarded.
22:31 Mahal [~Mahal@Nightstar-11770.worldnet.co.nz] has joined #Code
22:31 mode/#code [+o Mahal] by ChanServ
22:31
< aoanla>
(Sorry, a joke there for the EM Theorists in the channel)
22:32
<@TheWatcher>
Vorn: why is this, then?
22:32 * McMartin would smite, but having just linked the CSE Band...
22:32
<@Chalain>
Yeah, well at least *I* don't walk away leaving my keyboard unguarded. :-)
22:33
<@TheWatcher>
... ah-ha
22:33
<@McMartin>
http://www.cs.washington.edu/orgs/student-affairs/cseband/ idly.
22:33 * McMartin suggests "Theory Girl" for this channel
22:33
<@Chalain>
Actually, I took the time to change the current channel. Had I just started typing, it would have gone to #ruby-lang on freenode. >:-)
22:33 * aoanla is still eyeing that code you posted, McM.
22:33
<@TheWatcher>
It's an interesting snippet
22:33
<@Chalain>
HOWEVER, a) That would be mean, b) a lot more people would see it, and most importantly, c) they wouldn't appreciate the joke.
22:33
< aoanla>
(It looks like it does something horrible to a hash-table, but...)
22:34
<@McMartin>
That's about as much as I could work out.
22:34
<@McMartin>
It was the "muhahahahahaha" comment that was being called out, tohugh
22:34
<@McMartin>
though
22:35 * TheWatcher is still trying to sort it in his head, knows it's a hash copy but the presenc eof the @{} cast is messing with his head a bit
22:36
<@McMartin>
Is it a hash flattener?
22:37
<@TheWatcher>
That'd be my guess, yes.
22:37
< aoanla>
Oh, good, it was mine, too.
22:38
< aoanla>
Well, I thought it was either that, or something so hideous that I'd never understand it.
22:40
<@TheWatcher>
Although if it wasn't 10:40 and I was pondering bed, I'd be tempted to write somethign to confirm that, because the comment was justified..
22:52 You're now known as TheWatcher[T-2]
22:59 You're now known as TheWatcher[zZzZ]
23:00 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: ~]
23:04 aoanla is now known as caps[t-2]
23:08 caps[t-2] [~sam@Nightstar-26565.range81-158.btcentralplus.com] has quit [Quit: Leaving]
23:14 ThaquiSleep is now known as Thaqui
23:34 ReivSLEP is now known as Reiver
23:45 mode/#code [+ooo Chalcedon Thaqui ToxicFrog|Stuff] by Reiver
23:45 mode/#code [+vv Ev3 EvilDarkLord] by Reiver
23:47 Chalcedon is now known as ChalcyUni
23:58 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #code
--- Log closed Wed Oct 11 00:00:17 2006
code logs -> 2006 -> Tue, 10 Oct 2006< code.20061009.log - code.20061011.log >