Do reviewers tend to reward or dismiss the use of new languages in scientific computing projects?

I tend to get annoyed reading a paper that has its code examples in an atypical language for the area. I don't want to have to learn the language to understand the examples. Unless the paper is about the language and its features or advantages or disadvantages, the example code should be as straightforward to understand as possible, and using a toy or hobby language to provide algorithm examples makes the review harder to do. I'm likely to decline to even do the review if I don't think I'll be able to get through it easily. For example, working in high performance computing (my area), unless the paper is about the advantages of a new run-time system with its own language, I don't want to see some sparse matrix algebra routines in Haskell or Julia since I don't come close to speaking or understanding either of those languages. I'd rather you use a made up psuedo-code description of the implementation and not even provide the actual code unless you're making a specific point about the implementation that's part of the new results.


I think that the answer to the question in the title is that the programming language plays no role.

Concerning the question if you should use Julia or/and other languages, I think that the answer depends on your goals. If you head to reproducibility, then just using Julia is totally OK. Julia is simple enough to install and fairly simple to read, so that most people who are really interested should have no problem to test your code. If, however, you want that your code is actually used by others, you should provide an implementation in the "native language" of the community. Providing an additional implementation in Julia to promote the language (and I agree, Julia has the potential to become important in many computational fields) is helpful.


There's two questions here. One is about what language you should write in for the purposes of your paper (and the source code related to you paper). The other is how much you want people to adopt your code.

The first is likely to have a small amount of impact on whether your paper gets accepted - in general it's the algorithm that's important, and your implementation is an existence proof and something you can measure performance on. The other consideration is not to scare your audience: don't make them do more work that they have to.

The adoption story is about how many citations your paper gets. To pick a random example, Numerical Recipes has 115,000 citations on Google Scholar. If you write your code with good documentation under an appropriate licence in a language that's accessible and people want to use, they'll use it and you'll get more citations. If you write in an esoteric language that's less likely to happen. Of course, the trick is guessing what the language of the next 20 years might be.