It's why we are planning on using Ada/SPARK2014 for our show control automation software and rewriting C drivers on the hardware being used for the show action equipment in SPARK2014. Nothing else is close at the moment. Looking forward to more SHUA!
I'm currently reviving an old project of mine to rewrite Unix core tools in Ada. It's like a dress rehearsal: if I can write simple stuff like cp, ls, cat, etc. in this cantankerous but powerful and safe language, I'll be set up to write more complicated stuff in it.
It seems the root issue is atrocious sha1 hash calculation interface (openssl) not the language per se. What possible errors sha1 could return while updating a hash state from a byte buffer with a known size?