Answers are grounded in this paper and cite their sources.
Links code smells and refactorings in Elixir, suggesting practical guidelines for improvement.
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.
No takes yet. Share an insight, caveat, or question.
Vegi et al. (2026) studied this question.
Synapse has enriched 10 related papers. Consider them for comparative context: