{"repo":"ichiban/prolog","free":true,"listed":false,"github":"https://github.com/ichiban/prolog","clone":"git clone https://github.com/ichiban/prolog.git","description":"The only reasonable scripting engine for Go.","language":"Go","stars":728,"topics":["interpreter","prolog","golang","go","logic-programming"],"license":"MIT","category":"databases-storage","readme_excerpt":"What is this? ichiban/prolog is an embeddable ISO Prolog interpreter in Go . - Standards-compliant: - ISO/IEC 13211-1:1995 Information technology — Programming languages — Prolog — Part 1: General core - A Prologue for Prolog - DCGs - Easy to integrate: database/sql -like Go API - Highly customizable: - Sandboxing - Custom predicates in Go - Custom terms (data types) in Go Comparison with Other Libraries prolog otto go-lua ----------- ---------------------- --------------- --------------- Language ISO Prolog ECMA Script Lua Paradigm 🎓 Logic Object-oriented Object-oriented Go API 😻 database/sql -like original original Declarative ✅ ❌ ❌ Sandboxing ✅ ❌ ✅ Getting started Install latest version Usage Instantiate an interpreter Or, if you want a sandbox interpreter without any built-in predicates: Load a Prolog program Similar to database/sql , you can use placeholder ? to insert Go data as Prolog data. Run the Prolog program Or, if you want to query for the variable values for each solution: The Default Language ichiban/prolog adheres the ISO standard and comes with the ISO predicates as well as the Prologue for Prolog and DCG predicates. See the Wiki for the directives and the built-in predicates. Top Level 1pl is an experimental top level command for testing the default language and its compliance to the ISO standard. You can install it with go install : Then, you can enter the top level with 1pl : Extensions - predicates: Native predicates for ichiban/prolog. - kagomelog: a J","default_branch":null,"files":null,"tree":[],"storefront":"/r/ichiban","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ichiban/prolog/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}