Uni-Logo

Department of Computer Science
 

Technical Report No. 242 - Abstract


Annette Bieniusa, Peter Thiemann, Stefan Wehr
The Relation of Version Control to Concurrent Programming

Version control helps coordinating a group of people working concurrently to achieve a shared objective. Concurrency control helps coordinating a group of threads working concurrently to achieve a shared objective. The seemingly superficial analogy between version control and concurrency control is deeper than expected. A comparison of three major flavors of version control systems (exemplified by RCS, Subversion, and Darcs) with three influential and representative approaches to concurrency control (monitors, STM, and message passing) exhibits a surprisingly close correspondences in terms of mechanism and workflow. The correspondence yields new perspectives on both, version control and concurrency control.


Report No. 242 (PostScript)