Researchers have developed a framework capable of creating Android applications from textual descriptions. Could it be a game-changer when it comes to app creation?
In some ways it's nothing short of a mini revolution! Researchers from the University of California, Los Angeles and the Bangladesh University of Engineering and Technology (BUET) have succeeded in developing a framework that can create an application on Android from text. They trained a translation model to generate representations in an intermediate language they created.
This method is different from other existing techniques that use raw code. The latter are based on neural machine translation, similar to that used by Google Translate, and "translate" human language into source code. While these methods work, they are unable to create larger programs with hundreds of lines of code. This is what motivated the researchers to create a new language that would capture the complexity of source code by representing it in textual form.
"Our research group at the Department of CSE, BUET works on bridging the gap between human language and programming language to make computer programming more accessible," Masum Hasan, one of the researchers who worked on the study, told TechXplore. "We designed an intermediate formal language...We then developed a compiler that can convert the compact representation into actual source code and trained a neural machine translation model to translate natural language to this intermediate format, which can then be compiled into an app."
Text2App, an open source revolution
By transforming text descriptions into this language, the researchers were able to create full-fledged mobile applications, which had proved unfeasible with previously proposed methods. This "framework" created by the team of researchers is called Text2App and allows the creation of Android applications using English text only. You just have to describe the desired application and the framework takes care of the rest. If this still sounds a bit mysterious, try to imagine it more simply. Describing an idea, a button, a menu is rather simple thanks to text and there is no need for more. The compiler takes care of the specifics of the code by offering solutions.
In the future, various researchers' work will allow for the introduction of new ways of summarizing or representing programs. This will allow novices to better understand how the technology of artificial intelligence works, as well as jobs related to coding. This new language will also improve the ability to convert natural languages into an app format.
"If we design programming languages or frameworks with AI in mind, our current AI technologies can perform remarkably better in code generation from human language," outlined Hasan. LThe researchers have so far only explored a fraction of their program's true capabilities, so they are offering the opportunity to the open source community to contribute to its evaluation and propose developments. Hasan and his team also hope to use deep-learning machines like the GPT-3, founded by the company OpenAI, to create even more complex applications.