|
|
|
|
|
by nickswalker
707 days ago
|
|
I noticed the same friction while trying to integrate Answer Set Programming solvers into Python projects. The people who built the dominant ASP solver actually provide nice solutions though. Possible inspiration for Prolog tooling: Clorm (Clingo ORM) [1] makes it easy to create facts after you define simple predicate Python classes. Here's an example project of mine which uses it to set up a scheduling problem (Python -> ASP) and to present the results (ASP -> Python). https://github.com/raceconditionrunning/relay-scheduler Clingo (the solver) exposes its internal AST implementation through Python bindings[2], so you can build up rules or other statements from typed components instead of strings. This simplifies the translation bits of implementing an ORM or whatever kind of wrapper a developer would prefer. [1] https://github.com/potassco/clorm
[2] https://potassco.org/clingo/python-api/current/clingo/ast.ht... |
|