SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

 
 

ghc-bitvec rpm build for : OpenSuSE. For other distributions click ghc-bitvec.

Name : ghc-bitvec
Version : 1.1.5.0 Vendor : openSUSE
Release : 2.2 Date : 2024-03-08 22:08:37
Group : Unspecified Source RPM : ghc-bitvec-1.1.5.0-2.2.src.rpm
Size : 1.51 MB
Packager : https://bugs_opensuse_org
Summary : Space-efficient bit vectors
Description :
A newtype over \'Bool\' with a better \'Vector\' instance: 8x less memory, up to
3500x faster.

The < https://hackage.haskell.org/package/vector vector> package represents
unboxed arrays of \'Bool\'s spending 1 byte (8 bits) per boolean. This library
provides a newtype wrapper \'Bit\' and a custom instance of an unboxed \'Vector\',
which packs bits densely, achieving an __8x smaller memory footprint.__ The
performance stays mostly the same; the most significant degradation happens for
random writes (up to 10% slower). On the other hand, for certain bulk bit
operations \'Vector\' \'Bit\' is up to 3500x faster than \'Vector\' \'Bool\'.

=== Thread safety

* \"Data.Bit\" is faster, but writes and flips are not thread-safe. This is
because naive updates are not atomic: they read the whole word from memory,
then modify a bit, then write the whole word back. Concurrently modifying
non-intersecting slices of the same underlying array may also lead to
unexpected results, since they can share a word in memory. *
\"Data.Bit.ThreadSafe\" is slower (usually 10-20%), but writes and flips are
thread-safe. Additionally, concurrently modifying non-intersecting slices of
the same underlying array works as expected. However, operations that affect
multiple elements are not guaranteed to be atomic.

=== Similar packages

* < https://hackage.haskell.org/package/bv bv> and
< https://hackage.haskell.org/package/bv-little bv-little> do not offer mutable
vectors.

* < https://hackage.haskell.org/package/array array> is memory-efficient for
\'Bool\', but lacks a handy \'Vector\' interface and is not thread-safe.

RPM found in directory: /packages/linux-pbone/ftp5.gwdg.de/pub/opensuse/repositories/openSUSE:/ALP:/Experimental:/Slowroll/base.20240605/repo/oss/x86_64

Content of RPM  Changelog  Provides Requires

Download
ftp.icm.edu.pl  ghc-bitvec-1.1.5.0-2.2.x86_64.rpm
ftp.icm.edu.pl  ghc-bitvec-1.1.5.0-2.2.x86_64.rpm
     

Provides :
ghc-bitvec
ghc-bitvec(x86-64)
libHSbitvec-1.1.5.0-CdrtBh9Q8YP5mD5LZEc9ZB-ghc9.8.2.so()(64bit)

Requires :
libHSarray-0.5.6.0-b200-ghc9.8.2.so()(64bit)
libHSbase-4.19.1.0-4816-ghc9.8.2.so()(64bit)
libHSbytestring-0.12.1.0-a393-ghc9.8.2.so()(64bit)
libHSdeepseq-1.5.0.0-495d-ghc9.8.2.so()(64bit)
libHSghc-bignum-1.3-45cf-ghc9.8.2.so()(64bit)
libHSghc-boot-th-9.8.2-61d3-ghc9.8.2.so()(64bit)
libHSghc-prim-0.11.0-0a47-ghc9.8.2.so()(64bit)
libHSpretty-1.1.3.6-f9f0-ghc9.8.2.so()(64bit)
libHSprimitive-0.9.0.0-3xDiG4xmvzAPpo2fmSS2J-ghc9.8.2.so()(64bit)
libHStemplate-haskell-2.21.0.0-8f33-ghc9.8.2.so()(64bit)
libHStransformers-0.6.1.0-c6b5-ghc9.8.2.so()(64bit)
libHSvector-0.13.1.0-KsI9YW0GZzC4MTSbCkYhas-ghc9.8.2.so()(64bit)
libHSvector-stream-0.1.0.1-3kemkf3sEYo7HEPagmetX7-ghc9.8.2.so()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libgmp.so.10()(64bit)
libm.so.6()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1


Content of RPM :
/usr/lib64/ghc-9.8.2/lib/libHSbitvec-1.1.5.0-CdrtBh9Q8YP5mD5LZEc9ZB-ghc9.8.2.so
/usr/share/licenses/ghc-bitvec
/usr/share/licenses/ghc-bitvec/LICENSE

 
ICM