Concurrent programming in ERLANG (2nd ed.)
Concurrent programming in ERLANG (2nd ed.)
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
Extreme programming explained: embrace change
Extreme programming explained: embrace change
A Survey of Software Refactoring
IEEE Transactions on Software Engineering
TypEr: a type annotator of Erlang code
Proceedings of the 2005 ACM SIGPLAN workshop on Erlang
The Haskell Refactorer, HaRe, and its API
Electronic Notes in Theoretical Computer Science (ENTCS)
Erlang testing and tools survey
Proceedings of the 7th ACM SIGPLAN workshop on ERLANG
Refactoring with wrangler, updated: data and process refactorings, and integration with eclipse
Proceedings of the 7th ACM SIGPLAN workshop on ERLANG
Use Cases for Refactoring in Erlang
Central European Functional Programming School
Automated module interface upgrade
Proceedings of the 8th ACM SIGPLAN workshop on ERLANG
Automatic refactoring of Erlang programs
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
A domain-specific language for scripting refactorings in erlang
FASE'12 Proceedings of the 15th international conference on Fundamental Approaches to Software Engineering
Hi-index | 0.00 |
This paper focuses on introducing a new transformation to our existing model for refactoring Erlang programs. The goal of the transformation is to introduce a new abstraction level in data representation by substituting a group ofrelated data with a record. Using records enhances the legibility of the source code, makes further development easier, and makes programming less error-prone by providing better possibilities for both compilation time and runtime checks. There is a strong industrial demand for such a transformation in refactoring legacy code. Erlang is a dynamically typed language, and many of its semantical rules are also dynamic. Therefore the main challenge in this research is to ensure the safety of statically performed refactoring steps.