skip to main content
research-article

Experience report: Haskell in the 'real world': writing a commercial application in a lazy functional lanuage

Published:31 August 2009Publication History
Skip Abstract Section

Abstract

I describe the initial attempt of experienced business software developers with minimal functional programming background to write a non-trivial, business-critical application entirely in Haskell. Some parts of the application domain are well suited to a mathematically-oriented language; others are more typically done in languages such as C++.

I discuss the advantages and difficulties of Haskell in these circumstances, with a particular focus on issues that commercial developers find important but that may receive less attention from the academic community.

I conclude that, while academic implementations of "advanced" programming languages arguably may lag somewhat behind implementations of commercial languages in certain ways important to businesses, this appears relatively easy to fix, and that the other advantages that they offer make them a good, albeit long-term, investment for companies where effective IT implementation can offer a crucial advantage to success.

Skip Supplemental Material Section

Supplemental Material

experiencereporthaskellintherealworldwritingacommercial.mp4

References

  1. Friedman, Daniel P., and Felleisen, Matthias, The Little Schemer, Fourth Edition. MIT Press, 1996. ISBN-13: 978-0-262-56099-3.Google ScholarGoogle Scholar
  2. The Glasgow Haskell Compiler. http://www.haskell.org/ghc/Google ScholarGoogle Scholar
  3. Graham, Paul, "Beating the Averages", from Hackers and Painters O'Reilly, 2004, ISBN-13: 978-0-596-00662-4. Also available from http://paulgraham.com/avg.htmlGoogle ScholarGoogle Scholar
  4. Hudak, Paul, The Haskell School of Expression: Learning Functional Programming Through Multimedia. Cambridge University Press, 2000. ISBN-13: 978-0-521-64408-2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Hutton, Graham, Programming in Haskell. Cambridge University Press, 2007. ISBN-13: 978-0-521-69269-4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Objective Caml. http://caml.inria.fr/ocaml/index.en.htmlGoogle ScholarGoogle Scholar
  7. Ruby Programming Language. http://www.ruby-lang.org/en/Google ScholarGoogle Scholar
  8. The Scala Programming Language. http://www.scala-lang.org/Google ScholarGoogle Scholar
  9. Duncan Coutts, Don Stewart and Roman Leshchinskiy, "Rewriting Haskell Strings." http://www.cse.unsw.edu.au/ dons/papers/CSL06.htmlGoogle ScholarGoogle Scholar

Index Terms

  1. Experience report: Haskell in the 'real world': writing a commercial application in a lazy functional lanuage

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM SIGPLAN Notices
              ACM SIGPLAN Notices  Volume 44, Issue 9
              ICFP '09
              September 2009
              343 pages
              ISSN:0362-1340
              EISSN:1558-1160
              DOI:10.1145/1631687
              Issue’s Table of Contents
              • cover image ACM Conferences
                ICFP '09: Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
                August 2009
                364 pages
                ISBN:9781605583327
                DOI:10.1145/1596550

              Copyright © 2009 ACM

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 31 August 2009

              Check for updates

              Qualifiers

              • research-article

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!