At popular request, this post tries to explain the LZ4 inner workings, in order to allow any programmer to develop its own version, potentially using another language than the one provided on Google Code (which is C). The most important design principle behind LZ4 has been simplicity. It allows for an easy code, and fast execution. Let's start with the compressed data format. The compressed block