Revisiting Principles and Challenges in Natural Language Programming

Automation has faced the risk of reducing its pace due to the shortage of information technology professionals. Although part of the programming demand can be addressed by simple compositions of high-level functions and data flows, non-technical professionals are still unable to build their own software given the intrinsic complexity of coding. Among other types of end-user development, natural language programming has emerged as a strong candidate to fill this gap by developing methods and tools to allow end users to program. The paper revisits some principles of evaluation of traditional programming languages and analyses the new challenges to deliver an effective end-user development platform based on aspects of natural language processing, human-computer interaction, software engineering, and programming education. We advocate that an effective end-user platform is essentially hybrid, combining features from different branches of the end-user development research, having, however, a search mechanism with semantic capabilities at its centre .

[1]  Giovanni Guida,et al.  NLI: a robust interface for natural language person-machine communication , 1982 .

[2]  Fulvio Corno,et al.  On-the-fly Construction of Web Services Compositions from Natural Language Requests , 2006, J. Softw..

[3]  Juliano Efson Sales,et al.  A User-centred Analysis of Explanations for a Multi-component Semantic Parser , 2020, NLDB.

[4]  Jean E. Sammet The use of English as a programming language , 1966, CACM.

[5]  Mark Guzdial,et al.  Learner-Centered Design of Computing Education: Research on Computing for Everyone , 2015, Synthesis Lectures on Human-Centered Informatics.

[6]  Barry Porter,et al.  Code Synthesis in Self-Improving Software Systems , 2019, 2019 IEEE 4th International Workshops on Foundations and Applications of Self* Systems (FAS*W).

[7]  Carmelo Ardito,et al.  Mobile games to foster the learning of history at archaeological sites , 2007 .

[8]  Carmelo Ardito,et al.  End-user composition of interactive applications through actionable UI components , 2017, J. Vis. Lang. Comput..

[9]  André Freitas,et al.  Graphene: Semantically-Linked Propositions in Open Information Extraction , 2018, COLING.

[10]  Peter Stone,et al.  Learning to Interpret Natural Language Commands through Human-Robot Dialog , 2015, IJCAI.

[11]  Antonella De Angeli,et al.  Service Composition for Non-programmers: Prospects, Problems, and Design Recommendations , 2010, 2010 Eighth IEEE European Conference on Web Services.

[12]  Juliano Efson Sales,et al.  Indra: A Word Embedding and Semantic Relatedness Server , 2018, LREC.

[13]  Yike Guo,et al.  The Future of Spreadsheets in the Big Data Era , 2018, ArXiv.

[14]  G Stix,et al.  The mice that warred. , 2001, Scientific American.

[15]  Lukasz Kaiser,et al.  Attention is All you Need , 2017, NIPS.

[16]  J. Wong Marmite: Towards End-User Programming for the Web , 2007 .

[17]  Juliano Efson Sales,et al.  SemEval-2017 Task 11: End-User Development using Natural Language , 2017, SemEval@ACL.

[18]  Patrick Suppes,et al.  Natural-Language Interface for an Instructable Robot , 1985, Int. J. Man Mach. Stud..

[19]  Bill Z. Manaris,et al.  Developing a natural language interface for the UNIX operating system , 1994, SGCH.

[20]  Kyong-Ho Lee,et al.  Constructing composite web services from natural language requests , 2010, J. Web Semant..

[21]  André Freitas,et al.  Vajra: step-by-step programming with natural language , 2019, IUI.

[22]  Edsger W. Dijkstra,et al.  Some comments on the aims of MIRFAC , 1964, CACM.

[23]  Susan T. Dumais,et al.  Characterizing Search Behavior in Productivity Software , 2018, CHIIR.

[24]  Alan F. Blackwell,et al.  End-User Developers - What Are They Like? , 2017, New Perspectives in End-User Development.

[25]  Luis A. Guerrero,et al.  Alexa vs. Siri vs. Cortana vs. Google Assistant: A Comparison of Speech-Based Natural User Interfaces , 2017 .

[26]  Juha Sorva,et al.  Notional machines and introductory programming education , 2013, TOCE.

[27]  Paul W. P. J. Grefen,et al.  BPMS-RA: A Novel Reference Architecture for Business Process Management Systems , 2019, TOIT.

[28]  Flavius Frasincar,et al.  Semantic Web service discovery using natural language processing techniques , 2013, Expert Syst. Appl..

[29]  Peter Norvig,et al.  The Unreasonable Effectiveness of Data , 2009, IEEE Intelligent Systems.

[30]  George A. Miller,et al.  WordNet: A Lexical Database for English , 1995, HLT.

[31]  Kathi Fisler,et al.  Programming Paradigms and Beyond , 2019, The Cambridge Handbook of Computing Education Research.

[32]  Alan W. Biermann,et al.  Programming in natural language: “NLC” as a prototype , 1979, ACM '79.

[33]  Josiane Mothe,et al.  Choreography of web services based on natural language storybooks , 2006, ICEC '06.

[34]  Michel Riveill,et al.  Natural Language Service Composition with Request Disambiguation , 2010, ICSOC.

[35]  José Camacho-Collados,et al.  From Word to Sense Embeddings: A Survey on Vector Representations of Meaning , 2018, J. Artif. Intell. Res..

[36]  Li De,et al.  Artificial Intelligence with Uncertainty , 2004 .

[37]  Emma Strubell,et al.  Multi-Task Learning For Parsing The Alexa Meaning Representation Language , 2018, AAAI.

[38]  Alan W. Biermann,et al.  An Experimental Study of Natural Language Programming , 1983, Int. J. Man Mach. Stud..

[39]  HENRY LIEBERMAN,et al.  End-User Development: An Emerging Paradigm , 2006, End User Development.

[40]  Spyridon Matsoukas,et al.  The Alexa Meaning Representation Language , 2018, NAACL.

[41]  Juliano Efson Sales,et al.  An Open Vocabulary Semantic Parser for End-User Programming Using Natural Language , 2018, 2018 IEEE 12th International Conference on Semantic Computing (ICSC).

[42]  P. Roetzel,et al.  Information overload in the information age: a review of the literature from business administration, business psychology, and related disciplines with a bibliometric approach and framework development , 2018, Business Research.

[43]  Brad A. Myers,et al.  More Natural Programming Languages and Environments , 2006, End User Development.