Am 07.11.18 um 00:02 schrieb Steven Shaw: > Hi Simon and others, I recently came across Pijul <https://pijul.org/> > which seems to be the intellectual successor to Darcs rewritten in Rust. > There is Pijul hosting called Nest <https://nest.pijul.com/>, similar to > Darcs Hub. I was never a big Darcs user but was interested in the "theory > of patches". From what I can gather, Pijul has implemented this > mathematical theory with good algorithmic complexity. It's written in Rust > which might make it less appealing to previous Darcs users. I was wondering > what folks thought of it?
There is not much to be found about the theory of Pijul, except the original paper that inspired its development. (Not that the situation is much better for Darcs' theory.) Anyway, from what I gathered from that paper and the bits accessible from their home page, Pijul's theory is quite different from that of Darcs (although there are certain overlaps). Its approach to conflicts is, in a certain sense, dual to Darcs: while in Darcs a conflict is represented as a special sort of patch (Merger/Conflictor), in Pijul the conflict is represented as a special sort of "tree"; more correctly, they represent the content (state) of a repo not as a tree but as a (possibly cyclic) directed graph, thus allowing multiple conflicting versions of the tree state to coexist. The fact that Pijul is written in Rust certainly makes it a lot harder to understand it by reading the code. Last time I looked I found it very low-level, using mutation all over the place, and mostly missing any form of abstraction. Regarding algorithmic efficiency, this is indeed a problem with Darcs' current implementation, in particular its existing Merger/Conflictor representations. However, a better representation exists and has been implemented, it is just not fully integrated yet. There are some pretty fundamental design choices that we are currently discussing, most importantly whether merging should be "by value" or "by name". Cheers Ben
signature.asc
Description: OpenPGP digital signature
_______________________________________________ darcs-users mailing list darcs-users@osuosl.org https://lists.osuosl.org/mailman/listinfo/darcs-users