FunctionalCollections.jl icon indicating copy to clipboard operation
FunctionalCollections.jl copied to clipboard

Future plans for FunctionalCollections.jl

Open edbaskerville opened this issue 6 years ago • 1 comments

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?

edbaskerville avatar Apr 17 '18 01:04 edbaskerville

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!

https://github.com/noahbenson/Air.jl

noahbenson avatar Oct 20 '21 01:10 noahbenson