Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering 2013
DOI: 10.1145/2491411.2491461
|View full text |Cite
|
Sign up to set email alerts
|

Crossing the gap from imperative to functional programming through refactoring

Abstract: Java 8 introduces two functional features: lambda expressions and functional operations like map or filter that apply a lambda expression over the elements of a Collection. Refactoring existing code to use these new features enables explicit but unobtrusive parallelism and makes the code more succinct. However, refactoring is tedious: it requires changing many lines of code. It is also error-prone: the programmer must reason about the control-, data-flow, and side-effects. Fortunately, refactorings can be auto… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
34
1

Year Published

2013
2013
2024
2024

Publication Types

Select...
5
4

Relationship

4
5

Authors

Journals

citations
Cited by 43 publications
(39 citation statements)
references
References 16 publications
(14 reference statements)
0
34
1
Order By: Relevance
“…Thus ITERACE can also be used in scenarios with high interactivity, such as refactoring for parallelism [Dig et al 2009a[Dig et al , 2009bGyori et al 2013], that require fast and precise analyses.…”
Section: Resultsmentioning
confidence: 99%
“…Thus ITERACE can also be used in scenarios with high interactivity, such as refactoring for parallelism [Dig et al 2009a[Dig et al , 2009bGyori et al 2013], that require fast and precise analyses.…”
Section: Resultsmentioning
confidence: 99%
“…Thus, IteRace can also be used in scenarios with high interactivity, e.g., refactoring for parallelism [23,24,32], that require fast and precise analyses.…”
Section: Resultsmentioning
confidence: 99%
“…However, given the cutting edge nature of the Cloud Data Types, we could not find such developers. Thus, we chose to use indirect metrics, as it is [15,33]. Second, are we sure that the performed refactorings are accurate?…”
Section: Threats To Validitymentioning
confidence: 99%
“…While the original research was using refactoring to improve the design of existing programs, the more recent work used refactoring techniques to retrofit concurrency [34,11], functional features [15], etc. As far as we know, we present the first automated tool to introduce mobile cloud computing via an automated refactoring tool.…”
Section: Related Workmentioning
confidence: 99%