[darcs-users] some notes on patchwork and Darcs UI

Eric Kow kowey at darcs.net
Tue Jul 21 17:48:15 UTC 2009

Hi everyone,

Earlier in the year, Wolfgang had a couple of students working on
project to implement a Darcs GUI using Grapefruit.

I've checked with Wolfgang and it looks like their comments and the
source code are ready for the mailing list.  Here they are below.

Note that we now have a bug open http://bugs.darcs.net/issue1483 to
improve our repo-IO/user-IO separation.

For Darcs developers
Patchwork's GUI modules could be directly integrated into Darcs.
Therefore you will need to break up the commands into parts of user
interaction and parts of pure program logic which do not depend on the
way of UI. For an example see the module Patchwork.GUI.PushPull?. There
is a function called runPuPu with a detailed comment. There you can see
how we separated the Darcs logic and the UI. It is also a nice example
how you could enhance the readability of your command-functions. In
Patchwork.DIL.DarcsAPI you will find the Darcs code we used and how we
split it up.

The analysis of the darcs source code was very difficult for us because
there are far too less comments - even on essential types. Many
identifiers do not have meaningful names. Potential Darcs developers who
are not forced to deal with it by a student project could be seriously
discouraged by your sources.

Source: http://trac.haskell.org/patchwork/

darcs get http://code.haskell.org/patchwork/main patchwork

See in particular:

Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.osuosl.org/pipermail/darcs-users/attachments/20090721/e0c74f8b/attachment.pgp>

More information about the darcs-users mailing list