4 ms·
I've wished for the same kind of 'embed prolog in my ruby' for enumerating all possible cases, all invalid cases, etc in test suites. Interesting to know it's n
by zemptime 11mo ago
I've wished for the same kind of 'embed prolog in my ruby' for enumerating all possible cases, all invalid cases, etc in test suites. Interesting to know it's not just me!
- naasking 11mo agoMaybe try a Ruby Kanren implementation: https://minikanren.org/ https://minikanren.org/ uKanren is conceptually small and simple, here's a Ruby implementation: https://github.com/jsl/ruby_ukanren https://github.com/jsl/ruby_ukanren
- dflock 11mo agoThere are a bunch of libraries that will do this - here's one example of a python one: https://github.com/yuce/pyswip https://github.com/yuce/pyswip - and a ruby one: https://github.com/preston/ruby-prolog https://github.com/preston/ruby-prolog
- zemptime 11mo agoI did try ruby-prolog. The deeper issue is that its just not prolog. Writing in actual prolog affords a lot of clarity and concision which would be quite noisy in ruby-prolog. To me, the difference was stark enough it wasn't worth any convenience already being in ruby was worth.
- dragonwriter 11mo agoPorolog might be more to your liking. https://www.rubydoc.info/gems/porolog#porolog-wiki https://www.rubydoc.info/gems/porolog#porolog-wiki