Skip to main content

Exposes the boost.icl interval container library to python

Project description

PyICL exposes the boost.icl interval container library to python.

The boost.icl interval container library introduces itself as:

Intervals are almost ubiquitous in software development. Yet they are very
easily coded into user defined classes by a pair of numbers so they are only
implicitly used most of the time. The meaning of an interval is simple.
They represent all the elements between their lower and upper bound and
thus a set. But unlike sets, intervals usually can not be added to a single
new interval. If you want to add intervals to a collection of intervals that
does still represent a set, you arrive at the idea of interval_sets provided
by this library.

Interval containers of the ICL have been developed initially at Cortex Software
GmbH to solve problems related to date and time interval computations in the
context of a Hospital Information System. Time intervals with associated values
like amount of invoice or set of therapies had to be manipulated in statistics,
billing programs and therapy scheduling programs. So the ICL emerged out of
those industrial use cases. It extracts generic code that helps to solve common
problems from the date and time problem domain and can be beneficial in other
fields as well.

One of the most advantageous aspects of interval containers is their very compact
representation of sets and maps. Working with sets and maps of elements can be
very inefficient, if in a given problem domain, elements are typically occurring
in contiguous chunks. Besides a compact representation of associative containers,
that can reduce the cost of space and time drastically, the ICL comes with a
universal mechanism of aggregation, that allows to combine associated values in
meaningful ways when intervals overlap on insertion.

PyICL aims to present most of the functionality of the C++ boost.icl library to python users in an intuitive way.

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

PyICL-0.6.15.tar.gz (56.1 kB view details)

Uploaded Source

File details

Details for the file PyICL-0.6.15.tar.gz.

File metadata

  • Download URL: PyICL-0.6.15.tar.gz
  • Upload date:
  • Size: 56.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for PyICL-0.6.15.tar.gz
Algorithm Hash digest
SHA256 c9da865d4f28df916548bcf0b172c08118790ba42e47373e113ea9440b2dae2d
MD5 c4a8e955e0f8c615d801e4703cf65b88
BLAKE2b-256 dad85f3a67b5af6edf4c00bf148ddb00cab00b9690cd238d409976d5f0b2ef90

See more details on using hashes here.

Supported by

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