Одна ответственность: пользовательский интерфейс должен отвечать за отображение информации о ходе выполнения, будь то индикатор выполнения или другой визуальный эффект. Фортран не должен знать о том, как отображается информация, он просто излучает «события», говорящие о таких вещах, как «только что началось», «55%», «почти сделано» и «упс, которые не работали»
Как проходят события? Возможно, вам нужна какая-то технология «буферизации», возможно, с использованием (именованных) каналов или технологии очереди сообщений. Fortran может использовать библиотеки C, поэтому я полагаю, что если вы выберете коммуникационную технологию, если она не поддерживается непосредственно Fortran, вы можете начать, написав немного C, а затем перейти к этому из Fortran.