Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

Hablemos de Prolog

Prolog significa Programming in Logic, y su desarrollo se inicia aproximadamente en 1972, en donde se buscaba tener un lenguaje para poder lidiar con los...

prolog

Prolog significa Programming in Logic, y su desarrollo se inicia aproximadamente en 1972, en donde se buscaba tener un lenguaje para poder lidiar con los problemas de lenguaje natural, es decir, con la manera en como los humanos nos expresamos cotidianamente. En primera instancia se crearon intérpretes de Prolog, los cuales solamente corrían en minicomputadoras y sistemas grandes. Para ese entonces la computadora casera, la microcomputadora estaba lejos de ser lo que ahora disfrutamos.

Los primeros intentos de Prolog para ser usado en computadoras como la PC, fueron interesantes, pero la falta de memoria impedía que se pudiesen hacer programas que hicieran cosas útiles. De alguna manera sólo servían para investigar los elementos básicos de la programación lógica. Afortunadamente esto desapareció con el advenimiento de procesadores de 16 bits y más memoria para almacenar programas y código. Hoy en día existen intérpretes y compiladores de Prolog para prácticamente cualquier plataforma de cómputo.

En mi opinión, Prolog mereciera tener más popularidad. Gracias a que tiene el algoritmo de Robinson, el cual permite mecanizar el razonamiento y además, hacer que el paradigma de la programación lógica funcione en todo su esplendor. En un programa en Prolog el código fuente del mismo no tiene diferencia con los datos del programa. Aquí, en lugar de buscar una solución algorítmica, una receta de cocina, el programador plantea los hechos y reglas y el algoritmo de resolución de Robinson es quien nos da la respuesta, si es que existe.

En Prolog muchos programas no son decidibles a priori y se necesita hacer una búsqueda exhaustiva por todas las soluciones (llamadas el “árbol solución”). Esto hace que muchas veces se tengan dificultades para resolver los problemas planteados en tiempo polinomial. Muchas veces en Prolog hay que recorrer todo el árbol solución y si éste crece exponencialmente, debemos buscar formas alternativas de hallar una posible solución aunque no sea la óptima.

Prolog es útil para tratar con simbologías. No es una buena idea intentar, por ejemplo, escribir una hoja de cálculo en este lenguaje. En cambio, para ciertos problemas donde se involucran reglas, encadenamiento hacia atrás de reglas, hechos, etcétera, Prolog es probablemente la mejor elección.

Existen muchos compiladores e intérpretes de Prolog. Algunos tienen costo y otros son gratuitos. Quizás, quien quiera sumergirse en este lenguaje, debería iniciarse en un sistema gratuito y una vez que conozca qué se puede hacer con éste, pasar tal vez a uno de paga. Pero desde luego, lo fundamental es tener un sistema a desarrollar, un program,a por hacer. Esto en última instancia obliga al programador a estudiar y aprender qué se puede y qué no se puede hacer con el lenguaje en cuestión.

He aquí una lista de compiladores e intérpretes gratuitos para empezar. Descargue alguno, lea la documentación, pruébelo. Quizás encuentre que Prolog es el lenguaje que estaba necesitando.

Comentarios