This probably is going to lead to a heated discussion, but I wanted to get opinions on Fortran OO versus procedural in modules. Personally I code everything as a standalone modules that contain within relevant subroutines. I have no personal experience with using derived data types that contain procedural pointers or following a more strict OO scheme. My concern is with large scale numerical models (complex finite difference that currently takes 2 to 24 hours per model run depending on the input data sets) would suffer greatly, in terms of speed, by switching over to the OO paradigm. If the penalty is negligible, I would switch my coding style to it.
Any comments or personal experiences would be greatly appreciated!