the package chewingum contains two main programs:
- base62
- chew
They have been implemented in perl.
Base62 has been coded in c++ too.
chew has been written to shorten long decimal integer numbers into base62 strings.
It's not a mere base conversion, because it doesn't use arithmetic inside its logic.
In this way it can convert very long numbers into strings quickly,
without overflows.
For example if I want to share an id using an url, this will make the url shorter.
the base62 program has been written to encode/decode files
into this format.
The syntax is similar to the popular base64 command line program.
Inside the package there is a working c++ version of the base62 algorithm.
the sources are inside the package.
Note that from release 2.0.0 the algorithm is different from the one
used before. If you have coded a file using base62 < 2.0.0 DO NOT USE base62 >= 2.0.0 to decode it.
The 2.0.1 release has a new algorithm for chew, we have a compat flag
Features
- same syntax of base64
- the encoded size is comparable to base64
- useful for shorten id and make them url safe