[Jamie Webb <[EMAIL PROTECTED]>, Thu, 2 Feb 2006 18:56:34 +0000]:
> I think 'replace' depends on every file it modifies, thus it is just
> as poisonous as any other patch. This is the trouble in general with
> trying to intersect domains or anything fancy like that. David has
> previously said that breaking up a patch is probably infeasible, so I
> don't think anything beyond domains plus domain unions can be made to
> work.

Of course `replace' is as poisonous as anything else, but I see the
utility of domains as much more general.  Introducing all this
machinery just for the sake of avoiding poison seems like a terrible
tradeoff to me: After all, the real problem is that people pull
together into a single repo what should really be many separate repos.

There is nothing in the concept of domains that ties it to the
avoidance of poisonous patches.  It just so happens that domains can
be used to this end, among many other ends.  And those other ends may
have no need for disjointness at all.

An example for this would be the selection of the domain (sic!) the
replacement operator acts on: One of the problems `replace` currently
has is the fact that all the files it acts upon must already be in the
repo.  A domain might allow me to declare instead that FOO is to be
replaced by BAR within a given domain BAZ (which might be, e.g., a
subdirectory).  Whenever something is pulled into that domain, the
replacement would also be performed.

(Indeed, probably because of the mental model afforded by the
similarities of patch algebra and quantum mechanical operators, I
always expected `replace` to act on the whole repo by default.  This
would not play well with pulling the contents of some other repo, but
the limitation to already existing files seems arbitrary,
inconvenient, inflexible, and unaesthetic.)

Albert.

_______________________________________________
darcs-users mailing list
[email protected]
http://www.abridgegame.org/mailman/listinfo/darcs-users

Reply via email to