LWN.net Logo

Linus played with Monotone before

Linus played with Monotone before

Posted Sep 15, 2007 19:06 UTC (Sat) by nlucas (subscriber, #33793)
In reply to: Linus played with Monotone before by khim
Parent article: Quotes of the week

Linus is badmouthing C++ use, not Monotone. In his view, C++ is unmaintainable, so Monotone is also, but remember that is his view, not the view of any Monotone developer, and never heard anyone who actually programmed in C++ criticizing Monotone code base.

Linus looked at Monotone when the project was just starting and most of the defects were things not implemented and/or not optimized yet. I would say 50-70% of the core git ideas come from what Linus saw in the Monotone design.

There are still many things left to do on Monotone, but now you can't compare the rate of development of a "Linus sponsored" project against low-profile ones as Monotone.

IMO Monotone is a great CVS, but it's not optimized for such a big project as the Linux kernel, and the developers are not in the final optimization steps yet, as they still have things left to do on the design.


(Log in to post comments)

Linus played with Monotone before

Posted Sep 16, 2007 4:31 UTC (Sun) by graydon (subscriber, #5009) [Link]

I tire of this discussion. It's such trash-talk. It doesn't even relate to our project. Our code is neither OO nor remotely messy or hard to maintain; it's in an idiosyncratic style, but I hardly think kernel developers should be throwing stones there. It's absolutely packed with staic and dynamic checking code, so you're unlikely to screw it up too badly if you make a mistake.

I'm not going to leap to defend C++. It's just a language. It's got a few advantages over C -- exceptions, destructors, strings, vectors and maps in the standard library -- but honestly it's still covered in warts. Show me a mature language that isn't. Languages are all tradeoffs. I picked it at random from an uninspiring set of choices.

Git is smaller and leaner because of a variety of hard-wired design decisions that we've intentionally rejected, just as they rejected our design decisions. Our history structure is richer -- including better merging -- we don't have as many trust failure modes, our disk, memory and network formats are decoupled, each is independently field-upgradable, and we compile and run on more toolchains and platforms than git. The rest of the discussion is just random flame rhetoric.

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds