The snap-core package

[Tags: bsd3, library]

This is the first developer prerelease of the Snap framework. Snap is a simple and fast web development framework and server written in Haskell. For more information or to download the latest version, you can visit the Snap project website at

This library contains the core definitions and types for the Snap framework, including:

1. Primitive types and functions for HTTP (requests, responses, cookies, post/query parameters, etc)

2. Type aliases and helper functions for Iteratee I/O

3. A monad for programming web handlers called "Snap", inspired by happstack's (, which allows:

Quick start: The Snap monad and HTTP definitions are in Snap.Types, some iteratee utilities are in Snap.Iteratee.

Higher-level facilities for building web applications (like user/session management, component interfaces, data modeling, etc.) are planned but not yet implemented, so this release will mostly be of interest for those who:


Versions0.1.1, 0.1.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.2.7,, 0.2.8,, 0.2.9, 0.2.10, 0.2.11, 0.2.12, 0.2.13, 0.2.14, 0.2.15,, 0.2.16, 0.3.0, 0.3.1,, 0.4.0,,, 0.4.1, 0.4.2, 0.4.3, 0.5.0, 0.5.1,,,,, 0.5.2, 0.5.3,, 0.5.4, 0.5.5, 0.6.0,, 0.7,, 0.8.0,, 0.8.1, 0.9.0, 0.9.2,,, 0.9.3,,,,,,,,
Dependenciesattoparsec (>=0.8.1 && <0.9), base (==4.*), bytestring, bytestring-nums, bytestring-show (>=0.3.2 && <0.4), cereal (==0.3.*), containers, deepseq (==1.1.*), directory, directory-tree, dlist (==0.5.*), filepath, haskell98, iteratee (>=0.3.1 && <0.4), ListLike (==1.*), MonadCatchIO-transformers (>=0.2.1 && <0.3), monads-fd, old-locale, old-time, template-haskell, text (==0.10.*), time, transformers, unix-compat, zlib
AuthorJames Sanders, Shu-yu Guo, Gregory Collins, Doug Beardsley
Home page
Source repositoryhead: git clone
Upload dateTue Oct 26 23:44:37 UTC 2010
Uploaded byGregoryCollins
DistributionsDebian:, Fedora:, FreeBSD:, NixOS:
Downloads18823 total (2095 in last 30 days)




portableCompile in cross-platform mode. No platform-specific code or optimizations such as C routines will be used.Disabled
no-debugDisable any debug logging code. Without this flag, Snap will test the DEBUG environment variable to decide whether to do logging, and this introduces a tiny amount of overhead (a call into a function pointer) because the calls to 'debug' cannot be inlined. Users who want to squeeze out maximum performance can set the no-debug flag to get a version of Snap which has debug calls that should be inlined away.Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainers' corner

For package maintainers and hackage trustees