ukanren-rs VS crepe

Compare ukanren-rs vs crepe and see what are their differences.

ukanren-rs

Rust implementation of µKanren, a featherweight relational programming language. (by ekzhang)

crepe

Datalog compiler embedded in Rust as a procedural macro (by ekzhang)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
ukanren-rs crepe
4 4
106 443
- -
0.0 0.0
over 1 year ago about 2 months ago
Rust Rust
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

ukanren-rs

Posts with mentions or reviews of ukanren-rs. We have used some of these posts to build our list of alternatives and similar projects.

crepe

Posts with mentions or reviews of crepe. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-22.
  • Datalog in 100 lines of JavaScript (2022)
    5 projects | news.ycombinator.com | 22 Jan 2024
  • GDlog: A GPU-Accelerated Deductive Engine
    16 projects | news.ycombinator.com | 3 Dec 2023
    https://github.com/topics/datalog?l=rust ... Cozo, Crepe

    Crepe: https://github.com/ekzhang/crepe :

    > Crepe is a library that allows you to write declarative logic programs in Rust, with a Datalog-like syntax. It provides a procedural macro that generates efficient, safe code and interoperates seamlessly with Rust programs.

    Looks like there's not yet a Python grammar for the treeedb tree-sitter: https://github.com/langston-barrett/treeedb :

    > Generate Soufflé Datalog types, relations, and facts that represent ASTs from a variety of programming languages.

    Looks like roxi supports n3, which adds `=>` "implies" to the Turtle lightweight RDF representation: https://github.com/pbonte/roxi

    FWIW rdflib/owl-rl: https://owl-rl.readthedocs.io/en/latest/owlrl.html :

    > simple forward chaining rules are used to extend (recursively) the incoming graph with all triples that the rule sets permit (ie, the “deductive closure” of the graph is computed).

    ForwardChainingStore and BackwardChainingStore implementations w/ rdflib in Python: https://github.com/RDFLib/FuXi/issues/15

    Fast CUDA hashmaps

    Gdlog is built on CuCollections.

    GPU HashMap libs to benchmark: Warpcore, CuCollections,

    https://github.com/NVIDIA/cuCollections

    https://github.com/NVIDIA/cccl

    https://github.com/sleeepyjack/warpcore

    /? Rocm HashMap

    DeMoriarty/DOKsparse:

  • Ergonomic inline SQL as a Python library
    3 projects | /r/ProgrammingLanguages | 8 Oct 2022
    Inspired by past work: LINQ, inline-python, crepe, DataScript, Riffle.
  • Call for Help - Open Source Datom/EAV/Fact database in Rust.
    8 projects | /r/rust | 1 Apr 2022

What are some alternatives?

When comparing ukanren-rs and crepe you can also consider the following projects:

kanren - An extensible, lightweight relational/logic programming DSL written in pure Python

datalevin - A simple, fast and versatile Datalog database

rust - Empowering everyone to build reliable and efficient software.

percival - 📝 Web-based, reactive Datalog notebooks for data analysis and visualization

conlog - A simple prolog interpreter written in Rust

souffle - Soufflé is a variant of Datalog for tool designers crafting analyses in Horn clauses. Soufflé synthesizes a native parallel C++ program from a logic specification.

oso - Oso is a batteries-included framework for building authorization in your application.

mentat - UNMAINTAINED A persistent, relational store inspired by Datomic and DataScript.

scryer-prolog - A modern Prolog implementation written mostly in Rust.

Event Store - EventStoreDB, the event-native database. Designed for Event Sourcing, Event-Driven, and Microservices architectures

indradb - A graph database written in rust

versionist - A plugin for versioning Rails based RESTful APIs.