You can use Unicorn for non-commercial use [1], but yes, for commercial use you need to buy a license.
> It's much faster to use precomputed tables per algorithm
You're absolutely right about using precomputed tables per algorithm. That is the secret to the library's speed.
> Free and small is my safeclib, which does about half of it.
I like safeclib! It's nice to hear from the author. It's worth distinguishing that safeclib is a safer string library whereas Unicorn is a Unicode algorithms library, not a string library.
[1] https://github.com/railgunlabs/unicorn/blob/master/LICENSE
So every string library needs at least a compare function to find strings, with all the variants of same graphemes. Which leads us to NFC normalization for a start. Upcase tables and wordlength tables are also needed.
Is it me or does this feel a bit weird? It seems like you're using the comments section here to self-advertise for exposure.
I read it like — "businesses can't use this without paying the OP, however, if you're a business you can get 50% of the way there by using _my_ library, and you don't even have to pay me!". It comes off incredibly rude to try to undercut the OP like this.
> the right to use, copy, modify, merge, publish and distribute the Software [as long as you're not selling it or derivatives of the Software]
seems to line up with exactly what the folks involved in Free Software originally wanted — the ability to fix, patch, debug software that runs on their systems. I also think it's incredibly important to have non-commercial clauses given that the vast majority of technical infrastructure in the modern world is built on FOSS, all while the companies give nothing back and developers of FOSS starve.
If Valve can dump hundreds of developers into FOSS and within, what, 7 years? bring Linux almost to parity with and performance of Windows for gaming, imagine what would happen if FOSS developers were actually given funding!