Skip to content
Core Stateful Data Structures (for Haskell)
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Core Stateful Data Structures


This is a data structures library which hold stateful data structures and stateless data structures for Haskell. This can be used in a wide variety of projects where are included Stack, Queue, Priority-Queue, AVL Tree, Red-Black Tree among other data structures, with two variants, stateless and stateful.


What's in the Archive?

This archive contains a Haskell Cabal package, so you can download it and install it using the cabal command.

Install Instructions

tar xzvf csds.tar.gz
cd csds
cabal install

Build (Only Build) And Test Instructions

tar xzvf csds.tar.gz
cd csds
cabal clean
cabal configure --enable-tests
cabal build
cabal test


Contributions are always welcome, please follow these steps to submit your changes:

  1. Install git from
  2. Create a github account on
  3. Set up your git ssh key using these instructions
  4. Open the Apache Log Rev project home page on github on
  5. Click the "Fork" button, this will get you to a new page: your own copy of the code.
  6. Copy the SSH URL at the top of the page and clone the repository on your local machine
  7. The oficial "development" branch is "devel", so you should place your pull requests there.
git clone csds
  1. Create a branch and switch to it
cd csds
git branch my-csds-branch
git checkout my-csds-branch
  1. Apply your changes, then commit using a meaningful comment, that's the comment everybody will see!
git add .
git commit -m "Fixing issue 777, bleh bleh bender bleh"
  1. Push the changes back to github (under a different branch, here myfeature-patch)
git push origin my-csds-branch
  1. Open your forked repository on github at
  2. Click "Switch Branches" and select your branch (my-csds-branch)
  3. Click "Pull Request"
  4. Submit your pull request to CSDS Developers


We offer limited support at


Licensed under the BSD3 License


Copyright(c) 2012 Daniel Molina Wegener

Something went wrong with that request. Please try again.