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.
^Ricardo Aler Mur, "Automatic Inductive Programming Archived 2016-03-04 at the Wayback Machine", ICML 2006 Tutorial. June 2006.
^D. L. Parnas. "Software Aspects of Strategic Defense Systems." American Scientist. November 1985.
and 20 Related for: Automatic programming information
In computer science, automaticprogramming is a type of computer programming in which some mechanism generates a computer program to allow human programmers...
of the program. A variety of techniques are employed, most notably using satisfiability modulo theories (SMT) solvers, and genetic programming, using...
Automatic Programming!". www.cs.bham.ac.uk. Retrieved 2018-05-20. "Genetic Programming -- An Introduction; On the Automatic Evolution of Computer Programs and...
produce the executable form of computer programs, such as machine code, in some automatic manner Automaticprogramming (source code generation), the act of...
Inductive programming (IP) is a special area of automaticprogramming, covering research from artificial intelligence and programming, which addresses...
evaluate the partial derivative of a function specified by a computer program. Automatic differentiation exploits the fact that every computer calculation...
write a program in a programming language like C, Java or Python. Programming tools like assemblers, compilers and linkers translate a program from a human...
referred to as automatic patch generation, automatic bug repair, or automaticprogram repair. The typical goal of such techniques is to automatically generate...
different degrees of automation. In contrast to automaticprogramming techniques, specifications in program synthesis are usually non-algorithmic statements...
In computer programming, an automatic variable is a local variable which is allocated and deallocated automatically when program flow enters and leaves...
computing, a visual programming language (visual programming system, VPL, or, VPS), also known as diagrammatic programming, graphical programming or block coding...
which his paper demonstrated automatic memoization), but also in various other programming languages. Applications of automatic memoization have also been...
Differentiable programming is a programming paradigm in which a numeric computer program can be differentiated throughout via automatic differentiation...
Automatic mutual exclusion is a parallel computing programming paradigm in which threads are divided into atomic chunks, and the atomic execution of the...
She was a pioneer of computer programming. Hopper was the first to devise the theory of machine-independent programming languages, and used this theory...
producing what's known in programming as an executable. Computer architecture has strongly influenced the design of programming languages, with the most...
Of NC", Modern Machine Shop, 12 January 1998. Siegel, Arnold. "AutomaticProgramming of Numerically Controlled Machine Tools", Control Engineering, Volume...
Systems programming, or system programming, is the activity of programming computer system software. The primary distinguishing characteristic of systems...
information. The term "object program" dates from at least the 1950s: A term in automaticprogramming for the machine language program produced by the machine...
In computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. With this paradigm...