simerplaha / SwayDB

Persistent and in-memory key-value storage engine for JVM that scales on a single machine.
https://swaydb.simer.au
Apache License 2.0
293 stars 16 forks source link

Benchmark the cost of using `Bag` for wrapping effects in all data types #340

Open simerplaha opened 2 years ago

simerplaha commented 2 years ago

Overview

All data-types use BAG[_] for allowing any effect type to be used by providing a Bag implementation (Eg: ZIO or Try).

Task

If there is a cost for using BAG[_] then it should be removed and target implementations for each effect type should be generated via macros or just create copies from a template implementation (easier to debug).

Or just support None (no effect type), Try & Future and have x-interop-* projects provide transformations for each.