Traits/interfaces in Fortran?

Might this be of interest to what you want to do Dynamic user-procedure list initialization ?