Определенно возможно связать их вместе (если они запрограммированы соответствующим образом) после компиляции их отдельно, если компиляторы и компоновщики все совместимы. Например:
g77 -c one.f
gcc -c two.c
gcc -o together one.o two.o
это компилирует файл Fortran, затем файл C, а затем связывает их вместе в один исполняемый файл с именем together
(при условии, что они вызывают друг друга правильно ;-) с помощью набора инструментов GCC.
Microsoft .NET - это популярный способ совместного использования нескольких языков - C #, F #, IronPython, IronRuby и так далее. Visual Studio будет обрабатывать компиляции в совместимые коды и объединять их в сборки, но вы также можете делать это «вручную», если хотите.
Если под «компиляцией» вы подразумеваете наличие нескольких разных языков в одном файле, это также возможно, но реже - например, некоторые компиляторы C имеют расширения, позволяющие вам выражать «встроенный» язык ассемблера в одном и том же файле. *