  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.
