ImperativeHaskell: A library for writing Imperative style haskell.

[ control, development, embedded, gpl, language, library ] [ Propose Tags ]

A monad that uses GADTs and continuations to replicate what it is like to program in an imperative language like C, Java or Go with "return", "for", "break", "continue", and mutable references.

In Version 2:

  • Single return function: return'

  • A Go language style defer' primitive.

  • Proper compiler errors when break' and continue' are used incorrectly

  • Note: Version 2 has a very different internal structure from version 1, and thus there will likely be type signature conflicts.

For more information see:


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.2.0.0, 0.2.0.1, 1.0.0.0, 1.0.0.1, 1.1.0.0, 1.1.0.1, 1.1.1.0, 2.0.0.0, 2.0.0.1
Dependencies base (>=4.0 && <5.0), mtl (>=2.0 && <3.0), template-haskell (>=2.6 && <3.0) [details]
License GPL-3.0-only
Author Matthew Mirman
Maintainer Matthew Mirman <mmirman@andrew.cmu.edu>
Category Control, Embedded, Development, Language
Home page https://github.com/mmirman/ImperativeHaskell
Source repo head: git clone git://github.com/mmirman/ImperativeHaskell.git
Uploaded by MatthewMirman at 2012-06-07T16:21:36Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 9709 total (28 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for ImperativeHaskell-2.0.0.1

[back to package description]
Just proof that Haskell' can be truly imperative, and even look like C.

For some background, look in http://kormacode.blogspot.com/2011/11/c-style-haskell_10.html

For an example usage, look in Main.hs.