An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

loops

loops is a library for fast, imperative-style loops with a clean syntax. Features Fast, imperative-style loops with a clean syntax. Bind (>>=) nests loops, so in do-notation, each subsequent line is nested inside loops that appear above it. Iteration over common data structures, like lists and vectors. Robust performance because there is no reliance on fusion. NEW! Loop-unrolling to arbitrary depth. Unrollable loop combinators are provided in Control.Monad.Loop.Unroll. (The simple, "rolled" interface is still provided in Control.Monad.Loop.) The unrolling depth set at the call site at compile time. My benchmarks show that folding over unrolled loops is up to 25% faster than folding over unboxed vectors! For best performance, please compile your code with -O2. You should also use GHC's LLVM backend if possible; it generally produces faster executables.

Ecosystem
hackage.haskell.org
Latest Release
0.2.0.2
over 11 years ago
Versions
5
Downloads
5,307 total
Dependent Repos
2
Links
Registry hackage.haskell.org
JSON API View JSON
CodeMeta codemeta.json
Package Details
PURL pkg:hackage/loops
spec
License BSD-3-Clause
First Release over 11 years ago
Last Synced 6 days ago