Show HN: I built an embeddable Unicode library with MISRA C conformance

hgs3 | 117 points

On https://railgunlabs.com/unicorn/manual/misra-compliance/, I think you will want to fix a typo in

  1.2    Required    Compliant (verified by compiling with Clang's -pdentic flag)
                                                                   ^^^^^^^^
Or am I too pedantic?
Someone | 6 days ago

This is commercial only. Free and small is my safeclib, which does about half of it. ICU is not usable on small devices, and also pretty slow. It's much faster to use precomputed tables per algorithm, such as here or in safeclib. libunistring is also extremely slow. This was tried for grep and failed.

rurban | 6 days ago

I don’t get the whole MISRA requirement that functions should only have one exit point. Honestly, nobody has been able to explain why this is important, other than it’s a historical anomaly inherited from FORTRAN. (Which was actually for a good reason)

chris_wot | 6 days ago

This is not a comment about open/closed-source software and/or licensing models.

Projects like this never fail to impress me vis-a-vis source obfuscation. The 'generate.pyz' is an interesting twist on the usual practice.

rubicks | 6 days ago

There is not much to show if I can’t read the source code.

__turbobrew__ | 6 days ago

This looks interesting. Most embedded project I know use ICU/libicu for their unicode needs. As a potential customer I would like to know how does it compare against ICU for performance and code size. Why should I switch?

kiritanpo | 6 days ago

My comment is not directly related to the particular project which is impressive, but more to its presentation. If you go to the author's website, you will find neat to-the-point manuals and other useful information. This is what I call the real Web 3.0. Simple and to the point. Also the main company page is humorous in a good way, about the mad scientist etc.

garganzol | 6 days ago

Since MISRA is targetted at Automotive, as a software dev in the automotive space I would suggest adding the note that this is able to run on POSIX compliant OSes like QNX :)

If you would like to chat, hit me up.

biosboiii | 6 days ago

It uses a privative license if you're wondering.

tocariimaa | 6 days ago
[deleted]
| 6 days ago

Nice!

sushidev | 6 days ago