Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Interface to ECLiPSe CLP

Project description

PyCLP is a Python library to interface ECLiPSe Constraint Programmig System.

This module try to implement a pythonic interface to ECLiPSe (alias easy to use) by compromising on a little bit on performance.

Major differences from ECLiPSe standard interface libraries

The main difference compared to embedded interface provided by ECLiPSe system is the persistence of constructed terms after calling the pyclp.resume (check 3.1.2 Building ECLiPSe terms ) function. In ECLiPSe standard interfaces compound terms are destroyed after resume while in PyCLP are stored in a reference that survives after resuming. PyCLP will destroy the reference only when python destroys the linked python object (garbage collection). This consumes more memory but now the python object and the related ECLiPSe object have the same lifetime.

Moreover, in the definition of the API I tried to take advantage of a common property of python and ECLiPSe: both are weak typed languages.

Next steps

  • Extend functionality of set_option function

Project details


Download files

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

Files for PyCLP, version 1.0
Filename, size File type Python version Upload date Hashes
Filename, size PyCLP-1.0.tar.gz (201.1 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page