I might have the opportunity to submit a paper to an academic journal and also submit my code for it as well. However, I tend to do my projects across different coding languages because sometimes i'll be working in one language and then find a particular package available in another - so I work back and forth between languages.

I am just concerned that if I submit my paper and I am asked to supply code for replication purposes that it would be frowned upon that all the code is not central to one language. For example - I might do some of the project in Python and some in Matlab, and I would have to submit code for both languages.

Has anybody had experience with this?

  • Have you looked at some other papers in your target journal and looked at the languague(s) used?
    – Jon Custer
    Jan 22, 2020 at 13:56
  • It's not uncommon for software packages to involve multiple languages. Just make sure the version requirements are clear so that some future scholar could potentially make it all work again. Jan 22, 2020 at 15:48

2 Answers 2


The reason to ask for code is that the journal cares about reproducibility and quality of the science. The language of the code does not matter much, and normally it does not matter if two languages are used. A journal also accepts papers that use both fluorescence and mass spectroscopy, and there is no reason why they would refuse the use of two programming languages.

Of course it may be possible that your particular journal has additional requirements for code. If that is the case they probably say so in the author guidelines (you can check their website). If not, you can submit your code and they will let you know if something needs to be changed.


I think it would be foolish of a journal to require that all the code be in the same language. It would mean, in your case, submitting code that was not used to derive the results. Translating code from one language into another is fairly well automated, but the results obtained may not be identical, due to different libraries associated with the languages.

Moreover, if translations are done by hand, then errors may well be introduced.

Journals should be agnostic about these things. But it is possible that some journal would have a restriction. You could then decide to go along, or try to publish elsewhere. It would mean, of course, validating the new version of the code and rerunning all the simulations/experiments etc.

  • "Translating code from one language into another is fairly well automated" I'd have to disagree--this depends very heavily on which languages are used, and how heavily language-specific features are being used. In general, this is a far from easy problem to solve, and is not well automated. Jan 22, 2020 at 16:03
  • @setholopolus, actually that's exactly what compilers do. First create an abstract rendering of a program (usually a tree) and then render that representation into some other language. It doesn't need to be machine language. There has been lots (and lots) of research into how to do it well.
    – Buffy
    Jan 22, 2020 at 17:31
  • I am well aware of what compilers do. From context I assumed you were talking about translating human readable high-level code in one language to human readable high-level code in another language. Jan 22, 2020 at 18:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .