Abstract
The modern Fortran is one of the major languages in computational sciences. New features introduced in Fortran 2003 and later have improved the writing experiences of simulation programming. Some features of the language, however, can be further improved by slightly modifying its lexical syntax and imposing a coding rule. In this paper, we propose a dialect of the modern Fortran for the improvements. The features of the dialect include; the period “.” as the member access operator; block comments, addition/subtraction/multiplication assignment, pre-defined and user-defined aliases, automatic check of “implicit none” call, “just once” block, and “skip” block. We have developed a preprocessor to convert the dialect into the legitimate Fortran. It is a simple text converter that keeps the line numbers of the input dialect and the output standard codes.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Adams, J.C.: The Fortran 2003 Handbook : The Complete Syntax, Features and Procedures. Springer, Heidelberg (2009). https://doi.org/10.1007/978-1-84628-746-6
Componey, T.F.: F Home page. http://www.fortran.com/F/
Corporation, I.: Intel Fortran compiler. https://software.intel.com/en-us/fortran-compilers
Foster, M.P.: Quantity correctness in Fortran programs. Comput. Sci. Eng. 19(4), 83–87 (2017)
Free Software Foundation, I.: GNU Fortran Project Home page. https://gcc.gnu.org/fortran/
Group, N.A.: NAG Fortran compiler. https://www.nag.co.uk/nag-compiler
Hassan, A.A., Cardellini, V., Filippone, S.: A framework for unit testing with coarray Fortran. In: 25th High Performance Computing Symposium, HPC 2017, Part of the 2017 Spring Simulation Multi-Conference, SpringSim 2017, vol. 49, no. 3, pp. 47–58 (2017)
Kageyama, A.: EFPP. https://github.com/akageyama/efpp
Kageyama, A., Miyagoshi, T., Sato, T.: Formation of current coils in geodynamo simulations. Nature 454(7208), 1106–1109 (2008)
Kennison, D.: The IFTPAN preprocessor. Record 3(6), 8–10 (1982)
Kernighan, B.W.: RATFOR–a preprocessor for a rational Fortran. Softw. Pract. Exp. 5(4), 395–406 (1975)
Kernighan, B.W., Plauger, P.J.: Software Tools. Addison-Wesley Pub. Co, Boston (1976)
Kernighan, B., Ritchie, D.: The M4 macro processor. Bell Lab. Tech. Rep. 54, 1–5 (1977)
Lahey Computer Systems, I.: ELF90. http://www.lahey.com/elfpage.htm
Miyagoshi, T., Kageyama, A., Sato, T.: Zonal flow formation in the earths core. Nature 463(6), 793–796 (2010)
Osmialowski, P.: How the flang frontend works. In: Proceedings of the Fourth Workshop on the LLVM Compiler Infrastructure in HPC (LLVM-HPC 2017) (2017)
Project, L.: LLVM. http://llvm.org
Spinellis, D.: Notable design patterns for domain-specific languages. J. Syst. Softw. 56(1), 91–99 (2001)
Tsuji, T., Watanabe, K., Ikehata, A.: Structured FORTRAN preprocessors generating optimized output. Sotw.-Pract. Exp. 18(5), 427–442 (1988)
Turner, K.J.: Exploiting the m4 Macro Language. Technical report CSM-126, pp. 1–17 (1994)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Hosoyamada, S., Kageyama, A. (2018). A Dialect of Modern Fortran for Computer Simulations. In: Li, L., Hasegawa, K., Tanaka, S. (eds) Methods and Applications for Modeling and Simulation of Complex Systems. AsiaSim 2018. Communications in Computer and Information Science, vol 946. Springer, Singapore. https://doi.org/10.1007/978-981-13-2853-4_34
Download citation
DOI: https://doi.org/10.1007/978-981-13-2853-4_34
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-2852-7
Online ISBN: 978-981-13-2853-4
eBook Packages: Computer ScienceComputer Science (R0)