Lo usamos para construir analizadores. Era más fácil trabajar con lex / yacc.
¿Por qué no está obteniendo ningún uso industrial detectable?
Esto no tiene respuesta. ¿Qué significa "detectable"? ¿Quién necesita obtener la nota de detección?
http://www.meridiansystems.com/landing/ppc/prolog/getvideo.asp
Pregúntele a Meridian Software acerca de su oferta de prólogo si desea información.
Sin embargo, hay algunas barreras de entrada que he experimentado.
Primero, el prólogo puede ser lento. Cuando hay muchas reglas candidatas y no hay operaciones de corte simples para restringir el espacio de búsqueda, puede llevar un tiempo hacer algo.
En segundo lugar, el prólogo no es procesal o funcional, por lo que muchos programadores se resisten a usarlo. (Curiosamente, algunos programadores también se resisten a usar SQL. Por lo demás, algunos programadores usarán SQL de mala gana y harán cosas extrañas como evitar operaciones de unión o afirmar que COUNT(*)
es mágicamente ineficiente).
Tercero, el prólogo requiere un pensamiento bastante claro sobre cuáles son los diferentes casos. La programación procesal puede ser descuidada y aún así funcionar de manera confiable. Las declaraciones no ejecutables son aceptables.
Lo siguiente es aceptable en la mayoría de los círculos.
b = a + 1
if a > b: # always False
Este tipo de pensamiento turbio te mete en problemas en el prólogo.