Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
MapDB
MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.
kotlinx.collections.immutable it's a kotlin-focused collections library, but it can absolutely work with Java, especially because it extends the standard collection interfaces, so you can simply get an iterator from it
I'm not sure which one is best, but I always wanted to give https://github.com/brianburton/java-immutable-collections and/or https://github.com/lacuna/bifurcan (which, strictly speaking, does not satisfy your requirements, read the description).
I'm not sure which one is best, but I always wanted to give https://github.com/brianburton/java-immutable-collections and/or https://github.com/lacuna/bifurcan (which, strictly speaking, does not satisfy your requirements, read the description).
Anyway, without further ado, I found MapDB (https://github.com/jankotek/mapdb) which does exactly that. Of course, they also provide their own Java collection implementations as well, so I suspect using it with Vavr would be a poor idea, but it is very cool in its own right anyway. Of course, there is also Apache Derby and HSQLDB, and those great options with a long history as well. I haven't played with these in a while though, so I might give them a try again soon for some personal stuff.