Why did Prolog lose steam? (2010)
If you&#x27;re trying to solve boolean satisfiability, you want a SAT solver, not Prolog.<p>If you&#x27;re trying to solve more general problems, you probably want an SMT solver or other more specific solver (e.g., ILP), not Prolog.<p>If you&#x27;re trying to verify software, you want a theorem prover, not Prolog.<p>If you want database-ish stuff you want Datalog (or something like it), not Prolog.<p>Prolog falls into the uncanny valley of being too general of a DSL for the sorts of optimizations that more narrow solvers enjoy, while being too narrow of a DSL for most general-purpose programming. I think because it was an early DSL, people got caught up in the idea of it being more &quot;high-level&quot; than other languages [1], but the DSL nature of it wasn&#x27;t fully appreciated at the time.<p>[1]: For fun, take a read through <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Fifth-generation_programming_language" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Fifth-generation_programming_l...</a> , which was a whole thing in the 1980s.