June 27, 2003

Quantum Mechanical Revision Control System

I just came across darcs, a revision control system. It is not just yet another CVS replacement; no, it is seriously cool. Well, that is, at least if you have - like me - a background in theoretical physics.

One thing is, that it is written in Haskell, a purely functional programming language. But even cooler is that it is actually based on a theory of patches, in which patches are seen as being analogous to the operators of quantum mechanics!

Darcs doesn't have a central repository, every checkout is its own repository and consequently also its own branch. Patches are coherently defined operators, that get your source code from one state to another, and they can be applied in different orders (that is, if they commute), can be merged, have an inverse, etc. and all these operations are defined in a nice theory heavily oriented around quantum mechanics lingo. Very Cool. At least for me :)

Of course, such a system allows for a few excellent excuses:

"I know it doesn't work, and I have checked all the last patches. But every time when I look at one of them closely, I can't reproduce the problem anymore." (Heisenberg Uncertainty Principle)

"Your code worked, but then I looked at your patch and I saw that actually, it could have never worked. That was the moment, when it stopped working." (Schrödinger's Cat)

"Your code does all these wonderful things, but as soon as I look at your patches alone all but one feature stop working. And every time it is a different one." (Decoherence)

Posted by seefeld at June 27, 2003 11:11
Trackback
TrackBack URL for this entry:
http://www.bernhardseefeld.ch/mt-tb.cgi/21

Listed below are links to weblogs that continue the discussion on 'Quantum Mechanical Revision Control System'
Comments
Post a comment












Remember personal info?