Refactoring object-oriented frameworks
Refactoring object-oriented frameworks
A refactoring tool for Smalltalk
Theory and Practice of Object Systems - Special issue object-oriented software evolution and re-engineering
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Challenges of refactoring C programs
Proceedings of the International Workshop on Principles of Software Evolution
The Mythical Man-Month: Essays on Softw
The Mythical Man-Month: Essays on Softw
Object Oriented Reengineering Patterns
Object Oriented Reengineering Patterns
Working Effectively with Legacy Code
Working Effectively with Legacy Code
Towards concurrency refactoring for x10
Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming
A proposal of operation history management system for source-to-source optimization of HPC programs
Proceedings of the 7th Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging
Automated refactorings for high performance Fortran programmes
International Journal of High Performance Systems Architecture
Systematic improvement of web applications design
Journal of Web Engineering
A static analysis tool using a three-step approach for data races in HPC programs
Proceedings of the 2012 Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging
CC'13 Proceedings of the 22nd international conference on Compiler Construction
Extracting UML class diagrams from object-oriented Fortran: ForUML
SE-HPCCSE '13 Proceedings of the 1st International Workshop on Software Engineering for High Performance Computing in Computational Science and Engineering
Hi-index | 0.01 |
Not since the advent of the integrated development environment has a development tool had the impact on programmer productivity that refactoring tools have had for object-oriented developers. However, at the present time, such tools do not exist for high-performance languages such as C and Fortran; moreover, refactorings specific to high-performance and parallel computing have not yet been adequately examined. We observe that many common refactorings for object-oriented systems have clear analogs in procedural Fortran. The Fortran language itself and the introduction of object orientation in Fortran 2003 give rise to several additional refactorings. Moreover, we conjecture that many hand optimizations common in supercomputer programming can be automated by a refactoring engine but deferred until build time in order to preserve the maintainability of the original code base. Finally, we introduce Photran, an integrated development environment that will be used to implement these transformations, and discuss the impact of such a tool on legacy code reengineering.This work is being funded by IBM under the PERCS project.