chapel-lang / chapel

a Productive Parallel Programming Language
https://chapel-lang.org
Other
1.78k stars 418 forks source link

Sequential Data Structures #11430

Open LouisJenkinsCS opened 5 years ago

LouisJenkinsCS commented 5 years ago

One thing that I miss fondly from other languages is a standard library of data structures. I don't mean distributed or even concurrent-safe data structures, but a simple Set, Vector, Map, Queue, Stack, etc.

Even though the many Chapel domain variants can fulfill this, it would be nice to have abstractions that wrap them to provide common functionality that users coming from other languages will be familiar with.

As an example, a Set(T) can be a wrapper around a domain(T). A Map(K,V) can be a wrapper around a domain(K) and its associated array mappings to the values V.

bradcray commented 5 years ago

I agree. This issue is logically related to issue #9452 which we're hoping to tackle for this coming release.