Skip to main content

A pure-python implementation of Datalog, a truly declarative language derived from prolog. Run logic queries on databases or python objects, and use logic clauses to define python classes.

Project description

pyDatalog adds the logic programming paradigm to Python’s toolbox, in a pythonic way. You can now run logic queries on databases or Python objects, and use logic clauses to define python classes.

Datalog is a truly declarative language derived from Prolog, with strong academic foundations. It complements Python very well for:

  • managing large sets of related information (e.g. in data integration or in Natural Language Processing).

  • simulating intelligent behavior (e.g. for games or expert systems),

  • performing recursive algorithms (e.g. in network protocol, code and graph analysis, parsing)

  • solving discrete constraint problems.

In particular, pyDatalog can be used as a query language:

  • it can perform multi-database queries (from memory datastore, 11 relational databases, and noSQL database with appropriate connectors)

  • it is more expressive than SQL, with a cleaner syntax;

  • it facilitates re-use of query snippet (e.g. for frequent joins or formula).

Datalog excels at managing complexity : Datalog programs are often shorter than their Python equivalent, and Datalog statements can be specified in any order, as simply as formula in a spreadsheet.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyDatalog-0.13.0.zip (66.1 kB view details)

Uploaded Source

File details

Details for the file pyDatalog-0.13.0.zip.

File metadata

  • Download URL: pyDatalog-0.13.0.zip
  • Upload date:
  • Size: 66.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyDatalog-0.13.0.zip
Algorithm Hash digest
SHA256 479c4f793695040f0fafc66886c14faca8bf3dcd389ba8db5434cfe61b02f47a
MD5 417ae1d33d0ae05452f7311d464026f2
BLAKE2b-256 457e41defce40513492d9c8d481bc34ed8b465e45b6d6c1a19e50020719b3e1c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page