Experimental IRC log happs-2007-07-04

Available formats: content-negotiated html turtle (see SIOC for the vocabulary)

Back to channel and daily index: content-negotiated html turtle

These logs are provided as an experiment in indexing discussions using IRCHub.py, Irc2RDF.hs, and SIOC.

01:15:58<sorear>alexj: ping
01:16:17<sorear>alexj: I think normalize :: a -> Maybe a would be better
01:16:31<alexj>how come?
01:17:38<sorear>improved sharing.
01:17:55<sorear>with a -> a a pure function can't tell if a change was made
01:18:06<sorear>so higher up constructors must be re-made
01:18:27<sorear>which will make incremental checkpointing hard
01:20:14<alexj>I'm not sure I understand.
01:20:33<alexj>can you give an example?
01:20:54<sorear>ACTION so loves drawing heap images on irc
01:21:20<sorear>if you have [1,2,3], and normalizing ints is absolute-value
01:22:12<sorear>@0 : 1 @1 : 2 @3 : 3 @4 : (@0:@5) @5 : (@1:@6) @6 : (@2:@7) @7 : (@3:[]) ptr to @8
01:22:16<sorear>@0 : 1 @1 : 2 @3 : 3 @4 : (@0:@5) @5 : (@1:@6) @6 : (@2:@7) @7 : (@3:[]) ptr to @7 i mean
01:22:22<sorear>then you normalize
01:22:46<sorear>we recurse down the list, and (since we can't see that the value didn't change) construct a brand new list
01:23:16<sorear>so we have
01:23:49<sorear>@0 : 1 @1 : 2 @3 : 3 @4-@7 : <garbage> @8 : (@0:@9) @9 : (@1:@10) @10 : (@2:@11) @11 : (@3:[]) ptr to @11
01:24:09<sorear>but then any incremental checkpointing system must descend the whole spine
01:34:03<alexj>so?
01:34:32<alexj>you can always write a direct conversion from some lower number.
01:34:52<alexj>and you only have to traverse the old spine if you have not updated state in a really long time.
01:35:02<alexj>usually more recent versions will have been stored, right?
01:36:12<sorear>no, because even if the state is in normal form we still have to try and normalize it.
01:36:25<sorear>with a -> a, normalize breaks sharing *even if no changes are made*
01:36:57<alexj>really?
01:36:58<alexj>oh ok.
01:37:21<alexj>so you return Nothing if you didn't actually change it.
01:37:48<sorear>yeah, that's what I was thinking
01:38:07<alexj>I just figured out another problem with normalize.... since we are using haskell types to represent XML and constructors are element names we end up with garbage xml in some cases.
19:30:27<shapr>SHAZAM!

Back to channel and daily index: content-negotiated html turtle