skip to main content
research-article

The performance of the Haskell containers package

Published:30 September 2010Publication History
Skip Abstract Section

Abstract

In this paper, we perform a thorough performance analysis of the containers package, the de facto standard Haskell containers library, comparing it to the most of existing alternatives on HackageDB. We then significantly improve its performance, making it comparable to the best implementations available. Additionally, we describe a new persistent data structure based on hashing, which offers the best performance out of available data structures containing Strings and ByteStrings.

Skip Supplemental Material Section

Supplemental Material

haskell-0935.mov

References

  1. }}S. Adams. Efficient sets - a balancing act. J. Funct. Program., 3 (4): 553--561, 1993.Google ScholarGoogle ScholarCross RefCross Ref
  2. }}G. M. Adelson-Velskii and E. M. Landis. An algorithm for the organization of information. Dokladi Akademia Nauk SSSR, (146), 1962.Google ScholarGoogle Scholar
  3. }}P. Bagwell. Ideal hash trees. Es Grands Champs, 1195, 2001.Google ScholarGoogle Scholar
  4. }}J. Bentley and R. Sedgewick. Ternary search trees. Dr. Dobb's Journal, April 1998.Google ScholarGoogle Scholar
  5. }}J. R. Driscoll, N. Sarnak, D. D. Sleator, and R. E. Tarjan. Making data structures persistent. Journal of Computer and System Sciences, 38 (1): 86--124, 1989. ISSN 0022-0000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. }}J. Goubault. Himml: Standard ml with fast sets and maps. In In 5th ACM SIGPLAN Workshop on ML and its Applications. ACM Press, 1994.Google ScholarGoogle Scholar
  7. }}L. J. Guibas and R. Sedgewick. A dichromatic framework for balanced trees. Foundations of Computer Science, Annual IEEE Symposium on, 0: 8--21, 1978. ISSN 0272-5428. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. }}R. Hinze and R. Paterson. Finger trees: a simple general-purpose data structure. J. Funct. Program., 16 (2): 197--217, 2006. ISSN 0956-7968. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. }}S. L. P. Jones, N. Ramsey, and F. Reig. C--: A portable assembly language that supports garbage collection. In PPDP, pages 1--28, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. }}D. E. Knuth. The art of computer programming, volume 3: (2nd ed.) sorting and searching. Addison Wesley Longman Publishing Co., Inc., Redwood City, CA, USA, 1998. ISBN 0-201-89685-0. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. }}C. Okasaki. Purely Functional Data Structures. Cambridge University Press, July 1999. ISBN 0521663504. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. }}C. Okasaki and A. Gill. Fast mergeable integer maps. In In Workshop on ML, pages 77--86, 1998.Google ScholarGoogle Scholar
  13. }}A. Stepanov and M. Lee. The standard template library. Technical report, WG21/N0482, ISO Programming Language C++ Project, 1994.Google ScholarGoogle Scholar
  14. }}D. A. Terei. Low level virtual machine for glasgow haskell compiler, 2009. URL http://www.cse.unsw.edu.au/pls/thesis/davidt-thesis.pdf.Google ScholarGoogle Scholar
  15. }}A. Tolmach. An external representation for the ghc core language, 2001. URL http://www.haskell.org/ghc/docs/papers/core.ps.gz.Google ScholarGoogle Scholar

Index Terms

  1. The performance of the Haskell containers package

              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 45, Issue 11
                HASKELL '10
                November 2010
                156 pages
                ISSN:0362-1340
                EISSN:1558-1160
                DOI:10.1145/2088456
                Issue’s Table of Contents
                • cover image ACM Conferences
                  Haskell '10: Proceedings of the third ACM Haskell symposium on Haskell
                  September 2010
                  166 pages
                  ISBN:9781450302524
                  DOI:10.1145/1863523

                Copyright © 2010 ACM

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 30 September 2010

                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!