Automatically generating documentation for lambda expressions in Java

When lambda expressions were introduced to the Java programming language as part of the release of Java 8 in 2014, they were the language’s first step into functional programming. Since lambda expressions are still relatively new, not all developers use or understand them. In this paper, we first pr...

Full description

Saved in:
Bibliographic Details
Main Authors: ALQAIMI, Anwar, THONGTANUNAM, Patanamon, TREUDE, Christoph
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2019
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/8828
https://ink.library.smu.edu.sg/context/sis_research/article/9831/viewcontent/msr19b.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-9831
record_format dspace
spelling sg-smu-ink.sis_research-98312024-06-06T09:30:52Z Automatically generating documentation for lambda expressions in Java ALQAIMI, Anwar THONGTANUNAM, Patanamon TREUDE, Christoph When lambda expressions were introduced to the Java programming language as part of the release of Java 8 in 2014, they were the language’s first step into functional programming. Since lambda expressions are still relatively new, not all developers use or understand them. In this paper, we first present the results of an empirical study to determine how frequently developers of GitHub repositories make use of lambda expressions and how they are documented. We find that 11% of Java GitHub repositories use lambda expressions, and that only 6% of the lambda expressions are accompanied by source code comments. We then present a tool called LAMBDADOC which can automatically detect lambda expressions in a Java repository and generate natural language documentation for them. Our evaluation of LAMBDADOC with 23 professional developers shows that they perceive the generated documentation to be complete, concise, and expressive, while the majority of the documentation produced by our participants without tool support was inadequate. Our contribution builds an important step towards automatically generating documentation for functional programming constructs in an object-oriented language 2019-05-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/8828 info:doi/10.1109/MSR.2019.00057 https://ink.library.smu.edu.sg/context/sis_research/article/9831/viewcontent/msr19b.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Documentation generation Lambda expressions Programming Languages and Compilers Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Documentation generation
Lambda expressions
Programming Languages and Compilers
Software Engineering
spellingShingle Documentation generation
Lambda expressions
Programming Languages and Compilers
Software Engineering
ALQAIMI, Anwar
THONGTANUNAM, Patanamon
TREUDE, Christoph
Automatically generating documentation for lambda expressions in Java
description When lambda expressions were introduced to the Java programming language as part of the release of Java 8 in 2014, they were the language’s first step into functional programming. Since lambda expressions are still relatively new, not all developers use or understand them. In this paper, we first present the results of an empirical study to determine how frequently developers of GitHub repositories make use of lambda expressions and how they are documented. We find that 11% of Java GitHub repositories use lambda expressions, and that only 6% of the lambda expressions are accompanied by source code comments. We then present a tool called LAMBDADOC which can automatically detect lambda expressions in a Java repository and generate natural language documentation for them. Our evaluation of LAMBDADOC with 23 professional developers shows that they perceive the generated documentation to be complete, concise, and expressive, while the majority of the documentation produced by our participants without tool support was inadequate. Our contribution builds an important step towards automatically generating documentation for functional programming constructs in an object-oriented language
format text
author ALQAIMI, Anwar
THONGTANUNAM, Patanamon
TREUDE, Christoph
author_facet ALQAIMI, Anwar
THONGTANUNAM, Patanamon
TREUDE, Christoph
author_sort ALQAIMI, Anwar
title Automatically generating documentation for lambda expressions in Java
title_short Automatically generating documentation for lambda expressions in Java
title_full Automatically generating documentation for lambda expressions in Java
title_fullStr Automatically generating documentation for lambda expressions in Java
title_full_unstemmed Automatically generating documentation for lambda expressions in Java
title_sort automatically generating documentation for lambda expressions in java
publisher Institutional Knowledge at Singapore Management University
publishDate 2019
url https://ink.library.smu.edu.sg/sis_research/8828
https://ink.library.smu.edu.sg/context/sis_research/article/9831/viewcontent/msr19b.pdf
_version_ 1814047568452124672