https://github.com/sonalys/poc-compression
POC for a compressing algorithm in Go
https://github.com/sonalys/poc-compression
Last synced: 4 days ago
JSON representation
POC for a compressing algorithm in Go
- Host: GitHub
- URL: https://github.com/sonalys/poc-compression
- Owner: sonalys
- Created: 2024-01-02T12:43:52.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-01T08:19:41.000Z (over 2 years ago)
- Last Synced: 2025-02-21T11:50:21.406Z (over 1 year ago)
- Language: Go
- Size: 188 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This is a POC for a compression algorithm.
The logic behind it was told to me by my cats in my dreams, and I don't care how efficient it is, please leave me alone.
We need to be careful with compressed buffers, segments and segment positions, since coordinates needs to represent the final position in the decompressed buffer.
First we remove all repetitions, since they are extremely easy to detect and compact, while adding complexity for other layers.
Then we deduplicate similar groups of repetitions, merging their coordinates.
Then we use repetition groups, in which we detect the same pattern repeating many times, and we try to grow these groups as large
as possible.