SASW%MIT-MC@sri-unix.UUCP (01/07/84)
From: Steven A. Swernofsky <SASW @ MIT-MC>
DATE: Thursday, January 12, 1984
TIME: 3.45 p.m. Refreshments
4.00 p.m. Lecture
PLACE: NE43-8th Floor, AI Playroom
PROGRAMMING STYLES IN ARTIFICIAL INTELLIGENCE
Herbert Stoyan
University of Erlangen, West Germany
ABSTRACT
Not much is clear about the scientific methods used in AI research.
Scientific methods are sets of rules used to collect knowledge about the
subject being researched. AI is an experimental branch of computer science
which does not seem to use established programming methods. In several
works on AI we can find the following method:
1. develop a new convenient programming style
2. invent a new programming language which supports the new style
(or embed some appropriate elements into an existing AI language,
such as LISP)
3. implement the language (interpretation as a first step is
typically less efficient than compilation)
4. use the new programming style to make things easier.
A programming style is a way of programming guided by a speculative view of
a machine which works according to the programs. A programming style is
not a programming method. It may be detected by analyzing the text of a
completed program. In general, it is possible to program in one
programming language according to the principles of various styles. This
is true in spite of the fact that programming languages are usually
designed with some machine model (and therefore with some programming
style) in mind. We discuss some of the AI programming styles. These
include operator-oriented, logic-oriented, function-oriented, rule-
oriented, goal-oriented, event-oriented, state-oriented, constraint-
oriented, and object-oriented. (We shall not however discuss the common
instruction-oriented programming style). We shall also give a more detailed
discussion of how an object-oriented programming style may be used in
conventional programming languages.
HOST: Professor Ramesh Patil