Hi Julia users,
As a newcomer, let me first introduce myself. I have some experience in numeric code, written mostly in Fortran 2008, C++, C#, Delphi and Mathematica. As a consultant, I have to write some numerical codes but those need to be written in languages that are different from clients to clients. Most of the time, the code can't be linked to any open source library for licensing (or management) reasons. Therefore, I need to rewrite some basic codes in a lot of different languages. Bug fixed in one language are a pain to fix in another one.
Therefore, it would be nice to have a unified language for prototyping. Julia seems to be an amazing candidate for different reasons :
- Execution speed in the same order as compiled languages
- I love the type system and the multiple dispatch idea
- The language is quite close to all the above languages when it comes to number crunching
- Its reflection capabilities
As Julia code can be manipulated by Julia, I am wondering if translating Julia code to any of those language could be mostly automated. With Mathematica, it is quite easy to generate code from mathematical expressions, which is an extremely powerful way of preprocessing symbolic expressions before the big number crunching.
I am thinking of a Julia function that takes as input :
- A Julia function that use only function whose concrete output types can be inferred from their concrete input types
- Some concrete types
- A language : Fortran, C, C#, Delphi
and output some code in that language.
Even if this process can't be completely automated, it there a way to make have a code "helping" at the translation ?
Best regards to all of you,
François