Topic: descriptive languages

topics > computer science > programming > Group: types of programming languages

type declaration
business application language
data-driven design
declarative vs. procedural representation
logic programming
programming by sequential implementation
programming with a database of modules
programming with data
programming with natural language
Thesa data model
spatial vs. temporal representation
visual programming
words defined by words


A program defines the initial state of computer. It is fundamentally descriptive. The program does not executed, the computer does the executing while the program describes the execution sequence. The process of programming is describing sequences of machine instructions for a machine's initial state. Programming languages and tools should support this approach.

Programs should be described in a domain-specific language instead of being implemented in a general purpose instruction set. Natural language description depends on a human recipient so it is not an appropriate choice. For machine readability, descriptions need to be incremental. If the information gain is small enough then the machine can process the description. Incremental descriptions imply interactive development, making concrete the interrelationships between each incremental description.

Advantages-- Explicit description means understandable programs. Incremental description means evolving programs which adapt to the needs of their environment. Description languages can be order independent. The emphasis is system maintenance and development instead of program implementation. (cbb 5/80)

Subtopic: description language up

Quote: need a uniform system for description that is not primarily a set of instructions [»winoT7_1979]
Quote: a programming system needs descriptive structures to maintain 'world views'; independent of implementation [»winoT7_1979]
QuoteRef: sammJE7_1972 ;;609 languages should be problem oriented i.e. what is to be done instead of how to do it % details
QuoteRef: earlJ10_1971 ;;618 show semantics of algorithm and data structures instead of implementation
Quote: it would be better to assert things about the structure of the data; order independent; generates operations [»elcoEW_1971]
Quote: with domain-specific goals, a language is declarative; the programmer just customizes the proposed solution [»controleng]
Quote: general purpose languages do not allow for domain-specific goals; they remain algorithmic and imperative [»controleng]
Quote: can not encode abstractions directly into conventional programming systems
Quote: describing a procedure need not be order-dependent; e.g., use conditional and descriptive statements [»takaH1_1980]
Quote: a behavior specification characterizes what will be done, the sequence to be performed, and real-time measurements [»winoT7_1979]
QuoteRef: schwJT_1972 ;;7 computational (i.e. algorithmic) and object describing languages (or languages of mechanism
Quote: bodies of descriptive structures are most useful in the interaction domain [»winoT7_1979]
Quote: each component of a system needs a detailed description; this may be done in stages [»winoT7_1979]
QuoteRef: wirtN7_1973 ;;2 program consists of description of actions and description of data
Quote: programming languages should support the major paradigms of their users' communities [»floyRW8_1979]

Subtopic: words convey meaning up

Quote: readable program in ML; cookbook english; imperative verbs, subordinate clauses separated by commas, e.g., conditional clause [»spooCR4_1986]
Quote: in both english and ML, words convey most of meaning [»spooCR4_1986]
Quote: FEA was developed for semantic information retrieval; also used for program assertions and potentially for non-procedural programming [»postSW7_1978]
Quote: the goal of datagramming is to define data with a specification language; the program is built automatically [»coucJ_1981]

Subtopic: mechanical notation up

Quote: Babbage developed a mechanical notation because his engine was too complicated
Quote: a mechanical notation could be a universal language for describing machines; its descriptions are more concise then words [»babbC_1826, OK]

Subtopic: problems with data description up

Quote: data description does not support collections of data; hard to change without impacting applications

Related Topics up

Group: type declaration   (5 topics, 110 quotes)
Topic: business application language (11 items)
Topic: data-driven design (41 items)
Topic: declarative vs. procedural representation (54 items)
Topic: logic programming (34 items)
Topic: programming by sequential implementation (26 items)
Topic: programming with a database of modules (94 items)
Topic: programming with data (16 items)
Topic: programming with natural language (27 items)
Topic: Thesa data model (58 items)
Topic: spatial vs. temporal representation (21 items)
Topic: visual programming (32 items)
Topic: words defined by words
(25 items)

Updated barberCB 4/04
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.