4 ms·
Are there any Prolog scripting engines or embeddable runtimes? It feels like the kind of thing where you might use it to solve a small part of your problem doma
by kitd 4y ago
Are there any Prolog scripting engines or embeddable runtimes? It feels like the kind of thing where you might use it to solve a small part of your problem domain and leave the rest to a conventional language.
- QuinnWilton 4y agoTo an extent, you get this with Datalog, which is an easily embeddable subset of pure Prolog. I've been spending a ton of time with the language and its implementation through my day job, and I recently spoke about its use as a DSL for embedded knowledge bases: https://www.youtube.com/watch?v=lYLkaOq7WbU https://www.youtube.com/watch?v=lYLkaOq7WbU
- miltondts 4y agoNot exactly Prolog, but there is miniKanren. You can check a list of implementations here: http://minikanren.org/#implementations http://minikanren.org/#implementations
- Avshalom 4y agoOff the top of my head: Javascript: http://tau-prolog.org/ http://tau-prolog.org/ Java: https://apice.unibo.it/xwiki/bin/view/Tuprolog/ https://apice.unibo.it/xwiki/bin/view/Tuprolog/ (also SWI, Ciao and Sicstus have Java bridges) Go: https://github.com/ichiban/prolog https://github.com/ichiban/prolog Common Lisp: https://www.cliki.net/Prolog https://www.cliki.net/Prolog Racket: https://docs.racket-lang.org/racklog/ https://docs.racket-lang.org/racklog/ Guile: https://gitlab.com/gule-log/guile-log https://gitlab.com/gule-log/guile-log Erlang: https://github.com/rvirding/erlog https://github.com/rvirding/erlog Also SWI and Ciao have a pretty straight forward FFI for C.
- Avshalom 4y agoOh nice, looks like Tau just put out a new point release last week https://github.com/tau-prolog/tau-prolog/blob/master/RELEASE_NOTES.md https://github.com/tau-prolog/tau-prolog/blob/master/RELEASE... this looks handy https://github.com/tau-prolog/tau-prolog/issues/295 https://github.com/tau-prolog/tau-prolog/issues/295
- marttt 4y agoPicolisp has Pilog: https://picolisp.com/wiki/?tutpilog https://picolisp.com/wiki/?tutpilog
- ashton314 4y agoMay I interest you in microKanren? You can just roll your own. Here’s a shameless self-plug for a close reading I did of the paper that introduces microKanren: https://github.com/ashton314/muKanren_reading https://github.com/ashton314/muKanren_reading