FunctionalCollections.jl
FunctionalCollections.jl copied to clipboard
Future plans for FunctionalCollections.jl
I would love Julia to have a high-performance, actively maintained immutable collections library, but it looks like this project isn't under active development.
Are there any plans for FunctionalCollections.jl going forward?
I realize this is possibly a dead thread, and I'm not even 100% sure of the current status of FunctionalCollections.jl
, but FWIW, I've written and currently maintain a library called Air.jl
that includes a set of persistent collections similar to the ones here as well as an STM system similar to the one in clojure. I haven't benchmarked them all carefully, but informally they are very performant—similar in performance to Julia's native Dict
/Array
/Set
types for get
/getindex
and similar to clojure's data structures for most other operations.
The code for Air
is all new, and the syntax is a bit different than FunctoinalCollections
—mostly in that it's designed to imitate the native Julia types closely (so, for example, it includes push(dict, k=>v)
and setindex(dict, v, k)
but not assoc(dict, k, v)
, at least currently). Anyway, it may be a workable alternative for anyone who lands here—I intend to maintain it for the foreseeable future, and I'd love to have more eyes on it!