Dynamic polymorphism in Fortran 95: how submodules can help

This article discusses the implementation of generic list or tree structures in Fortran 95 via emulation of dynamic polymorphism. The method allows the unified handling of multiple kinds of information structures [1] using a single intermediate module. It is shown that a well-designed implementation additionally requires the use of the submodule feature as described in the Technical Report ISO/IEC 19767.