<story><title>Comparing the Same Project in Rust, Haskell, C++, Python, Scala and OCaml</title><url>http://thume.ca/2019/04/29/comparing-compilers-in-rust-haskell-c-and-python/</url></story><parent_chain><item><author>galaxyLogic</author><text>That is all true. At the same time here the groups were allowed to use the language of their choice. Presumably they chose languages they felt they were competent in.&lt;p&gt;Of course an expert of a given programming language can write much better in it than a novice. But a comparison like this is not necessarily about comparing top-programmers in every language, but average programmers, because we want to know results that are true &amp;quot;on average&amp;quot; .&lt;p&gt;The author does note he  &amp;quot;knew (they) were highly competent&amp;quot;. So they were not exactly novices in their language of choice. Writing a compiler is not a task for novices in general.</text></item><item><author>WalterBright</author><text>It&amp;#x27;s difficult to write a fair comparison without being a fairly competent programmer in each of the languages. The trouble is, if a person is an expert C programmer and then translates it to Python that he&amp;#x27;s only modestly familiar with, the Python program will look like C. It won&amp;#x27;t be idiomatic Python.&lt;p&gt;For example, my early Fortran programs looked like Basic. My early C programs looked like Fortran. My early C++ programs looked like C. And my early D code looked like C++.&lt;p&gt;It takes much more than being able to write a program in X to be able to write one that makes proper use of the language.</text></item><item><author>bfung</author><text>Excellently written, great topic, and done w&amp;#x2F;o flaming&amp;#x2F;too much bias.  I&amp;#x27;m amazed as many older folks in the industry would not be able to have this level of content and maturity to write an informative article.</text></item></parent_chain><comment><author>tigershark</author><text>There were people with 2k to 10k loc of experience in some language. That seems &lt;i&gt;extremely&lt;/i&gt; low for any meaningful comparison and I would really hope that “average” programmers have way more experience than that...
I think I was pretty junior after writing north of 100k loc and working on 1M loc projects. And for sure I don’t consider myself highly competent in F# after writing some thousands lines.
I agree with the conclusions when they say that the design decisions are much more important than the language of choice. But I still firmly believe that the language makes a very big difference in real world projects. In toy throw away projects obviously metaprogramming cuts a lot of locs.</text></comment>
<story><title>Comparing the Same Project in Rust, Haskell, C++, Python, Scala and OCaml</title><url>http://thume.ca/2019/04/29/comparing-compilers-in-rust-haskell-c-and-python/</url></story><parent_chain><item><author>galaxyLogic</author><text>That is all true. At the same time here the groups were allowed to use the language of their choice. Presumably they chose languages they felt they were competent in.&lt;p&gt;Of course an expert of a given programming language can write much better in it than a novice. But a comparison like this is not necessarily about comparing top-programmers in every language, but average programmers, because we want to know results that are true &amp;quot;on average&amp;quot; .&lt;p&gt;The author does note he  &amp;quot;knew (they) were highly competent&amp;quot;. So they were not exactly novices in their language of choice. Writing a compiler is not a task for novices in general.</text></item><item><author>WalterBright</author><text>It&amp;#x27;s difficult to write a fair comparison without being a fairly competent programmer in each of the languages. The trouble is, if a person is an expert C programmer and then translates it to Python that he&amp;#x27;s only modestly familiar with, the Python program will look like C. It won&amp;#x27;t be idiomatic Python.&lt;p&gt;For example, my early Fortran programs looked like Basic. My early C programs looked like Fortran. My early C++ programs looked like C. And my early D code looked like C++.&lt;p&gt;It takes much more than being able to write a program in X to be able to write one that makes proper use of the language.</text></item><item><author>bfung</author><text>Excellently written, great topic, and done w&amp;#x2F;o flaming&amp;#x2F;too much bias.  I&amp;#x27;m amazed as many older folks in the industry would not be able to have this level of content and maturity to write an informative article.</text></item></parent_chain><comment><author>anaphor</author><text>The article says that the instructor for the course cautioned against using Haskell because some people overestimated their competency with it.&lt;p&gt;I think it is actually very likely that people would chose a programming language or system for reasons other than how competent they are with it. E.g. to seem &amp;quot;smart&amp;quot; because you wrote your compiler in Haskell, even though you actually have much more experience with Java or Python.&lt;p&gt;FTA:&lt;p&gt;&amp;gt; Another interesting thing to note is that at the start of every offering of the course the professor says that students can use any language that can run on the school servers, but issues a warning that teams using Haskell have the highest variance in mark of any language, with many teams using Haskell overestimating their ability and crashing and burning then getting a terrible mark, more than any other language, while some Haskell teams do quite well and get perfect like my friends.</text></comment>