pengine
prolog
pengine | prolog | |
---|---|---|
2 | 14 | |
7 | 539 | |
- | - | |
0.0 | 5.6 | |
over 1 year ago | 3 months ago | |
Go | Go | |
BSD 2-clause "Simplified" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pengine
-
Mangle, a programming language for deductive database programming
Other resources for logic programming and Go:
ichiban/prolog - ISO Prolog interpreter in pure Go, getting close to v1: https://github.com/ichiban/prolog
trealla-prolog/go - ISO Prolog interpreter embedded via WASM: https://github.com/trealla-prolog/go
guregu/pengine - library for interfacing with Pengines (SWI-Prolog's RPC protocol): https://github.com/guregu/pengine
biscuit-auth/biscuit-go - Biscuits are a fancy auth token with a little Datalog engine: https://github.com/biscuit-auth/biscuit-go
I'm a big fan of logic programming. We've been seeing a small resurgence of interest in it (for example Yarn using Prolog made some waves) and I have some optimism for its future.
-
Prolog runtime for aws lambda?
This can work surprisingly well. There are some helpful predicates in guregu/predicates to deal with JSON and filesystem stuff (for example, you could hook up predicates.FS with something like jszwec/s3fs to easily load files from S3). If you end up needing a more mature Prolog, I also have a Go implementation of pengine_rpc/3 in the pengine package to easily call SWI.
prolog
-
Mangle, a programming language for deductive database programming
Other resources for logic programming and Go:
ichiban/prolog - ISO Prolog interpreter in pure Go, getting close to v1: https://github.com/ichiban/prolog
trealla-prolog/go - ISO Prolog interpreter embedded via WASM: https://github.com/trealla-prolog/go
guregu/pengine - library for interfacing with Pengines (SWI-Prolog's RPC protocol): https://github.com/guregu/pengine
biscuit-auth/biscuit-go - Biscuits are a fancy auth token with a little Datalog engine: https://github.com/biscuit-auth/biscuit-go
I'm a big fan of logic programming. We've been seeing a small resurgence of interest in it (for example Yarn using Prolog made some waves) and I have some optimism for its future.
- Golog library/language?
-
State machines and reconciliation loops
fully native Prolog, or embedded? I am very familiar with Go, so I was intrigued to see ichiban/prolog. This might enable me to leverage some existing libraries (GitHub, git, etc) and save Prolog for the logic that drives them.
-
Let's philosophize a bit :-)
You may also be interested in this Prolog interpreter in Go: https://github.com/ichiban/prolog
-
Interpreters built in Go
There have been several Prolog interpreters written in Golang. This one appears to be most active: https://github.com/ichiban/prolog .
-
The Power of Prolog
For Go, you have prolog as a scripting engine https://github.com/ichiban/prolog
- Prolog runtime for aws lambda?
- Prolog Go Library
-
Hacker News top posts: Jan 27, 2022
An embeddable Prolog scripting language for Go\ (2 comments)
- An embeddable Prolog scripting language for Go
What are some alternatives?
mangle
go-python - naive go bindings to the CPython2 C-API
go - Trealla Prolog embedded in Go using WASM
go-lua - A Lua VM in Go
dex-lang - Research language for array processing in the Haskell/ML family
OPA (Open Policy Agent) - Open Policy Agent (OPA) is an open source, general-purpose policy engine.
biscuit-go
gval - Expression evaluation in golang
prolamb - SWI-Prolog lambda runtime
otto - A JavaScript interpreter in Go (golang)
logica - Logica is a logic programming language that compiles to SQL. It runs on Google BigQuery, PostgreSQL and SQLite.
scryer-prolog - A modern Prolog implementation written mostly in Rust.