TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

VCS based on categorical theory of patches (2017)

23 pointsby qrv3wabout 7 years ago

4 comments

alephnanabout 7 years ago
Are there any endeavors to decouple VCS interface from the implementation? An analogy is LLVM, but for VCS, in terms of modularizing the architectural layers. It’s difficult justifying learning a new VCS when popular open source projects and employers select for particular systems. Surely there are tradeoffs, but enabling developers to use a familiar interface such as Git would reduce the friction of adoption, while still providing the benefits associated with a particular implementation that’s suited for the project.
评论 #16830858 未加载
colandermanabout 7 years ago
That&#x27;s a lot of text not to mention Darcs, which I believe introduced the &quot;unordered set of patches merged by mathematical theorem&quot; [1] 15 years ago.<p>I was a heavy Darcs user for a while before switching to Git. The biggest flaw in the &quot;set-of-patches&quot; model IMHO is the inability to quickly compare the state of two repositories. With Git, this is trivial -- since commit hashes represent the entire history, just compare them. With a Darcs-style VCS, you&#x27;re limited to only comparing patch sets that have been explicitly tagged, or comparing the repositories patch by patch. And the existence of rebasing (which is sometimes necessary even in Darcs-style repos) pretty much negates the main benefit of the set-of-patches model.<p>[1] <a href="https:&#x2F;&#x2F;en.wikibooks.org&#x2F;wiki&#x2F;Understanding_Darcs&#x2F;Patch_theory" rel="nofollow">https:&#x2F;&#x2F;en.wikibooks.org&#x2F;wiki&#x2F;Understanding_Darcs&#x2F;Patch_theo...</a>
评论 #16830932 未加载
louthyabout 7 years ago
This is very nicely written. Isn&#x27;t the principle essentially similar to vector clocks? It certainly <i>feels</i> very similar.
评论 #16817575 未加载
评论 #16817221 未加载
user51442about 7 years ago
That was weird: an hour ago I was reading &quot;Version Control with Git&quot; about merging and thinking &quot;Hey, this is all just category theory&quot;, I then have a look at HN, and see this.