sts@ssc-vax.UUCP (Stanley T Shebs) (08/12/83)
It is interesting that the subject of FP (an old interest of mine) has arisen in the AI newsgroup (no this is not an "appropriate newsgroup" flame). Having worked with both AI and FP languages, it seems to me that the two are diametrically opposed to one another. The ultimate goal of functional programming language research is to produce a language that is as clean and free of side effects as possible; one whose semantic definition fits on a single side of an 8 1/2 x 11 sheet of paper (and not in microform, smart-aleck!). On the other hand, the goal of AI research (at least in the AI language area) is to produce languages that can effectively work with as tangled and complicated representations of knowledge as possible. Languages for semantic nets, frames, production systems, etc, all have this character. Formal definitions are at best difficult, and sometimes impossible (aside: could this be proved for any specific knowledge rep?). Now between the Japanese 5th generation project (and the US response) and the various projects to build non-vonNeumann machines using FP, it looks to me like the seeds of a controversy over the best way to do programming. Should we be using FP languages or AI languages? We can't have it both ways, right? Or can we? stan the leprechaun hacker ssc-vax!sts (soon utah-cs)
pollack@uicsl.UUCP (08/16/83)
#R:ssc-vax:-40800:uicsl:15500001:000:883 uicsl!pollack Aug 15 19:06:00 1983 Having also worked with both FP and AI systems I basically agree with your perceptions of their respective goals and functions, but I think that we can have both, since they operate at different levels: Think of a powerful, functional language that underlies the majority of the work in AI data and procedural representations, and imagine what the world would be like if it were pure (but still powerful). Besides the "garbage collector" running now and then, there could, given the mathematical foundations of FP systems, also be an "efficiency expert" hanging around to tighten up your sloppy code. Jordan Pollack University of Illinois ...!pur-ee!uiucdcs!uicsl!pollack P.S. There is a recent paper by Lenat from Rand called "Cognitive Economy" which discusses some possible advances in computing environment maintenance; I don't recall it being linked to FP systems, however.
sts@ssc-vax.UUCP (Stanley T Shebs) (08/18/83)
There *is* a powerful functional language underlying most AI programs - Lisp! But it's never pure Lisp. The realization that got me to thinking about this was the apparent necessity for list surgery, sooner or later. rplaca and allied functions show up in the strangest places, and seem to be crucial to the proper functioning of many AI systems (consider inheritance in frames or the construction of a semantic network; perhaps method combination in flavors qualifies). I'm not arguing that an FP language could *not* be used to build an AI language on top; I'm thinking more about fundamental philosophical differences between different schools of research. stan the lep hacker ssc-vax!sts (soon utah-cs)