Litcius/Paper detail

A comprehensive review of State-of-The-Art methods for Java code generation from Natural Language Text

Jéssica López Espejel, Mahaman Sanoussi Yahaya Alassan, El Mehdi Chouham, Walid Dahhane, El Hassane Ettifouri

2023Natural Language Processing Journal22 citationsDOIOpen Access PDF

Abstract

Java Code Generation consists in generating automatically Java code from a Natural Language Text. This NLP task helps in increasing programmers’ productivity by providing them with immediate solutions to the simplest and most repetitive tasks. Code generation is a challenging task because of the hard syntactic rules and the necessity of a deep understanding of the semantic aspect of the programming language. Many works tried to tackle this task using either RNN-based, or Transformer-based models. The latter achieved remarkable advancement in the domain and they can be divided into three groups: (1) encoder-only models, (2) decoder-only models, and (3) encoder–decoder models. In this paper, we provide a comprehensive review of the evolution and progress of deep learning models in Java code generation task. We focus on the most important methods and present their merits and limitations, as well as the objective functions used by the community. In addition, we provide a detailed description of datasets and evaluation metrics used in the literature. Finally, we discuss results of different models on CONCODE dataset, then propose some future directions.

Topics & Concepts

Computer scienceJavaArtificial intelligenceCode generationCode (set theory)Task (project management)Natural language processingNatural languageTransformerProgramming languageEncoderDeep learningPhysicsOperating systemEconomicsComputer securityVoltageSet (abstract data type)ManagementQuantum mechanicsKey (lock)Software Engineering ResearchSoftware Testing and Debugging TechniquesTopic Modeling