Displaying 1 to 13 from 13 results

crux - General purpose bitemporal database for SQL, Datalog & graph queries

  •    Clojure

Crux is a general purpose database with graph-oriented bitemporal indexes. Datalog, SQL & EQL queries are supported, and Java, HTTP & Clojure APIs are provided. Crux follows an unbundled architectural approach, which means that it is assembled from decoupled components through the use of an immutable log and document store at the core of its design. A range of storage options are available for embedded usage and cloud native scaling.

xtdb - General purpose bitemporal database for SQL, Datalog & graph queries. Developed by @juxt

  •    Clojure

XTDB is a general purpose database with graph-oriented bitemporal indexes. Datalog, SQL & EQL queries are supported, and Java, HTTP & Clojure APIs are provided. XTDB follows an unbundled architectural approach, which means that it is assembled from decoupled components through the use of an immutable log and document store at the core of its design. A range of storage options are available for embedded usage and cloud native scaling.

codeql-go - The CodeQL extractor and libraries for Go.

  •    CodeQL

This open-source repository contains the extractor, CodeQL libraries, and queries that power Go support in LGTM and the other CodeQL products that GitHub makes available to its customers worldwide. The goal of this project is to provide comprehensive static analysis support for Go in CodeQL.




cclyzer - A tool for analyzing LLVM bitcode using Datalog.

  •    Python

A tool for analyzing LLVM bitcode (generated either by C or C++) using Datalog. This project uses a commercial Datalog engine, developed by LogicBlox Inc..

doop-mirror - Mirror of Doop: https://bitbucket.org/yanniss/doop

  •    Java

This document contains instructions for invoking the main driver of Doop. For an introduction to Datalog, please consult Datalog-101. For a more detailed tutorial on using the results of Doop analyses, please consult Doop-101. For an introduction to pointer analysis using Datalog, you can read a research-level tutorial. For information about Taint Analysis using Doop, please consult our P/Taint paper, or P/Taint tutorial. At its core, Doop is a collection of various analyses expressed in the form of Datalog rules. The framework has two versions of its rules: one for Soufflé, an open-source Datalog engine for program analysis (which is the default engine used), and another for LogiQL, a Datalog dialect developed by LogicBlox. In order to install an up-to-date version of Soufflé, the best practice is to clone the development Github repo and follow the instructions found on this page. For a LogicBlox engine, you can use PA-Datalog, a port available for academic use, by following the instructions found on this page.

TupleNet - TupleNet is a lightweight tool for building virtual-networking

  •    Python

TupleNet is a system was built base on OVS, it leverages Geneve tunneling to construct virtual networking on physical networking. Anyone can use TupleNet to run an efficient and agile virtual networking easily. Like Flannel and Calico the architecture of Tuplenet is base on Database. Etcd play a role of brain, and each compute-node has a TupleNet instance which utilizes OVS to construct virtual networking.

securify - Security Scanner for Ethereum Smart Contracts

  •    Java

Securify is a security scanner for Ethereum smart contracts supported by the Ethereum Foundation and ChainSecurity. The core research behind Securify was conducted at the ICE Center at ETH Zurich. The project is meant to be an open platform welcoming contributions from all of the Ethereum Security Community. To suggest new patterns, to volunteer for testing or to contribute developing new patterns please get in touch through our Discord group.


datalog-rules - Utilities for managing Datalog rulesets from Clojure

  •    Clojure

Utilities for managing Datalog rulesets from Clojure. By Datalog, we mean the rules language exposed by Datomic and Datascript (because of the data-orientation of Datalog, this library doesn't have any code dependency to either of those).

differential-datalog - An in-memory incremental Datalog engine based on Differential Dataflow

  •    Haskell

DDlog is a bottom-up, incremental, in-memory, typed Datalog engine. It is well suited for writing programs that incrementally update their output in response to input changes. With DDlog, the programmer does not need to worry about writing incremental algorithms. Instead they specify the desired input-output mapping in a declarative manner, using a dialect of Datalog. The DDlog compiler then synthesizes an efficient incremental implementation. DDlog is based on Frank McSherry's excellent differential dataflow library. Bottom-up: DDlog starts from a set of ground facts (i.e., facts provided by the user) and computes all possible derived facts by following Datalog rules, in a bottom-up fashion. In contrast, top-down engines are optimized to answer individual user queries without computing all possible facts ahead of time. For example, given a Datalog program that computes pairs of connected vertices in a graph, a bottom-up engine maintains the set of all such pairs. A top-down engine, on the other hand, is triggered by a user query to determine whether a pair of vertices is connected and handles the query by searching for a derivation chain back to ground facts. The bottom-up approach is preferable in applications where all derived facts must be computed ahead of time and in applications where the cost of initial computation is amortized across a large number of queries.

Jatalog - Java Datalog Engine with Semi-Naive Evaluation and Stratified Negation

  •    Java

Datalog is a subset of the Prolog programming language that is used as a query language in deductive databases[wiki]. Jatalog is a Datalog implementation in Java. It provides a parser for the language and an evaluation engine to execute queries that can be embedded into larger applications.

crepe - Datalog compiler embedded in Rust as a procedural macro

  •    Rust

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. The program below computes the transitive closure of a directed graph. Note the use of the crepe! macro.

datalog

  •    Racket

This the source for the Racket package: "datalog". Contribute to Racket by submitting a pull request, reporting an issue, joining the development mailing list, or visiting the IRC or Slack channels.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.