首页> 外文OA文献 >Natural Language is a Programming Language: Applying Natural Language Processing to Software Development
【2h】

Natural Language is a Programming Language: Applying Natural Language Processing to Software Development

机译:自然语言是一种编程语言:将自然语言处理应用于软件开发

摘要

A powerful, but limited, way to view software is as source code alone. Treating a program as a sequence of instructions enables it to be formalized and makes it amenable to mathematical techniques such as abstract interpretation and model checking. A program consists of much more than a sequence of instructions. Developers make use of test cases, documentation, variable names, program structure, the version control repository, and more. I argue that it is time to take the blinders off of software analysis tools: tools should use all these artifacts to deduce more powerful and useful information about the program.Researchers are beginning to make progress towards this vision. This paper gives, as examples, four results that find bugs and generate code by applying natural language processing techniques to software artifacts. The four techniques use as input error messages, variable names, procedure documentation, and user questions. They use four different NLP techniques: document similarity, word semantics, parse trees, and neural networks.The initial results suggest that this is a promising avenue for future work.
机译:查看软件的一种强大而又有限的方式就是单独作为源代码。将程序视为指令序列可以使其形式化,并使其适合诸如抽象解释和模型检查之类的数学技术。一个程序不仅包含一系列指令。开发人员利用测试用例,文档,变量名,程序结构,版本控制存储库等。我认为现在是时候摆脱对软件分析工具的盲目性了:工具应该利用所有这些工件来推断有关程序的更强大和有用的信息。研究人员正在朝着这一愿景迈进。作为示例,本文给出了四个结果,这些结果通过将自然语言处理技术应用于软件工件来发现错误并生成代码。这四种技术用作输入错误消息,变量名,过程文档和用户问题。他们使用四种不同的NLP技术:文档相似性,单词语义,语法分析树和神经网络。初步结果表明这是未来工作的有希望的途径。

著录项

  • 作者

    Ernst Michael D.;

  • 作者单位
  • 年度 2017
  • 总页数
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号