I think it would be interesting to have a tutorial on design patterns in Fortran.
Previously, I've written about the following patterns on Fortran Discourse:
The book Scientific Software Design by @rouson , Xia and Xu, introduces the following patterns:
- Object
- Abstract Calculus (a great example can be found on Discourse too)
- Strategy and Surrogate
- Puppeteer
- Factory
There are other works too (although some are outdated with appearance of F2003 and later constructs):
- Decyk, V. K., & Gardner, H. J. (2008). Object-oriented design patterns in Fortran 90/95: mazev1, mazev2 and mazev3. Computer Physics Communications, 178(8), 611-620. https://doi.org/10.1016/j.cpc.2007.11.013
- Markus, A. (2008, November). Design patterns and Fortran 2003. In ACM SIGPLAN Fortran Forum (Vol. 27, No. 3, pp. 2-15). New York, NY, USA: ACM. https://doi.org/10.1145/1462614.1462615 (cc @arjenmarkus)
- Rouson, D. W., Xia, J., & Xu, X. (2010). Object construction and destruction design patterns in fortran 2003. Procedia Computer Science, 1(1), 1495-1504. https://doi.org/10.1016/j.cpc.2007.11.013
- Gorelik, A. M. (2004). Object-oriented programming in modern Fortran. Programming and Computer Software, 30, 173-179. https://doi.org/10.1023/B:PACS.0000029582.33766.ba
- Morris, K. (2015). Emulating Multiple Inheritance in Fortran 2003/2008. Scientific Programming, 2015(1), 126069. https://doi.org/10.1155/2015/126069
I think it would be interesting to have a tutorial on design patterns in Fortran.
Previously, I've written about the following patterns on Fortran Discourse:
The book Scientific Software Design by @rouson , Xia and Xu, introduces the following patterns:
There are other works too (although some are outdated with appearance of F2003 and later constructs):