Camelia, the Perl 6 bug

IRC log for #darcs, 2011-05-04

| Channels | #darcs index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:27 intripoon joined #darcs
00:30 intripoon_ left #darcs
00:53 iago left #darcs
01:00 secorp joined #darcs
01:31 gwern left #darcs
01:38 gwern joined #darcs
01:38 gwern left #darcs
01:38 gwern joined #darcs
01:56 kyagrd left #darcs
02:14 owst left #darcs
02:24 intripoon_ joined #darcs
02:28 intripoon left #darcs
03:15 ManateeLazyCat joined #darcs
03:17 gwern left #darcs
03:18 gwern joined #darcs
03:34 ManateeLazyCat left #darcs
04:17 kyagrd joined #darcs
04:32 gwern left #darcs
04:39 gwern joined #darcs
04:39 gwern left #darcs
04:39 gwern joined #darcs
05:02 kyagrd left #darcs
05:38 kyagrd joined #darcs
06:07 jderque joined #darcs
06:19 jeltsch joined #darcs
06:44 shenshei left #darcs
07:17 Weltraumschaf joined #darcs
07:54 jeltsch1 joined #darcs
07:54 jeltsch left #darcs
07:54 jeltsch1 left #darcs
07:55 jeltsch joined #darcs
08:26 balor joined #darcs
08:49 balor left #darcs
09:39 kyagrd left #darcs
10:02 owst joined #darcs
10:23 kolmodin left #darcs
10:25 jonkri joined #darcs
10:38 JaffaCake1 is now known as JaffaCake
11:17 jonkri left #darcs
11:25 jonkri joined #darcs
11:33 jderque left #darcs
11:39 gal_bolle joined #darcs
11:41 jderque joined #darcs
11:41 intripoon_ left #darcs
11:42 intripoon joined #darcs
11:50 shenshei joined #darcs
12:08 owst left #darcs
12:17 jonkri left #darcs
12:19 gal_bolle left #darcs
12:46 balor joined #darcs
13:28 kowey joined #darcs
13:38 owst joined #darcs
13:51 jderque left #darcs
13:58 iago joined #darcs
14:40 owst left #darcs
14:41 Weltraumschaf left #darcs
14:42 arjanb joined #darcs
14:42 Weltraumschaf joined #darcs
14:47 balor left #darcs
15:50 jeltsch left #darcs
16:15 secorp left #darcs
16:18 jderque joined #darcs
16:41 raichoo joined #darcs
16:47 Weltraumschaf left #darcs
17:09 owst joined #darcs
17:21 secorp joined #darcs
17:41 Heffalump mornfall: you mentioned that prims behave a bit differently in v1 and v2 - I seem to have an example here where coalescing of prims is different between the two. Any thoughts on where to look for the difference?
17:42 Heffalump hmm, maybe something different is going on, never mind
17:48 Heffalump gnngh, looks like a pending bug!
17:54 shenshei left #darcs
18:15 * kowey makes his pending bug grimace
18:17 Heffalump I think it's 1316
18:20 kowey two potentially interesting tweets (from a sentiment-monitoring perspective),
18:20 kowey http://twitter.com/#!/levwal​kin/status/65609378933374976
18:21 kowey and http://twitter.com/#!/pozorv​lak/status/65696008503443456 (potentially useful insight about darcs not necessarily being intuitive for everybody)
18:45 secorp left #darcs
18:53 balor joined #darcs
19:11 balor left #darcs
19:11 balor joined #darcs
19:15 secorp joined #darcs
19:16 owst left #darcs
19:20 mornfall kowey: Another reddit flame. ...
19:21 Heffalump it's an intelligent flame, and pozorvlak is sympathetic to darcs and knows what he's talking about
19:21 Heffalump so not really a flame at all
19:23 Heffalump mornfall: I think I've remembered an example that makes associating guids directly with patches not work well.
19:23 Heffalump Imagine a patch type that applies an operation - e.g. replace - to every file in a directory.
19:23 Heffalump possibly recursively
19:24 mornfall Sure. But we never had that.
19:24 mornfall In current darcs, it would harldly commute with anything anyway.
19:25 mornfall hardly*
19:26 Heffalump but it's something that would be good to have in future
19:26 mornfall Would it?
19:26 mornfall I would need some use-cases to actually believe that.
19:27 Heffalump renaming a variable in darcs
19:28 mornfall For the ability to undo it by unpulling the patch?
19:28 Heffalump right now you get a semantic conflict when you merge the replace operation with adding new files
19:28 Heffalump because you have to snapshot the directory at the time to do the replace
19:28 Heffalump (I've actually run into this when working on rebase, it's not just theoretical)
19:30 mornfall Well, as far as I am concerned, until darcs detects replace patches and offers them automatically, this is more or less academical anyway.
19:30 mornfall Dragging darcs into editing files is way too cumbersome.
19:31 mornfall (And tree-spanning patches even more so.)
19:31 Heffalump I actually use it.
19:32 Heffalump and a tree-spanning patch would make it more convenient
19:34 mornfall Last time someone used darcs replace in GHC was 2008.
19:36 mornfall There were couple in 2007. Conversion from CVS seems to be from half of 2006.
19:37 mornfall Actually start of 2006p
19:37 mornfall .
19:38 Heffalump your argument basically rules out having semantic patches unless we can infer them automatically.
19:38 mornfall That's what my experience is, yes.
19:39 mornfall The investment in creating semantic patches manually is quite unlikely to ever pay off.
19:39 mornfall So people don't.
19:39 balor left #darcs
19:39 balor_ joined #darcs
19:39 Heffalump so why are you proposing to implement hunk move?
19:39 mornfall Because it can be detected.
19:39 Heffalump we don't even detect file moev
19:40 mornfall We should.
19:40 mornfall Also, move is not an editing operation.
19:40 mornfall Many people manipulate filesystem from commandline.
19:40 mornfall So darcs mv is not *that* bad, compared to mv.
19:40 Heffalump well, I use darcs replace from the commandline :-p
19:41 mornfall But I guess no-one is really using ed.
19:41 mornfall Or, sed, actually.
19:41 mornfall Since that's the commandline editor.
19:41 Heffalump you could also integrate darcs commands with an editor if you really wanted
19:41 mornfall Unlikely. Lack of manpower.
19:41 mornfall And it's hairy and complex.
19:42 mornfall You would either synthesise patches in the editor (probably not a good idea) or end up doing lots of work presenting the right files to darcs to make it conjure reasonable pending.
19:42 Heffalump you'd just have a menu item that invoked the darcs command
19:43 mornfall As long as you don't mind writing/reading back the file, that could work yes.
19:44 mornfall And that you have to use special search&replace syntax different from your editor's.
19:44 Heffalump anyway, my basic point is that I have a concrete example of why your current design for v3 prims is too restrictive. Even if you don't like semantic patches, ruling them out by design is a drastic step.
19:44 mornfall (And that most people would be disappointed anyway, since replace only handles tokens...)
19:44 mornfall Heffalump: They aren't ruled out at all, though.
19:45 mornfall Tree-spanning patches may be a challenge, but doesn't mean they cannot be represented.
19:46 Heffalump ok, made difficult then, because of the design of associating a uuid with a patch and saying that patches that affect different objects trivially commute
19:46 mornfall It's a tradeoff.
19:48 mornfall Darcs is horribly slow, and as long as it is bound by having to maintain a linear sequence of all patches and shuffling it being a very expensive operation, it is unlikely to become a serious contender.
19:48 mornfall I am merely being pragmatic.
19:50 Heffalump you already need to associate multiple uuids with one patch, both because of moves and because we actually want to commute named patches or groups of patches to get a fast commute operation
19:50 mornfall Right, that's accounted for by the design.
19:51 mornfall You were the one to object to that, IIRC.
19:51 Heffalump object to what?
19:51 mornfall To multiple UUIDs associated to a single patch.
19:52 mornfall Anyway, multiple is not a problem.
19:52 Heffalump I think it was the presentation as a special kind of thing ("multi-object patch") that bothered me
19:52 mornfall I see.
19:52 Heffalump anyway, to support more complicated things, you could make it possible to say that a patch doesn't commute by uuid at all
19:53 Heffalump so then having them degrades performance, but is still possible
19:53 mornfall Anyway, you *could* say that a certain patch has a variable list of UUIDs with it, i.e. that commute could actually change that list.
19:53 mornfall It would just pay a substantial performance penalty.
19:53 mornfall (Jinx?)
19:53 Heffalump :-)
19:54 Heffalump I think in my view, the list of UUIDs is just a cache, not a fundamental part of the patch.
19:55 Igloo But it it's only a cache, it doesn't help with the merging-two-projects use-case, does it?
19:56 mornfall Igloo: Well, you don't absolutely need it.
19:56 mornfall You would just need to deal with add-add conflicts differently.
19:56 mornfall It's nothing fundamental.
19:56 mornfall It's just a convenient representation.
19:56 Igloo Hmm, true
19:56 Heffalump there are two different uses for uuids
19:57 Heffalump one is the semantic improvement for add-add
19:57 Heffalump the other is the optimisation
19:57 mornfall Igloo: Although it would probably make the merge code an utter mess...
19:57 mornfall Heffalump: Another is extensibility.
19:57 Igloo Doing it without uuids, you mean? Yes
19:57 Heffalump how does it help with extensibility?
19:58 Heffalump you need uuids for add-add conflict improvements
19:58 mornfall Heffalump: By allowing patch types that do not know each other (i.e. they don't have a special commute defined).
19:59 mornfall Heffalump: While not enforcing linear ordering on everything.
19:59 Heffalump you don't need uuids for that, you can just say what file they apply to
20:01 mornfall True, but it does make the generic commute a lot more complicated (since it has to special-case move/add/rm patches).
20:01 mornfall And directory add/remove too.
20:02 mornfall And if you want to talk about objects that don't naturally map to files, you need to come up with special path formats that are normally forbidden.
20:02 mornfall (I.e. _darcs/foo paths in patches.)
20:03 Heffalump depends if they actually end up in files or not
20:04 Heffalump if they do, you have to conflict with everything anyway
20:04 Heffalump sorry, in versioned files
20:04 mornfall So while you probably don't strictly need uuids for anything, your life might be quite miserable without them.
20:04 Heffalump in fact, either way it's fine. You just have something different from FilePatch
20:05 mornfall Not sure I follow.
20:05 Heffalump (hangon, eating)
20:05 mornfall I should be actually sleeping, I totalled 9 hours in last two nights, and I need to get up early tomorrow.
20:22 Heffalump if you want to talk about widgets, you just have a patch type that says "this is a patch type for widgets"
20:23 Heffalump and then either it freely commutes with all file patches, or it commutes with none of them
21:02 jderque left #darcs
21:21 raichoo left #darcs
21:28 gwern left #darcs
21:30 gwern joined #darcs
21:30 gwern left #darcs
21:30 gwern joined #darcs
21:53 kolmodin joined #darcs
21:53 owst joined #darcs
21:54 raichoo joined #darcs
21:54 raichoo left #darcs
21:55 arjanb left #darcs
22:01 kowey left #darcs
22:09 iago_ joined #darcs
22:09 iago_ left #darcs
22:42 balor_ left #darcs
22:49 JaffaCake left #darcs
22:54 JaffaCake joined #darcs
23:36 exlevan left #darcs
23:37 exlevan joined #darcs
23:47 iago left #darcs

| Channels | #darcs index | Today | | Search | Google Search | Plain-Text | summary