diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-08-25 10:45:55 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-08-25 10:45:55 +0100 |
commit | 3cf7c3ef441822c889356fd1812ebf2944a59851 (patch) | |
tree | c513fe68548b40365c1c2ebfe35c58ad431cdd77 /dev-haskell/chimera/metadata.xml | |
parent | 05b8b0e0af1d72e51a3ee61522941bf7605cd01c (diff) |
gentoo resync : 25.08.2020
Diffstat (limited to 'dev-haskell/chimera/metadata.xml')
-rw-r--r-- | dev-haskell/chimera/metadata.xml | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/dev-haskell/chimera/metadata.xml b/dev-haskell/chimera/metadata.xml new file mode 100644 index 000000000000..317b99f5cc7f --- /dev/null +++ b/dev-haskell/chimera/metadata.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>haskell@gentoo.org</email> + <name>Gentoo Haskell</name> + </maintainer> + <use> + <flag name="representable">Define Representable instance from adjunctions package</flag> + </use> + <longdescription> + There are plenty of memoizing libraries on Hackage, but they + usually fall into two categories: + + * Store cache as a flat array, enabling us + to obtain cached values in O(1) time, which is nice. + The drawback is that one must specify the size + of the array beforehand, + limiting an interval of inputs, + and actually allocate it at once. + * Store cache as a lazy binary tree. + Thanks to laziness, one can freely use the full range of inputs. + The drawback is that obtaining values from a tree + takes logarithmic time and is unfriendly to CPU cache, + which kinda defeats the purpose. + + This package intends to tackle both issues, + providing a data type 'Chimera' for + lazy infinite compact streams with cache-friendly O(1) indexing. + + Additional features include: + + * memoization of recursive functions and recurrent sequences, + * memoization of functions of several, possibly signed arguments, + * efficient memoization of boolean predicates. + </longdescription> +</pkgmetadata> |