On Tue, Jan 31, 2006 at 09:40:30PM -0400, [EMAIL PROTECTED] wrote:
>
> You make a good case, but personally I still don't like domains because they
> tamper with one of the beautiful things about darcs: its minimal number of
> grouping/naming concepts. Unlike the alternatives, darcs has no separate
> concept for branches aside from the concept of repos, and in order to name
> repos it uses standard pre-existing naming schemes (scp, http, e-mail) instead
> of introducing its own concept of naming, and in order to group repos it uses
> standard pre-existing tools (filesystem, web server, e-mail bots). Therefore
> darcs comes very close to introducing *no* new grouping/naming concepts, where
> other systems introduce at least two and usually more.
>
> I treasure this simplicity and am reluctant to let it go.
as far as introducing new concepts goes, I don't think domains would
hurt this too much. certainly it is more lightweight than some of the
other proposals.
for one thing, domains are not a 'persistant' concept, there is no trace
of them in the repo other than changes to your domainfile which as far
as darcs is concerned is just another file. so you won't really need to
talk about domains that much once they are set up.
For all intents and purposes users can completly ignore domains,
developers can pretty much always ignore them too since darcs record in
interactive mode can just 'do the right thing'. most people would never
even need to learn the name.
The only time you might have to specifically think about them is when
you want to specifically break the domain disjointness for some reason
(like the one I mentioned in the other email). which is likely to never
come up and if so, only done by the person who set up the domains in the
first place so is already familier with them.
also, the terminology is not just pulled out of thin air. if you think
of all the darcs commands as functions from domain -> codomain (which
you can do if you think of values in the IO monad as part of the
codomain) then a 'domain' is exactly that, it is 'the part of the repo
you want to feed into the function given a name' plus some smartness in
record to maintain domain disjointness.
but yeah, I do enjoy darcs simplicity a lot too, however the 'poison
patch' problem is a huge hinderance to widely distributed development
with darcs and even comes up as an issue for single user development.
We need some help from darcs itself here and as far as help goes I think
domains are pretty darn good from a cost-benefit point of view. It
should be mentioned that this idea did not just come from no-where, I
have been thinking about the problem for a while paying attention to any
relevant discussion on the list and went through several iterations
before this formulation.
John
--
John Meacham - ⑆repetae.net⑆john⑈
_______________________________________________
darcs-users mailing list
[email protected]
http://www.abridgegame.org/mailman/listinfo/darcs-users