Home // ACHI 2018, The Eleventh International Conference on Advances in Computer-Human Interactions // View article


Programming in Natural Language: Building Algorithms from Human Descriptions

Authors:
Alexander Wachtel
Felix Eurich
Walter F. Tichy

Keywords: Natural Language Processing; End User Programming; Natural Language Interfaces; Human Computer Interaction; Programming In Natural Language; Dialog Systems.

Abstract:
Our work is where the Software Engineering meets the Human Computer Interaction and the End User Programming to aim for a major breakthrough by making machines programmable in ordinary and unrestricted language. In this paper, we provide a solution on how new algorithms can be recognized and learned from human descriptions. Our focus is to improve the interaction between humans and machines and enable the end user to instruct programmable devices, without having to learn a programming language. In a test-driven development, we created a platform that allows users to manipulate spreadsheet data by using natural language. Therefore, the system (i) enables end users to give instructions step-by-step, to avoid the complexity in full descriptions and give directly feedback of success (ii) creates an abstract meta model for user input during the linguistic analysis and (iii) independently interprets the meta model to code sequences that contain loops, conditionals, and statements. The context then places the recognized program component in the history. In this way, an algorithm is generated in an interactive process. One of the result can be the code sequence for algorithm, like well-known selection sort. We present a series of ontology structures for matching instructions to declare variables, loop, make decisions, etc. Furthermore, our system asks clarification questions when the human user is ambiguous. During the evaluation, 11 undergraduate students were asked to solve tasks by using natural language, and describe algorithms in three classes of complexity. Overall, the system was able to transform 60% of the user statements into code. Far from perfect, this research might lead to fundamental changes in computer use. Rather than merely consuming software, end users of the ever-increasing variety of digital devices could develop their own programs, potentially leading to novel, highly personalized, and plentiful solutions.

Pages: 51 to 59

Copyright: Copyright (c) IARIA, 2018

Publication date: March 25, 2018

Published in: conference

ISSN: 2308-4138

ISBN: 978-1-61208-616-3

Location: Rome, Italy

Dates: from March 25, 2018 to March 29, 2018