I previously posted that I was planning Cloje 0.2 to have a variety of new features, and aiming to release it in mid to late June. However, for a number of reasons, I am reducing the scope of version 0.2, and moving the target release date to July 5.
Cloje 0.2 will definitely include the hash-set data structure, and a library of set operations based on clojure.set, as previously written.
I am also working on establishing an API for converting data between Cloje and host-language types. At the moment, Cloje mostly uses the host language’s native data types, so the API will mostly do nothing, but it’s important to have the API available early on. For one thing, it allows users to write forward-compatible code that interoperates with the host language, and will continue to work even if I change how Cloje data structures are implemented. But more importantly, it forces me to think about how host-interop will work, so that potential issues will come to light early in the design process.
Those are the two main features planned for 0.2. It doesn’t feel like much compared to 0.1, to be honest. I considered delaying the release even further so I could put more into it, but that is a perilous and often self-defeating strategy. I think it will be better for the project, and for my own motivation, to have a consistent release schedule, even if that means more modestly sized releases.
Even so, Cloje 0.2 will be an especially small release. This is mainly because I spent the majority of my Cloje time over the past 6 weeks doing research and thinking and planning about open source project management, particularly as it relates to diversity and inclusivity. More writing about that, and announcements of project policy and efforts along those lines, is forthcoming.