Questo pacchetto fornisce versioni strict di alcuni tipi di dati Haskell standard
(coppie, Maybe e Either). Contiene inoltre operazioni di IO strict.
È noto che le strutture dati lazy possono causare space-leaks.
Questo problema è particolarmente evidente quando si usano strutture dati lazy per memorizzare
lo stato di un'applicazione di lunga durata in memoria. Una soluzione comune a questo
problema è usare 'seq' e le sue varianti in ogni pezzo di codice che aggiorna
il proprio stato. Tuttavia una soluzione molto più semplice è usare tipi pienamente strict per
memorizzare tali valori di stato. Per «tipi pienamente strict» intendiamo tipi per i cui valori
vale che, se sono in forma normale di testa debole (weak-head normal form), allora sono anche in
forma normale. Intuitivamente, ciò significa che i valori di tipi pienamente strict non possono
contenere thunk non valutati.
Per definire un tipo di dati pienamente strict, tipicamente si usa la seguente ricetta.
1. Rendi strict tutti i campi di ogni costruttore; cioè, aggiungi un bang a tutti i campi.
2. Usa solo tipi strict per i campi dei costruttori.
Il secondo requisito è problematico poiché esclude l'uso dei tipi standard
Haskell 'Maybe', 'Either' e delle coppie. Questa libreria risolve questo problema
fornendo varianti strict di questi tipi e le corrispondenti funzioni di supporto
standard e istanze di type-class.
Si noti che questa libreria attualmente non fornisce liste pienamente strict.
Possono essere aggiunte se sono davvero necessarie. Tuttavia, in molti casi si
vuole probabilmente usare vettori unboxed o boxed strict della libreria 'vector'
(<http://hackage.haskell.org/package/vector>) invece di liste strict.
Inoltre, invece di 'String's si vuole probabilmente usare valori 'Text' strict
dalla libreria 'text' (<http://hackage.haskell.org/package/text>).
Questa libreria viene fornita con batterie incluse; cioè, funzioni specchio e
istanze delle versioni lazy in 'base'. Include anche istanze per
type-class dei pacchetti 'deepseq', 'binary' e 'hashable'.
Paths come from the repository package-file index for the observed builds. They describe archive/package associations, not every file that will exist on a running system after maintainer scripts, alternatives, generated state, diversions, or installation choices.
Ogni riga è metadato dell'indice pacchetti per una versione, architettura, suite e repository. Nomi, URL e dimensioni arrivano dalla fonte; un link è un punto di recupero mutabile, non una redistribuzione OpenFactory.
Repository signatures authenticate metadata. Artifact hashing is recorded separately. Neither establishes package safety.
0.5-150500.3.3.1 / aarch64Osservato Sep 1, 2026sha512 7127fd8bdd96…e9609142Impronta della fonte
Metadata observed; artifact bytes were not independently fetched or hashed by this catalog import. The digest below is source-reported.
Impronta della fonte (sha512): 7127fd8bdd963f7468f4d7d687fd5c497ce7f53eb4ea6a04169a3e9675df0b6248bace1e7a0e6b11763444cd2ec159db1152dee851e2ce5c31f51baee9609142
0.5-150500.3.3.1 / ppc64leOsservato Sep 1, 2026sha512 883f725821b6…11dcb212Impronta della fonte
Metadata observed; artifact bytes were not independently fetched or hashed by this catalog import. The digest below is source-reported.
Impronta della fonte (sha512): 883f725821b65c1f3aaef7c30c87940f9d88fdf6a9cb4eab144caa89ad242eea439a5bdfb75113f07d09dcbeb8eaa0423f1ff7d3705be4863eebe1cf11dcb212
0.5-150500.3.3.1 / s390xOsservato Sep 1, 2026sha512 1034aaa5a97a…8102adc9Impronta della fonte
Metadata observed; artifact bytes were not independently fetched or hashed by this catalog import. The digest below is source-reported.
Impronta della fonte (sha512): 1034aaa5a97ab36d942817c5a2153c2115ad91ec14454722b601e9d347f5efb74ac3ef1815a9552e0ccb80dd5bf1591580f1101e155b5c5a80f6f1ee8102adc9
0.5-150500.3.3.1 / x86_64Osservato Sep 1, 2026sha512 9b9810e69b77…6467caacImpronta della fonte
Metadata observed; artifact bytes were not independently fetched or hashed by this catalog import. The digest below is source-reported.
Impronta della fonte (sha512): 9b9810e69b7744954677d71cc4cf1fd556c45c16913c9913e97233ba8da9b5d253bdb334a1cc8828e15532f4652de480f34abf232a69d5c416f88fed6467caac