StarStore

StarStore

StarStore is a redis-like api for Metakit implemented in TclOO and intended to be used in the Tcl >=8.6 StarKit ecosystem. StarStore v0.1 supports nearly all redis commands for strings, lists, sets, zsets, & hashes, as well as redis-like expiry. No documentation yet, but the docs available for redis may be used as a reference. Think "Redis in a can".

Redis, developed by this wiki's own SS, is a "data-structure server" with a brilliant tcl-like api & incredible performance characteristics (and getting better all the time). Using Redis is entire preferable to using StarStore, except in the case where you can't run a real server (like in a little starkit based app).

The planned evolution of starstore is to implement the remaining redis command set where possible (ZUNIONSTORE, ZINTERSORE, AUTH, SORT...), include support for Redis' transaction system (awaiting an improved Aspect support lib for TclOO), and extend/refine the api in ways that make sense in a tcl-only environment (or are just made simple in a Starkit/Tcl environment, such as adding glob filtering on the results of many commands).

StarStore was my first foray into TDD & TclTest, so the testing code improves over time (i hope).

Fossil Repo Here (404)

Special thanks to Colin for the extremely useful Debug lib, DKF for Aspects for TclOO, and SS, of course, for Redis.

RT bcharder @jsuntheimer just change your nick to @IWantToBeAntirez already.

bch: zomg twitter runs on the tclers wiki!!1! For those outside the this particular twittersphere, @bcharder is bch, @jsuntheimer is jblz, and @antirez is ss.


SEH: There's no port of redis to Windows, so the idea of having a Win32-compatible "redis lite" is another reason this project is well-worthwhile.