The Definition and Implementation of a Computer Programming Language Based on Constraints.

Abstract

The constraint paradigm is a model of computation in which values are deduced whenever possible, under the limitation that deductions be local in a certain sense. One may visualize a constraint 'program' as a network of devices connected by wires. Data values may flow along the wires, and computation is performed by the devices. A device computes using only locally available information (with a few exceptions), and places newly derived values on other, locally attached wires. In this way computed values are propagated. An advantage of the constraint paradigm (not unique to it) is that a single relationship can be used in more than one direction. The connections to a device are not labelled as inputs and outputs; a device will compute with whatever values are available, and produce as many new values as it can. General theorem provers are capable of such behavior, but tend to suffer from combinatorial explosion; it is not usually useful to derive all the possible consequences of a set of hypotheses. The constraint paradigm places a certain kind of limitation on the deduction process. A number of implementations of constraint-based programming languages are presented.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Aug 01, 1980
Accession Number
ADA096556

Entities

People

  • Guy Lewis Steele Jr.

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Algorithms
  • Artificial Intelligence
  • Circuit Analysis
  • Computational Science
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Databases
  • Electrical Circuits
  • Failure Mode And Effect Analysis
  • Language
  • Programming Languages
  • Statistics
  • Storage
  • Systems Engineering
  • Terrorists

Readers

  • Applied Combinatorial Optimization and Logic Circuit Design.
  • Artificial Intelligence
  • Mathematical Modeling and Probability Theory.