Years ago, David Greer (of Robelle) had written a Pascal compiler for the
classic HP3000 (before HP introduced their Pascal). David's compiler was a
combination of a preprocessor, translator, and library routines. It would
take the Pascal source, generate the required SPL source code and that
reference his supplied library routines. It would then compile the SPL
producing a program. (The process was actually much cleaner then it
sounds).
SPLASH does some of the same to convert Classic SPL to C.
You could add support for your own data types by using the same
techiniques. Code some functions that would reside in an XL. When ever
you reference one of your data types, insert the function to convert it to
and from the standard Fortran data types.
If you have enough time and are willing to do it right, you could almost
write a processor that takes Fortran/90 code and generates Cobol...... :-)