{"@context":"https://w3id.org/codemeta/3.0","@type":"SoftwareSourceCode","identifier":"pkg:hackage/chimera","name":"chimera","description":"There are plenty of memoizing libraries on Hackage, but they\nusually fall into two categories:\n\nStore cache as a flat array, enabling us\nto obtain cached values in O(1) time, which is nice.\nThe drawback is that one must specify the size\nof the array beforehand,\nlimiting an interval of inputs,\nand actually allocate it at once.\n\nStore cache as a lazy binary tree.\nThanks to laziness, one can freely use the full range of inputs.\nThe drawback is that obtaining values from a tree\ntakes logarithmic time and is unfriendly to CPU cache,\nwhich kinda defeats the purpose.\n\nThis package intends to tackle both issues,\nproviding a data type Chimera for\nlazy infinite compact streams with cache-friendly O(1) indexing.\n\nAdditional features include:\n\nmemoization of recursive functions and recurrent sequences,\n\nmemoization of functions of several, possibly signed arguments,\n\nefficient memoization of boolean predicates.","version":"0.4.2.0","softwareVersion":"0.4.2.0","license":"https://spdx.org/licenses/BSD-3-Clause","codeRepository":"https://github.com/Bodigrim/chimera","issueTracker":"https://github.com/Bodigrim/chimera/issues","url":"https://github.com/Bodigrim/chimera#readme","keywords":["bsd3","data","library","Propose Tags"],"programmingLanguage":{"@type":"ComputerLanguage","name":"Haskell"},"maintainer":[{"@type":"Person","name":"Bodigrim"}],"author":[{"@type":"Person","name":"Bodigrim"}],"copyrightHolder":[{"@type":"Person","name":"Bodigrim"}],"dateCreated":"2018-12-04","dateModified":"2026-08-14","datePublished":"2026-08-14","copyrightYear":2018,"downloadUrl":"https://hackage.haskell.org/package/chimera-0.4.2.0/chimera-0.4.2.0.tar.gz","applicationCategory":"hackage","runtimePlatform":"hackage","developmentStatus":"active","sameAs":["https://hackage.haskell.org/package/chimera"],"https://www.w3.org/ns/activitystreams#likes":59,"https://forgefed.org/ns#forks":6}