Automatic programming

In computer science, automatic programming[1] is a type of computer programming in which some mechanism generates a computer program to allow human programmers to write the code at a higher abstraction level.

There has been little agreement on the precise definition of automatic programming, mostly because its meaning has changed over time. David Parnas, tracing the history of "automatic programming" in published research, noted that in the 1940s it described automation of the manual process of punching paper tape. Later it referred to translation of high-level programming languages like Fortran and ALGOL. In fact, one of the earliest programs identifiable as a compiler was called Autocode. Parnas concluded that "automatic programming has always been a euphemism for programming in a higher-level language than was then available to the programmer."[2]

Program synthesis is one type of automatic programming where a procedure is created from scratch, based on mathematical requirements.

  1. ^ Ricardo Aler Mur, "Automatic Inductive Programming Archived 2016-03-04 at the Wayback Machine", ICML 2006 Tutorial. June 2006.
  2. ^ D. L. Parnas. "Software Aspects of Strategic Defense Systems." American Scientist. November 1985.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy