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.
A simple applicative parser in Parsec style
Some instances for applicative functors and type-level composition. Forkable on github.
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-2013 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.
@ #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
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).
applicative-quoters currently has no maintainer: if it is broken and you want it to be fixed, then fix it!
Functions and utilities to perform paired and unpaired approximate randomization tests (Noreen, 1989).
The utilities can also draw histograms of the applications of the test statistic to the randomized samples. For support for more file formats, install the package with the -withCairo flag.
This package provides approximate discrete values and numbers.
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.
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.
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.
This package demonstrates how to program simple interactive 3D graphics with OpenGL. It contains two programs, which are both about fractals:
L-systems: generates graphics from Lindenmayer systems (L-systems). It defines a language for L-systems as an embedded DSL. Mountains: uses the generalized Brownian motion to generate graphics that resemble mountain landscapes.
The original versions of these programs were written by Matthias Reisner as part of a student project at the Brandenburg University of Technology at Cottbus, Germany. Wolfgang Jeltsch, who supervised this student project, is now maintaining these programs.
The Acme.LookOfDisapproval module provides one function ಠ_ಠ, which lets you to express your profound disapproval.
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.
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. This is a small fork of the original library named Adaptive, with the same interface but small adaptations to GHC 7.4.
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.
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.
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.
LDAP authentication for Haskell web applications.
At the moment, this module only provides minimal functionality, just enough to support the "distributed-process-azure" package (Azure backend for Cloud Haskell). However, the code is set up in such a way that adding additional functionality should be relatively straightforward; developers who wish to do will probably want to consult the Windows Azure Service Management REST API Reference (http://msdn.microsoft.com/en-us/library/windowsazure/ee460799.aspx).
Show more results