Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
SPOT: a DSL for extending Fortran programs with metaprogramming
Yue S., Gray J. Advances in Software Engineering2014 9-9,2014.Type:Article
Date Reviewed: Jun 18 2015

The Fortran language, a first language for many older computer science (CS) architects, is still used extensively in high-performance computing (HPC). Lots of very functional legacy code is still running many important systems. While Fortran has evolved, it hasn’t kept pace with computing advances. The authors of this paper show how meta-programming could breathe new life into these less expressive but very powerful programs.

By developing a new domain-specific language (DSL) called SPOT, an approach is shown for extending Fortran programs to exploit computer architecture improvements such as multicore processors and grid computing. While the existing Fortran programs are very robust and useful, SPOT provides OpenFortran language extensions to bring in new parallel processing and aspect-oriented capabilities. The paper shows the new DSL architecture and various automatic translation approaches. This includes language options of either Fortran extensions or new source-to-source language translations wrapping existing code. The design of the OpenFortran framework is shown, as well as its relationship to OpenC++ and OpenJava efforts. For efficiency, SPOT uses control over compilation in its code generation approach, versus runtime control. This meta-level transformation code is added to base-level (existing) Fortran code; OpenFortran translates these into extended Fortran; and then the language is executed on the new computing platforms.

Through examples, such as a classic parallelized Dijkstra’s algorithm, the paper shows what a SPOT program looks like and how it achieves the stated new processing goals. By programming in what amounts to a new language, embedded snippets are inserted that reference existing code. The authors believe their translation language is language independent, so it could be extended to other languages. With brand new programming languages being designed daily, existing code from older languages seems to be left behind. A non-native language approach like SPOT for extending HPC Fortran applications could really benefit the computing community if it can be written and used effectively.

Reviewer:  Scott Moody Review #: CR143536 (1509-0794)
Bookmark and Share
  Featured Reviewer  
 
Domain-Specific Architectures (D.2.11 ... )
 
 
Fortran (D.3.2 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Domain-Specific Architectures": Date
Application of an agent software architecture for the SEBPC CARD project: implications for software defects
Ingham J., Boldyreff C. In Systems engineering for business process change. New York, NY: Springer-Verlag New York, Inc., 2002. Type: Book Chapter
Jun 26 2003
Revealing component properties through architectural styles
Wile D. Journal of Systems and Software 65(3): 209-214, 2003. Type: Article
Dec 15 2003
Formal methods for software architectures: Third International School on Formal Methods for the Design of Computer, Communication, and Software Systems
Bernardo M., Inverardi P., Springer-Verlag, London, UK, 2003.  287, Type: Book (9783540200833)
Jun 24 2004
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy