client.
This provides a high-level implementation of a sensitive security
protocol, eliminating a common set of security issues through the use of
the advanced type system, high level constructions and common Haskell
features.
Currently implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, with
only RSA supported for Key Exchange.
WWW: http://github.com/vincenthz/hs-tls
Obtained from: FreeBSD Haskell
and unencrypted private key are supported, but will include PGP
certificate and pkcs8 private keys.
WWW: http://github.com/vincenthz/hs-certificate
Obtained from: FreeBSD Haskell
arbitrarily-sized ByteStrings. While the implementations work, they are
not necessarily the fastest ones on the planet. Particularly key
generation. The algorithms included are based of RFC 3447, or the
Public-Key Cryptography Standard for RSA, version 2.1 (a.k.a, PKCS#1
v2.1).
WWW: http://hackage.haskell.org/package/RSA
Obtained from: FreeBSD Haskell
and uploaded files can be modified either directly via the VCS's
command-line tools or through the wiki's web interface. Pandoc is used
for markup processing, so pages may be written in (extended) markdown,
reStructuredText, LaTeX, HTML, or literate Haskell, and exported in ten
different formats, including LaTeX, ConTeXt, DocBook, RTF, OpenOffice
ODT, and MediaWiki markup.
Notable features include:
* plugins: dynamically loaded page transformations written in Haskell.
* conversion of TeX math to MathML for display in web browsers.
* syntax highlighting of source code files and code snippets.
* Atom feeds (site-wide and per-page).
* a library, Network.Gitit, that makes it simple to include a gitit
wiki in any happstack application.
WWW: http://gitit.net/
Obtained from: FreeBSD Haskell
file store, and modules that instatiate this interface. Currently Git,
Darcs, and Mercurial modules are provided, and other VCSs or databases
could be added.
WWW: http://johnmacfarlane.net/repos/filestore
Obtained from: FreeBSD Haskell
ConfigFile module works with configuration files in a standard format
that is easy for the user to edit, easy for the programmer to work with,
yet remains powerful and flexible. It is inspired by, and compatible
with, Python's ConfigParser module. It uses files that resemble Windows
.INI-style files, but with numerous improvements.
ConfigFile provides simple calls to both read and write config files.
It is possible to make a config file parsable by this module, the Unix
shell, and make.
WWW: http://software.complete.org/configfile
Obtained from: FreeBSD Haskell
where it left off. Happstack-State spares you the need to deal with all
the marshalling, consistency, and configuration headache that you would
have if you used an external DBMS for this purpose. Its component model
makes it easy to compose big applications from smaller reliable parts.
Use event subscription to trigger IO actions and support comet-style or
irc-bot applications.
WWW: http://happstack.com/
Obtained from: FreeBSD Haskell
routing requests, handling query parameters, generating responses,
working with cookies, serving files, and more.
WWW: http://happstack.com/
Obtained from: FreeBSD Haskell
easy to use template-haskell function. Spare yourself the need to
write, run, and maintain code that marshalls your data to/from an
external relational database just for efficient queries. The
happstack-ixset relies on generics and TH to spare you the boilerplate
normally required for such tasks.
WWW: http://happstack.com/
Obtained from: FreeBSD Haskell
* Deriving instances for your datatypes.
* Producing default values of Haskell datatypes.
* Normalizing values of Haskell datatypes.
* Marshalling Haskell values to and from XML.
* Marshalling Haskell values to and from HTML forms.
WWW: http://happstack.com/
Obtained from: FreeBSD Haskell
MonadBase into which generic control operations such as catch can be
lifted from IO or any other base monad. Instances are based on monad
transformers in MonadTransControl, which includes all standard monad
transformers in the transformers library except ContT.
WWW: https://github.com/basvandijk/monad-control/
Obtained from: FreeBSD Haskell
and types in the base package. All symbols are documented with their
actual definition and information regarding their Unicode code point.
They should be completely interchangeable with their definitions.
For further Unicode goodness you can enable the UnicodeSyntax language
extension. This extension enables Unicode characters to be used to
stand for certain ASCII character sequences.
WWW: http://haskell.org/haskellwiki/Unicode-symbols
Obtained from: FreeBSD Haskell
GHC in the ports tree has been updated to version 7.0.4 and the port revision
for all the Haskell ports without version changes are bumped. Other per-port
updates are coming soon.
This update also incorporates some improvements for bsd.cabal.mk that makes
working with Haskell ports even easier.
Thanks ashish@ for the help!
Obtained from: FreeBSD Haskell
package uses bindings to the optimized C implementation of Skein. There
is a high-level interface provided to some of the Skein use cases, and a
low-level interface when Skein has to be used in a different way.
Currently Skein is supported as cryptographic hash function as Skein as
a message authentication code (Skein-MAC).
[1] http://www.skein-hash.info/
WWW: http://patch-tag.com/r/felipe/skein
Obtained from: FreeBSD Haskell
slow hash function. This library uses PBKDF1-SHA256, and handles all the
details. It uses the cryptohash package for speed; if you need a pure
Haskell library, pwstore-purehaskell has the exact same API, but uses
only pure Haskell. It is about 25 times slower than this package, but
still quite usable.
WWW: https://github.com/PeterScott/pwstore
Obtained from: FreeBSD Haskell
(urandom on Linux, CryptAPI on Windows, patches welcome). Users looking
for cryptographically strong (number-theoretically sound) PRNGs should
see the DRBG package too!
WWW: http://trac.haskell.org/crypto-api/wiki
Obtained from: FreeBSD Haskell
pure APIs, with performance close to the fastest implementations available
in others languages.
The implementations are made in C with a haskell FFI wrapper that hide the
C implementation.
WWW: http://github.com/vincenthz/hs-cryptohash
Obtained from: FreeBSD Haskell
RNG, property tests and known-answer tests (KATs) for common algorithms, and a
basic benchmark infrastructure. Maintainers of hash and cipher implementations
are encouraged to add instances for the classes defined in Crypto.Classes.
Crypto users are similarly encouraged to use the interfaces defined in the
Classes module. Any concepts or functions of general use to more than one
cryptographic algorithm (ex: padding) is within scope of this package.
WWW: http://trac.haskell.org/crypto-api/wiki
Obtained from: FreeBSD Haskell
files from an attribute grammar specification.
It is a preprocessor for Haskell which makes it easy to write catamorphisms
(that is, functions that do to any datatype what foldr does to lists).
You can define tree walks using the intuitive concepts of inherited and
synthesized attributes, while keeping the full expressive power of Haskell.
WWW: http://www.cs.uu.nl/wiki/HUT/AttributeGrammarSystem
Obtained from: FreeBSD Haskell
in the ST monad, as well as a type class abstracting their common operations, and
a set of wrappers to use the hash tables in the IO monad.
WWW: http://github.com/gregorycollins/hashtables
Obtained from: FreeBSD Haskell
Features include:
* Automatic, dynamic reloading in response to modifications to configuration
files.
* A simple, but flexible, configuration language, supporting several of
the most commonly needed types of data, along with interpolation of
strings from the configuration or the system environment (e.g.
$(HOME)).
* Subscription-based notification of changes to configuration properties.
* An import directive allows the configuration of a complex application
to be split across several smaller files, or common configuration data
to be shared across several applications.
WWW: http://github.com/mailrank/configurator
Obtained from: FreeBSD Haskell
RFC 4180, "The common Format and MIME Type for Comma-Separated Values
(CSV) Files". This format is used, among many other things, as a lingua
franca for spreadsheets, and for certain web services.
WWW: http://hackage.haskell.org/package/csv
PR: ports/159689
Submitted by: Kaspars Bankovskis <kaspars@bankovskis.lv>
probably caused by an rtld(1) bug in the base system that may not
affect everybody, though.
For affected systems: watch out for the upcoming rtld(1) fix (by
Kostik Belousov) to be committed soon.
provided by the parallel package. The Par monad allows the simple
description of parallel computations, and can be used to add parallelism
to pure Haskell code. The basic API is straightforward: the monad
supports forking and simple communication in terms of IVars. The library
comes with an efficient work-stealing implementation, but the internals
are also exposed so that you can build your own scheduler if necessary.
WWW: http://github.com/simonmar/monad-par
Obtained from: FreeBSD Haskell
performance. (A note on naming: in Greek mythology, Aeson was the
father of Jason.)
WWW: http://github.com/mailrank/aeson
Obtained from: FreeBSD Haskell
optimized for performance critical use, both in terms of large data
quantities and high speed.
The declared cost of each operation is either worst-case or amortized,
but remains valid even if structures are shared.
WWW: http://github.com/tibbe/unordered-containers/
Obtained from: FreeBSD Haskell
precision floating point and text. This library is implemented as
bindings to the C++ double-conversion library written by Florian Loitsch
at Google: http://code.google.com/p/double-conversion/.
The Text versions of these functions are about 30 times faster than the
default show implementation for the Double type. The ByteString versions
are slower than the Text versions; roughly half the speed. (This seems
to be due to the cost of allocating ByteString values via malloc.)
As a final note, be aware that the bytestring-show package is about 50%
slower than simply using show.
WWW: http://github.com/mailrank/double-conversion
Obtained from: FreeBSD Haskell
semigroupoids. A Semigroupoid is a Category without the requirement of
identity arrows for every object in the category.
WWW: http://github.com/ekmett/semigroupoids/
Obtained from: FreeBSD Haskell
Haskell. For more information or to download the latest version, you can visit
the Snap project website.
The Snap HTTP server is a high performance, epoll-enabled, iteratee-based web
server library written in Haskell. Together with the "snap-core" library upon
which it depends, it provides a clean and efficient Haskell programming
interface to the HTTP protocol.
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:
* need a fast and minimal HTTP API at roughly the same level of abstraction
as Java servlets, or
* are interested in contributing to the Snap Framework project.
WWW: http://snapframework.com/
Obtained from: FreeBSD Haskell
and Traversable instance.
Provides a simple data structure mirroring a directory tree on the
filesystem, as well as useful functions for reading and writing
file and directory structures in the IO monad.
WWW: http://coder.bsimmons.name/blog/2009/05/directory-tree-module-released/
Obtained from: FreeBSD Haskell
isolate primitive for parser isolation, and replaces the asynchronous
errors with a user-handleable Either type. Similar to binary in
performance, but uses a strict ByteString instead of a lazy
ByteString, thus restricting it to operating on finite inputs.
WWW: http://hackage.haskell.org/package/cereal
Obtained from: FreeBSD Haskell
to a hash value. This class exists for the benefit of hashing-based data
structures. The package provides instances for basic types and a way to
combine hash values.
WWW: http://github.com/tibbe/hashable
Obtained from: FreeBSD Haskell
with network protocols and complicated text/binary file formats.
This library is basically a translation of the original attoparsec library
to use text instead of bytestrings.
WWW: http://patch-tag.com/r/felipe/attoparsec-text/home
Obtained from: FreeBSD Haskell
search tree and a priority queue. A 'Binding' is a product of a key and
a priority. Bindings can be inserted, deleted, modified and queried in
logarithmic time, and the binding with the least priority can be
retrieved in constant time. A queue can be built from a list of
bindings, sorted by keys, in linear time.
WWW: http://hackage.haskell.org/package/PSQueue
Obtained from: FreeBSD Haskell
Control.Exception, which work in IO, these work in any stack of monad
transformers (from the 'transformers' package) with IO as the base monad.
You can extend this functionality to other monads, by creating an instance
of the MonadCatchIO class.
WWW: http://hackage.haskell.org/package/MonadCatchIO-transformers
Obtained from: FreeBSD Haskell
Storage Service (S3), allowing Haskell developers to reliably store and
retrieve arbitrary amounts of data from anywhere on the Internet.
WWW: http://gregheartsfield.com/hS3/
Obtained from: FreeBSD Haskell
Word128, Word192 and Word256 and Beyond, PKCS5 Padding, Various Encryption
Modes e.g. Cipher Block Chaining all in one package, with HUnit and
QuickCheck tests, and examples.
WWW: http://hackage.haskell.org/package/Crypto
Obtained from: FreeBSD Haskell
be parameterised by a string-like type like: 'String', 'ByteString', 'Text',
etc. Comparisons of values of the resulting type will be insensitive to
cases.
WWW: http://hackage.haskell.org/package/case-insensitive
Obtained from: FreeBSD Haskell
It is a fairly faithful, low level library that implements
most of the MySQL client API.
WWW: https://github.com/mailrank/mysql
PR: ports/157264
Submitted by: Jyun-Yan You <jyyou@cs.nctu.edu.tw>
- Fix lang/ghc/bsd.cabal.mk to depend on devel/hs-haddock for documentation
- Split textproc/hs-xhtml into a separate -docs port (required by haddock)
- Bump PORTREVISION of devel/hs-haskell-platform, depends on textproc/hs-xhtml
Obtained from: FreeBSD Haskell
software by automating the fetching, configuration, compilation and
installation of Haskell libraries and programs.
WWW: http://www.haskell.org/cabal/
Obtained from: FreeBSD Haskell
GHC in the ports tree has been updated to 7.0.3 and all other Haskell ports
are also updated to their corresponding Haskell Platform versions, or latest
versions.
We would like to acknowledge the support of the FreeBSD Donations Team and
Eotvos Lorand University, Faculty of Informatics who contributed to the server
that we used for testing.
We would also like to thank all the testers who tested FreeBSD Haskell ports
and provided their feedback.
PR: ports/156642
Approved by: tabthorpe (mentor)
Obtained from: FreeBSD Haskell
assembled into test groups, run in parallel (but reported in
deterministic order, to aid diff interpretation) and filtered and
controlled by command line options. All of this comes with colored test
output, progress reporting and test statistics output.
WWW: http://batterseapower.github.com/test-framework/
clearing, color output showing or hiding the cursor, and changing the
title. Compatible with Windows and those Unixes with ANSI terminals, but
only GHC is supported as a compiler.
WWW: http://batterseapower.github.com/ansi-terminal
introduces a more general approach for processing XML with Haskell. The
Haskell XML Toolbox uses a generic data model for representing XML
documents, including the DTD subset and the document subset, in Haskell.
It contains a validating XML parser, a HTML parser, namespace support,
an XPath expression evaluator, an XSLT library, a RelaxNG schema
validator and funtions for serialization and deserialization of user
defined data. The library make extensive use of the arrow approach for
processing XML.
WWW: http://www.fh-wedel.de/~si/HXmlToolbox/index.html
bindings to the curses library). Terminfo allows POSIX systems to
interact with a variety of terminals using a standard set of
capabilities.
WWW: http://code.haskell.org/terminfo
each file and directory is associated with a cryptographic hash, for
corruption-resistant storage and fast comparisons).
The supported storage formats include darcs hashed pristine, a plain
filesystem tree and an indexed plain tree (where the index maintains
hashes of the plain files and directories).
WWW: http://hackage.haskell.org/package/hashed-storage
ports which makes possible the direct translation of Cabal package
descriptions to FreeBSD ports. It promises both easier addition and
maintenance for Cabal-based ports.