Let me be clear: could a C programmer understand and effectively use Genera OS without significant, paradigm-altering changes in mindset about programming? Probably not. So, I don&#x27;t include LISP in a C-replacement discussion given they&#x27;re in two, different ballparks. And LISP is universally hated by almost all programmers outside its own fans and those Clojure is attracting. That&#x27;s despite the fact that I promote its advantages elsewhere where they might get take-up. ;)<p>Now, back to imperative languages with some familiarity to C programmers. For allocation failure, some languages provide exceptions to handle such things but I usually recommend allocating what you need at the beginning and being sure you&#x27;ll know your max for later. Do the checks plus reserve early so you worry less from then. Shouldn&#x27;t be a problem. It&#x27;s work to keep in mind but straight-forward.<p>Far as string-handling, there&#x27;s safe libraries and approaches to it. We just use them with whatever performance or syntax hit we get if our language doesn&#x27;t do it inherently safe. The issues with it are why I recommend prefix strings for clean-slate stuff over null-terminated. If you can get away with it. Having separate types for the two can highlight interface errors.