Mind the Gap: Linking Refactorings and Code Smells in Elixir.

Saved in:
Bibliographic Details
Title: Mind the Gap: Linking Refactorings and Code Smells in Elixir.
Authors: Vegi, Lucas1 (AUTHOR) lucas.vegi@ufv.br, Valente, Marco Túlio2 (AUTHOR)
Source: Journal of Software: Evolution & Process. May2026, Vol. 38 Issue 5, p1-31. 31p.
Subjects: Software refactoring, Functional programming (Computer science), Maintainability (Engineering), Software maintenance, Computer software, Programming languages, Software engineering
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. [ABSTRACT FROM AUTHOR]
Copyright of Journal of Software: Evolution & Process is the property of Wiley-Blackwell and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Engineering Source
FullText Text:
  Availability: 0
Header DbId: egs
DbLabel: Engineering Source
An: 194054114
AccessLevel: 6
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 0
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Mind the Gap: Linking Refactorings and Code Smells in Elixir.
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Vegi%2C+Lucas%22">Vegi, Lucas</searchLink><relatesTo>1</relatesTo> (AUTHOR)<i> lucas.vegi@ufv.br</i><br /><searchLink fieldCode="AR" term="%22Valente%2C+Marco+Túlio%22">Valente, Marco Túlio</searchLink><relatesTo>2</relatesTo> (AUTHOR)
– Name: TitleSource
  Label: Source
  Group: Src
  Data: <searchLink fieldCode="JN" term="%22Journal+of+Software%3A+Evolution+%26+Process%22">Journal of Software: Evolution & Process</searchLink>. May2026, Vol. 38 Issue 5, p1-31. 31p.
– Name: Subject
  Label: Subjects
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Software+refactoring%22">Software refactoring</searchLink><br /><searchLink fieldCode="DE" term="%22Functional+programming+%28Computer+science%29%22">Functional programming (Computer science)</searchLink><br /><searchLink fieldCode="DE" term="%22Maintainability+%28Engineering%29%22">Maintainability (Engineering)</searchLink><br /><searchLink fieldCode="DE" term="%22Software+maintenance%22">Software maintenance</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+software%22">Computer software</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+languages%22">Programming languages</searchLink><br /><searchLink fieldCode="DE" term="%22Software+engineering%22">Software engineering</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: 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. [ABSTRACT FROM AUTHOR]
– Name: AbstractSuppliedCopyright
  Label:
  Group: Ab
  Data: <i>Copyright of Journal of Software: Evolution & Process is the property of Wiley-Blackwell and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=194054114
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1002/smr.70113
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 31
        StartPage: 1
    Subjects:
      – SubjectFull: Software refactoring
        Type: general
      – SubjectFull: Functional programming (Computer science)
        Type: general
      – SubjectFull: Maintainability (Engineering)
        Type: general
      – SubjectFull: Software maintenance
        Type: general
      – SubjectFull: Computer software
        Type: general
      – SubjectFull: Programming languages
        Type: general
      – SubjectFull: Software engineering
        Type: general
    Titles:
      – TitleFull: Mind the Gap: Linking Refactorings and Code Smells in Elixir.
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Vegi, Lucas
      – PersonEntity:
          Name:
            NameFull: Valente, Marco Túlio
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 05
              Text: May2026
              Type: published
              Y: 2026
          Identifiers:
            – Type: issn-print
              Value: 20477473
          Numbering:
            – Type: volume
              Value: 38
            – Type: issue
              Value: 5
          Titles:
            – TitleFull: Journal of Software: Evolution & Process
              Type: main
ResultId 1