[Haskell-beginners] Re: Accounting Engine in Haskell

Heinrich Apfelmus apfelmus at quantentunnel.de
Wed Jun 16 03:16:14 EDT 2010

Amiruddin Nagri wrote:
> My current project is about making an accounting engine that handles all
> the journal entries, transactions, portfolios etc. The communication
> with the engine is based on simple protocol, the things to be taken
> care of in the order are consistency, handling large data(performance) and
> availability.
> I came across a video lecture by Simon Peyton Jones where he gives an
> example from Financial domain (derivatives etc) to explain how haskell is
> being used and the advantages provided.
> I am interested in knowing if Haskell will be the right fit for my project.
> My requirements are transactional nature, which I believe is one of the
> strengths of functional programming, also handling large data set and being
> available. there is no such requirement for partitioning of data and the
> application is going to be centrally hosted on a single server.

Keep in mind that you have to invest some time in learning Haskell
before you can reap the benefits. For an example of the latter, see also

  Paul Hudak, Mark P. Jones.
  Haskell vs. Ada vs. C++ vs. Awk vs. ...,
    An Experiment in Software Prototyping Productivity

In a sense, you have to learn programming anew.

> AFAIK OCaml and other functional languages are heavily used in financial
> domain, some of the reason are same as features I am looking for.

A key philosophy of Haskell compared to other functional programming
languages like OCaml or Clojure is that Haskell is  pure , i.e.
functions do not have side-effects. Incidentally, purity is the only way
to implement software transactional memory with the proper static

Heinrich Apfelmus


More information about the Beginners mailing list