Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!decvax!harpo!seismo!hao!hplabs!sri-unix!narain@rand-unix From: narain@rand-unix@sri-unix.UUCP Newsgroups: net.ai Subject: Reply to stan the leprechaun hacker Message-ID: <4253@sri-arpa.UUCP> Date: Fri, 12-Aug-83 18:28:00 EDT Article-I.D.: sri-arpa.4253 Posted: Fri Aug 12 18:28:00 1983 Date-Received: Thu, 18-Aug-83 10:10:00 EDT Lines: 28 I am responding to two of the points you raised. Attribute value pairs are hopeless for any area (including AI areas) where your "cognitive chunks" are complex structures (like trees). An example is symbolic algebraic manipulation, where it is natural to think in terms of general forms of algebaraic expressions. Try writing a symbolic differentiation program in terms of attribute-value pairs. Another example is the "logic grammars" for natural language, whose implementation in Prolog is extremely clear and efficient. As to whether FP or more generally applicative languages are useful to AI depends upon the point of view you take of AI. A useful view is to consider it as "advanced programming" where you wish to develop intelligent computer programs, and so develop powerful computational methods for them, even if humans do not use those methods. From this point of view Backus's comments about the "von Neumann bottleneck" apply equally to AI programming as they do to conventional programming. Hence applicative languages may have ideas that could solve the "software crisis" in AI as well. This is not just surmise; the Prolog applications to date and underway are evidence in favor of the power of applicative languages. You may debate about the "applicativeness" of practical Prolog programming, but in my opinion the best and (also the most efficient) Prolog programs are in essence "applicative". -- Sanjai Narain