Abstract
Elixir is a functional programming language increasingly used in the industry to develop scalable and fault-tolerant concurrent systems more easily and with fewer computational resources. In previous studies, we cataloged 35 code smells and 82 refactorings tailored for this language, validating them with over 300 experienced developers worldwide. Aiming to complement the results of these previous studies, this work manually compares each code smell for Elixir with all the cataloged refactorings for the language, proposing practical guidelines for removing code smells in a disciplined manner within this specific context. In total, we mapped 176 relationships between all 35 code smells and 70 corresponding refactorings that can aid in their elimination. Additionally, we identified five new composite refactorings and found evidence suggesting the existence of an uncataloged code smell for Elixir. Our results were validated through a survey conducted with 10 experienced Elixir developers and have practical implications for how code smells can be removed in this language.
Author supplied keywords
Cite
CITATION STYLE
Vegi, L., & Valente, M. T. (2026). Mind the Gap: Linking Refactorings and Code Smells in Elixir. Journal of Software: Evolution and Process, 38(5). https://doi.org/10.1002/smr.70113
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.