1. 10

This is a chapter in Handbook of the History of Logic, vol. 9, Computational Logic (2014), by Robert Kowalski, one of the people involved in the development of logic programming.

  1.  

  2. 1

    What a fascinating piece! Do you have any links the “demise of logic programming” (cultural or technical) ?

    1. 4

      I wrote an article a few years ago speculating on that, Why did Prolog lose steam?. The short version of my hypothesis is that a lot of the general enthusiasm for Prolog (vs. enthusiasm among those of us who like logic specifically) was mainly an enthusiasm for declarative programming, which Prolog was one of the first to push as a general programming paradigm, vs. a more domain-specific tool like AI planners. But, logic programming lost its monopoly on that as other approaches matured. For example with modern SQL (which has recursive queries) and embedded query languages like C#’s LINQ, you can do a lot of the simple things out of Prolog tutorials. That removes a lot of the low-hanging fruit, and leaves Prolog having to convince you that you really do want full logic-programming semantics—but that’s harder to do, because most of the simple examples work fine in simpler formalisms.

      I do think there are a lot of interesting current developments of logic programming, but they go in different directions. Three of them are: 1. multiparadigm languages like Mercury, 2. grounding/solver-based languages like answer-set programming (ASP); and 3. embedded “micro” logic-programming libraries like miniKanren.

      I use ASP quite a bit myself, e.g. here and here. Instead of a procedural semantics for logic, it compiles it down to something that works more like a SAT solver, which has the main drawback that everything must be groundable to a finite problem (and a finite problem small enough to be explicitly constructed, at that). If you can live with that, it’s nice.

      1. 2

        I spoke to some very enthusiastic people no more than about three years ago, who were big fans of http://www.swi-prolog.org/ and had many examples of logic programming in active use. I’m not sure I could find them again, but I suspect any writeup about its demise would have to be speculative.

        1. 2

          #prolog on Freenode :)

          1. 2

            Ah :)