In my previous APP article I recounted how the Japanese Fifth-Generation Computer Systems (FGCS) project was launched with much fanfare in 1982 and came down in flames in 1992, taking logic programming with it. In this article I tell something about how logic programming came to be preferred over the more obvious choice of Lisp for FGCS. I’m interested in the phenomenon of people developing a fierce loyalty to one language or the other. By considering the early history of these languages I hope to give some insight into this phenomenon.
Archive for August, 2010
The Fatal Choice
August 31, 2010Who Killed Prolog?
August 21, 2010There are a thousand programming languages out there (Literally, it seems, according to people who actually count such things.) A classification of so many species is bound to be complex and subject to much debate. However messy and controversial things get low down in the classification, let’s have just four branches at the top level. I attach to the name of the class of programming language what I consider to be the first exemplar of the class, in chronological order:
— imperative (1956, Fortran)
— functional (1959, Lisp)
— object-oriented (1972, Smalltalk)
— logic (1974, Prolog)
I take as starting point the fact that three of the four branches are doing well in the sense of having a vigorous following. Compared to these three, Prolog has fallen far behind. This was not the case in the early 1980’s, when Prolog had caught up with Lisp in capturing mindshare of what you could call non-IBM computing (to avoid the vexed term “AI”). Hence the title of this article. As culprit (or benefactor, depending on how you look at it) I identify the Japanese “Fifth-Generation Computer System” project, which existed from 1982 to 1992.