From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Thu, 22 Nov 2012 19:11:27 +0100 From: tlaronde@polynum.com To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Message-ID: <20121122181127.GA2801@polynum.com> References: <0031c5cf57e92ce48e169455b02639be@quintile.net> <273841d9-5bf5-4388-9e46-0fe788741484@googlegroups.com> Mime-Version: 1.0 In-Reply-To: <273841d9-5bf5-4388-9e46-0fe788741484@googlegroups.com> User-Agent: Mutt/1.4.2.3i Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Subject: Re: [9fans] c++ Topicbox-Message-UUID: e3f14a32-ead7-11e9-9d60-3106f5b1d025 On Thu, Nov 22, 2012 at 05:40:25PM +0000, Pavel Klinkovsky wrote: > > and even that aside, can you cite studies that show that the choice of programming > > language is the dominant term in determining the error rate of the resulting > > code? > > Could it help? > http://archive.adaic.com/intro/ada-vs-c/cada_art.html The study is interesting and the conclusion so too, since there is a way to use a language, partly due to the language, partly due to the know-how and habits of the language (Ada programmers made more comments about what the code was supposed to do, and there was a better locality of bugs indicating a better partitionning). FWIW, litterate programming (cweb) has improved the quality of my C code, precisely because of comments (but learning not to make books, but to get to the point), and subdivision. Fixing or improving is also easier then. But it took me some time to find my "style" or to understand better how to use it, and the first uses were disastrous (a lengthy "discussion" beating around the bush and not helping in anyway to describe the problem---not to speak about "smart" reflexions that were, on re-reading, mathematical nonsense---, followed by a lengthy code that was not directly related to the "discussion" since I had spent to much time "discussing" and needed to have the job done...). It was no miracle per se, but a tool helping to improve if used correctly. The situation is complexe. But there are languages that give you the power but enforcing some strict rules (I simply hate the implicit features or automatic polymorphic features of languages; source code where non visible chars have syntactic meaning; I prefer strong type checking enforcements etc.) And there are habits that are taught and learned, and with the very same language, there may be schools, correct and bad ones... That's why, BTW, the trend to think that a programmer or a developer should be dropped when he gets old, is dropping the know-how that has probably not a small effect on the quality of code, independantly from the language by itself. -- Thierry Laronde http://www.kergis.com/ Key fingerprint = 0FF7 E906 FBAF FE95 FD89 250D 52B1 AE95 6006 F40C