From olf at aatal-apotheke.de Wed Mar 24 14:47:44 2021 From: olf at aatal-apotheke.de (Olaf Klinke) Date: Wed, 24 Mar 2021 15:47:44 +0100 Subject: [Data-haskell] ANN closed-intervals-0.1 Message-ID: Dear Cafe, I am pleased to announce the first release of closed-intervals [1], a package for querying and manipulating collections of closed intervals in totally ordered types. Other packages exist which either deal with a single interval type [2,4] or provide an interval type class [3]. Having both closed, open and half-open intervals makes the interface complicated, however. The focus of closed-intervals is on intervals including both end-points and is intended to be used on records with length or duration information. My use cases are mostly sequences of annotated time intervals [*], parsed from time-stamped data. Against these sequences overlap-, coverage- and intersection queries are run using single intervals as query. The package contains many doctests. Testing builds on Henning Thielemann's doctest-extract [5] and doctest-exitcode-io [6] packages. closed-intervals is, after provenience [7], the second package in an effort to open-source my employer's entire Haskell codebase. We will gradually publish from general to problem-specific. Cheers, Olaf [1] https://hackage.haskell.org/package/closed-intervals [2] https://hackage.haskell.org/package/data-interval [3] https://hackage.haskell.org/package/IntervalMap [4] https://hackage.haskell.org/package/intervals [5] https://hackage.haskell.org/package/doctest-extract [6] https://hackage.haskell.org/package/doctest-exitcode-io [7] https://hackage.haskell.org/package/provenience [*] Since time types are fine-grained and a time point is an idealized concept, the question of end-point inclusion is not that relevant for time intervals. We do distinguish between intersection in end-points and proper intersection, though.