Natural Language Processing holds great promise for making computer
interfaces that are easier to use for people, since people will (hopefully)
be able to talk to the computer in their own language, rather than
learn a specialized language of computer commands. For programming,
however, the necessity of a formal programming language for communicating
with a computer has always been taken for granted. We would like
to challenge this assumption. We believe that modern Natural Language
Processing techniques can make possible the use of natural language
to (at least partially) express programming ideas, thus drastically
increasing the accessibility of programming to non-expert users.
To demonstrate the feasibility of Natural Language Programming, this
paper tackles what are perceived to be some of the hardest cases:
steps and loops. We look at a corpus of English descriptions used
as programming assignments, and develop some techniques for mapping
linguistic constructs onto program structures, which we refer to
as programmatic semantics.
%0 Conference Paper
%1 Mihalcea2006
%A Mihalcea, Rada
%A Liu, Hugo
%A Lieberman, Henry
%B CICLing
%D 2006
%K NT2OD language naturallanguageprocessing nlp processing programming toread
%P 319-330
%R http://dx.doi.org/10.1007/11671299_34
%T NLP (Natural Language Processing) for NLP (Natural Language Programming)
%X Natural Language Processing holds great promise for making computer
interfaces that are easier to use for people, since people will (hopefully)
be able to talk to the computer in their own language, rather than
learn a specialized language of computer commands. For programming,
however, the necessity of a formal programming language for communicating
with a computer has always been taken for granted. We would like
to challenge this assumption. We believe that modern Natural Language
Processing techniques can make possible the use of natural language
to (at least partially) express programming ideas, thus drastically
increasing the accessibility of programming to non-expert users.
To demonstrate the feasibility of Natural Language Programming, this
paper tackles what are perceived to be some of the hardest cases:
steps and loops. We look at a corpus of English descriptions used
as programming assignments, and develop some techniques for mapping
linguistic constructs onto program structures, which we refer to
as programmatic semantics.
@inproceedings{Mihalcea2006,
abstract = {Natural Language Processing holds great promise for making computer
interfaces that are easier to use for people, since people will (hopefully)
be able to talk to the computer in their own language, rather than
learn a specialized language of computer commands. For programming,
however, the necessity of a formal programming language for communicating
with a computer has always been taken for granted. We would like
to challenge this assumption. We believe that modern Natural Language
Processing techniques can make possible the use of natural language
to (at least partially) express programming ideas, thus drastically
increasing the accessibility of programming to non-expert users.
To demonstrate the feasibility of Natural Language Programming, this
paper tackles what are perceived to be some of the hardest cases:
steps and loops. We look at a corpus of English descriptions used
as programming assignments, and develop some techniques for mapping
linguistic constructs onto program structures, which we refer to
as programmatic semantics.},
added-at = {2009-11-19T17:28:55.000+0100},
author = {Mihalcea, Rada and Liu, Hugo and Lieberman, Henry},
bibsource = {DBLP, http://dblp.uni-trier.de},
biburl = {https://www.bibsonomy.org/bibtex/2f9b3e5cd6d5756dbae3a9b91244aa3bb/butonic},
booktitle = {CICLing},
crossref = {DBLP:conf/cicling/2006},
doi = {http://dx.doi.org/10.1007/11671299_34},
file = {:C\:\\Users\\Bugra\\Documents\\Studium\\DA\\Literatur\\Mihalcea2006.pdf:PDF},
interhash = {2c7a9342758a0836541124476666d147},
intrahash = {f9b3e5cd6d5756dbae3a9b91244aa3bb},
keywords = {NT2OD language naturallanguageprocessing nlp processing programming toread},
owner = {Bugra},
pages = {319-330},
timestamp = {2009-11-19T17:28:55.000+0100},
title = {NLP (Natural Language Processing) for NLP (Natural Language Programming)},
year = 2006
}