Integración de Prolog con C #[cerrado]


¿Alguien conoce una buena (y preferiblemente gratuita) manera de integrar Prolog y C#?

Estoy buscando crear una dll Prolog o similar para llamar desde mi código administrado, y recuperar una respuesta una vez que se haya completado todo el procesamiento. Estoy buscando que sea predominantemente de un lado (c# llama Prolog).

He visto esta pregunta que habla sobre el uso de Prolog en el mundo real, pero me preguntaba si alguien tenía alguna experiencia con c# y Prolog. o un bonito tutorial/artículo?

Author: Community, 2008-10-08

8 answers

Prolog.NET (editar: enlace actualizado ya que el antiguo enlace del sitio ha sido hackeado) He intentado tanto P# y Prolog.NET pero ambos tienen sus puntos débiles.

 12
Author: supermedo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-30 01:08:18

Puedes echar un vistazo a Yield Prolog.

Yield Prolog usa la palabra clave yield en C# (y Python, y JavaScript) y la clase personalizada Variable para simular la máquina Prolog. De esta manera, obtienes una API Prolog en tu idioma favorito. No necesitas conectar tu idioma principal con P# o proyectos similares.

 9
Author: zuber,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-08 09:27:18

No es gratis, pero Sicstus Prolog permite la conexión a C# y Java

Esta es la implementación de Prolog que utilizamos en nuestra empresa, y es muy rápida y útil.

 3
Author: Torbjörn Josefsson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-11-12 09:32:05

Prolog en C#, disponible en SourceForge (intérprete Prolog escrito en C#)

 2
Author: James Reynolds,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-10-02 11:57:14

Tal vez P# le será útil

 2
Author: OnesimusUnbound,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-10-02 11:57:43

Si su prolog es swi-prolog, tiene dos opciones. La versión más antigua, y esencialmente obsoleta, es http://www.swi-prolog.org/contrib/CSharp.html

El más nuevo, mucho mejor es swicli. http://www.swi-prolog.org/contrib/NetMono.html

 1
Author: Anniepoo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-02 23:33:12

Puede usar ECLiPSe Prolog. lo he integrado con VC8. sería mejor usar VC8 en lugar de C#.

 0
Author: Archie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-03-12 12:35:32

Si la implementación con una implementación completa de prolog no es un problema, puede usar SWI-Prolog y hablar con él a través de XPCE y sockets.

 0
Author: mdm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-04-28 16:18:01