ap -base +package
A gtk2hs server and clan browser for the open source game Tremulous http://tremulous.net. Both Tremulous 1.1 and GPP are supported.
Features filtering, player search, a list of online clan members, a clan list and basic perferences.
Version 1.2
A simple applicative parser in Parsec style
Version 0.1.4
This library provides an interface to send notifications with the Apple Push Notification Service.
Note: Your connection to Apple's Push Notification service must be secured with SSL. Currently, Haskell's support for SSL is incomplete, therefore you should use an SSL tunnel to connect your application to the push service, such as stunnel.
Version 0.1
This package enables you to compile and execute AppleScript code from Haskell, and provides support for this AppleScript code to call back into Haskell. To get started, see Foreign.AppleScript.Rich.
Version 0.2.0.1
Some instances for applicative functors and type-level composition. Forkable on github.
Version 0.1.8
Any applicative functor can be given numeric instances in a boilerplate way. The applicative-numbers package provides an include file that makes it a snap to define these instances. See Data.Numeric.Function for an example.
Project wiki page: http://haskell.org/haskellwiki/applicative-numbers
Copyright 2009 Conal Elliott; BSD3 license.
Instances of Num classes for applicative functors. To be #include'd after defining APPLICATIVE as the applicative functor name and CONSTRAINTS as a list of constraints, which must carry its own trailing comma if non-empty. The APPLICATIVE symbol gets #undef'd at the end of the include file, so that multiple includes are convenient.
For instance,
@ #define INSTANCE_Ord #define INSTANCE_Enum
#define APPLICATIVE Vec2 #include "ApplicativeNumeric-inc.hs"
#define APPLICATIVE Vec3 #include "ApplicativeNumeric-inc.hs"
#define APPLICATIVE Vec4 #include "ApplicativeNumeric-inc.hs" @
You'll also have to import pure and liftA2 from Control.Applicative and specify the FlexibleContexts language extension (due to an implementation hack).
Some instances are generated only if a corresponding CPP symbol is defined: INSTANCE_Eq, INSTANCE_Ord, INSTANCE_Show, INSTANCE_Enum
Version 0.0.9
Quasiquoters taken from Matt Morrow's haskell-src-meta to implement Conor McBride's idiom brackets, and a do-notation that only requires Applicative (and is correspondingly less powerful).
Version 0.1.0.5
Utility to perform approximate randomization tests.
Version 0.0.3
The purpose of this module is to provide newtype wrappers that allow one to effectively override the equality operator of a value so that it is approximate rather than exact. The wrappers use type annotations to specify the tolerance; the Digits type constructor has been provided for specifying the tolerance using type-level natural numbers. Instances for all of the classes in the numerical hierarchy have been provided for the wrappers, so the wrapped values can mostly be used in the same way as the original values. (In fact, most of the time one doesn't even have to wrap the starting values, since expressions such as (1+sqrt 2/3) are automatically wrapped thanks to the fromIntegral method of the Num typeclass.) See the documentation for Data.Eq.Approximate for more detailed information on how to use this package. New in version 1.1: Added explicit Show constraints to the Show instances, as the Num class in the newest version of GHC (wisely) no longer includes Show as a constraint.
Version 1.1
This is a Haskell (plus some extensions) implementation of a library for incremental computing. It closely follows the implementation in the nice POPL 2002 paper "Adaptive Functional Programming", by Umut Acar, Guy Blelloch and Bob Harper.
Version 0.22
Self optimizing polymorphic container types.
Adaptive containers are polymorphic container types that use class associated data types to specialize particular element types to a more efficient container representation. The resulting structures tend to be both more time and space efficient.
A self-optimizing pair, for example, will unpack the constructors, yielding a representation for (Int,Char) requiring 8 bytes, instead of 24.
This difference can be visualized. Consider the expression:
> [ (x,y) | x <- [1..3], y <- [x..3] ]
* [(Int,Int)]: A regular list of pairs http://code.haskell.org/~dons/images/vacuum/tuple-list.png
* [Pair Int Int]: An adaptive list of pairs http://code.haskell.org/~dons/images/vacuum/pair-list.png
* List (Pair Int Int): An adaptive list of adaptive pairs http://code.haskell.org/~dons/images/vacuum/list-pair.png
Currently supported adaptive containers: pairs, lists, maybes
Most unboxed element types are supported.
Version 0.3
Self optimizing tuple types.
Adaptive tuples are tuple types in which the number of elements is determined at run-time. These structures are designed to combine the space-efficiency of tuples with the size flexibility of lists.
Adaptive tuples provide lazy and strict, unpacked data structures for all tuple sizes from 0 to 20 elements. Adaptive tuples of more than 20 elements are allowed, however they are stored in an ordinary list.
Version 0.2.0
This package provides useful utilities for making use of the opportunities the ArrowApply class provides, such as the ability to work with Arrows as Monads, and use liftM-like functions.
Version 0.2
LDAP authentication for Haskell web applications.
Version 0.0.3
A data structure representing a bidirectional mapping between two key types. Each value in the bimap is associated with exactly one value of the opposite type.
Version 0.2.4
A library for handling and manipulating bitmaps (that is, rectangular pixel arrays).
Version 0.0.2
OpenGL support for Data.Bitmap. It has its own package so that the bitmap package does not depend on OpenGL.
Version 0.0.0
Show more results