My understanding is that, when there is language=julia but no no output option, then the preprocessor writes MATLAB files. But when there is additionally an output option, then it will write the Julia files (the value of the output option is not totally ignored, it can be used to force a higher order than the one which is inferred from the contents of the .mod file; but the first and dynamic values seems to have no effect). This is definitely weird, and needs to be changed.
I think we should aim at maximum symmetry between MATLAB and Julia at the preprocessor level.
My suggestion is to :
trigger the Julia output as soon as language=julia, even if there is no output option
drop the dynamic and first values of the output option, since they actually have no impact. The second and third values can be left, so as to force a higher order (but not a lower one)