Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6811083
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T20:17:02+00:00 2026-05-26T20:17:02+00:00

What libraries do exist that implement strict data structures? Specifically, I am looking for

  • 0

What libraries do exist that implement strict data structures? Specifically, I am looking for strict lists and strict sets.

Disclaimers:

  1. I am aware of deepseq. It’s very useful, but it adds the overhead of traversing the whole data structure every time you use deepseq (which might be more than once).

  2. I am aware that a strict container-like data structure does not
    ensure everything it contains will be fully evaluated, but the structure
    itself should be strict, e.g.:

    data StrictList a = !a :$ !(StrictList a) | Empty
    

    (Here, the contained elements are in WHNF, and possibly not fully evaluated, but the structure of the list is. For example, infinite lists will be non-terminating values.)

  3. I know about the ‘strict’ package on hackage, but it has a very
    limited set of strict data structures. It does neither contain strict
    lists nor sets.

  4. Writing strict lists myself seems amazingly easy (I love ghc’s
    extensions to derive Functor, Traversable and Foldable, btw.), but it
    still seems like it would be better done in a separate library. And
    efficient implementations of sets don’t seem that trivial to me.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T20:17:03+00:00Added an answer on May 26, 2026 at 8:17 pm

    The containers package (shipped with ghc) will soon have strict Set and Map variants (I’m not sure they will be included with ghc-7.4, but there’s reason to hope). So an efficient implementation of strict Sets and Maps is on the way. Strict lists are, as you say easy, still a package on hackage providing them would be nice, so not everybody has to do it themselves. What else do you need?

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Do any libraries or other development resources exist that can help reduce the effort
What tools/libraries exist that will take a struct and automatically generate an immutable wrapper
What libraries exist for other programming languages to provide an Erlang-style concurrency model (processes,
Do any libraries exist with this functionality? Any recommendations would be useful. Thanks.
Although several thousand Emacs Lisp libraries exist, GNU Emacs, until version 24.1 did not
Do any open source or 'free' libraries exist for Java where i can perform
I would like to know what kind of toolkits, languages, libraries exist for agent-based
What libraries/methods do you know of that can do some basic HTML representation in
Should libraries that the application relies on be stored in source control? One part
Is there any facility in the standard Java libraries that, given a CharSequence, produces

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.