'''[http://redis.io/%|%Redis]''', by [SS], is an in-memory data structure store.
** Attributes **
&| Website | http://redis.io |&&| Repository | https://github.com/antirezdis/redis |&
&| Latest release | 6.0.8 |&
&| Release time | 2020-09-10 |&&| License | BSD (3-clause). |&
&| Maintainer | The Redis core team. |&
[SS] http://antirez.com/news/133%|%stepped down%|% as the maintainer of Redis in June 2020.
** See Also **
[StarStore]: A Redis-like API for [Metakit].
** Description **
Redis is an in-memory data structure store that persists on disk. The data model is key-value, but many different kinds of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes. It is somewhat like [Memcached], but persistent.
Redis is implemented in C with a test suite written in Tcl. The test suite includes a Tcl https://github.com/antirez/redis/blob/unstable/tests/support/redis.tcl%|%client library%|%.
The first version of Redis, then called "LMDB" (unrelated to [LMDB]), was itself implemented in Tcl. [SS] has published its source code as a https://gist.github.com/antirez/6ca04dd191bdb82aad9fb241013e88a8%|%Gist%|% on [GitHub].
** Retcl **
[https://github.com/gahr/retcl%|%Retcl] is an event-driven, object-oriented, Redis client library targeting the Tcl scripting language.
Things that Retcl does which are missing in Salvatore's client are:
* Pub/Sub support
* Callbacks specified per subscription pattern / channel
* Configurable results cache
* Global and per-command sync / async modes
* User-defined error handler
** Redis and Jim Tcl **
You can find a basic Redis client library for [Jim Tcl] (which was originally another project of antirez) in [jimhttp]. The library also works in Tcl 8.6 or later.
<<categories>> Caching | Database