Topic: programming with natural language

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

natural language
Thesa programming system

compiling pseudocode designs
descriptive languages
natural language as a system
pidgin and creole languages
programming style
vivid representation of programs


Many researchers want to remove the artificial interface posed by programming languages. They want to interact with the computer as an intelligent being, and they want the ease of expression provided by natural languages. Statements in natural languages tend to be action oriented, heavily dependent on context for details, lack bookkeeping operations, ambiguous, and described by non-regular grammars. Full natural languages have not been processed by machines. Instead a restricted subset is used which hopefully retains the language's flexibility. The easiest subset is naming. Natural language names are easy to remember and easily recognized by machines. Idiomatic expressions can also be machine recognized but larger combinations have a high grammatical variability.

Advantages-- Reduced training time. Design language and documentation language matches the programming language. Flexible user interface. (cbb 5/80)

Subtopic: programming with natural language up

Quote: paper solutions specified mathematical operations in natural language, often with no missing information [»paneJF2_2001]
Quote: instead of programming languages, use natural language with a considerably restricted syntax and lexicon [»millLA10_1978]
Quote: want a natural, less detailed way of writing programs, but programs must be explicit; at least use English-like words
Quote: base programming languages on the structure and expressiveness of natural language; do not implement English [»lopeCV12_2003]
Quote: can base software languages on natural language with restricted syntax and semantics, e.g., COBOL; easy to learn and use; not good for complex structures [»joneTC4_1979a]

Subtopic: natural language vs. programming language up

Quote: natural language emphasizes the action while programming languages emphasize the conditions and control structures [»millLA10_1978]
Quote: conditions in natural language procedures are expressed as qualifications to the action or its object [»millLA10_1978]
QuoteRef: halpMI_1966 ;;640 active English (what talk in) and passive English (what listen in eg Cobol)

Subtopic: readable programs up

Quote: investigated documentation formats for programs; individual differences had largest effect, natural language was least effective [»curtB2_1989]
Quote: unary Smalltalk messages can be composed into readable expressions [»xlrg8_1981]
Quote: original goal for ML was a natural-like language for all computer interaction [»spooCR4_1986]
Quote: readable program in ML; cookbook english; imperative verbs, subordinate clauses separated by commas, e.g., conditional clause [»spooCR4_1986]
QuoteRef: instrumentcontrol ;;7/78 57 "Rockwell's STC Universal Controller stands out in the world of microcomputers as one of the few designed expressly for control. What's more it can be programmed with 13 English commands, so it's easy to use. [Interpreter in ROM for commands like 'at Time', 'Turn on A', 'add F2 to F1', 'repeat', 'wait'. Controllers 50 input and 50 output lines for interfacing to A/D etc. Has 32 4-decimal-digit counters.

Subtopic: mnemonic commands up

Quote: users will pick up mnemonic commands (pidgin-computer) if a natural-language front-end provides them; gives a short cut, easy to learn [»slatBM7_1986]
Quote: return actual command issued by a natural language front-end; users learned the command syntax [»slatBM7_1986]

Subtopic: formalized natural language up

Quote: formal and natural language descriptions of a system should fit well together [»handP_1981]
Quote: conceptualize imperative verbs in natural language procedures by preconditions, program, results, and operands [»millLA10_1978]
Quote: show what the processor is doing via a commented trace of execution in a detailed, unambiguous language [»plumT3_1977]

Subtopic: property access up

Quote: the nectar property of a card named flower is "nectar of flower" or "flower's nectar" [»paneJF9_2002]

Subtopic: partial descriptions and context up

Quote: natural language specifications tend to use partial descriptions [»balzRM3_1978]
Quote: partial descriptions make extensive use of context; this nearly eliminates bookkeeping operations
Quote: partial descriptions focus the writer's and reader's attention to relevant issues [»balzRM3_1978]

Subtopic: artificial languages fail up

Quote: no one has succeeded in inventing an artificial language that lets you say as many things as English does, but is as good as English at doing it [»richEA_1985]

Subtopic: natural languages fail up

Quote: natural languages fail because computers do not think and languages are poor at describing large numbers
Quote: even if can program a system to answer questions, often simpler to display all the information in a table or graph [»nelsTH_1974]
Quote: programs must be explicit to allow the computer to fill in all of the implied details [»rossDT3_1957]
Quote: systems that understand English promise too much and deliver too little; people mistakenly expect valid inferences [»slatBM7_1986]

Related Topics up

Group: natural language   (16 topics, 539 quotes)
Group: Thesa programming system   (11 topics, 561 quotes)

Topic: compiling pseudocode designs (8 items)
Topic: descriptive languages (22 items)
Topic: natural language as a system (43 items)
Topic: pidgin and creole languages (31 items)
Topic: programming style (47 items)
Topic: vivid representation of programs
(22 items)

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