Comment by pizlonator
1 year ago
You get all the way to memory safety if you use Fil-C and you don’t have to rewrite code.
I don’t think it’s reasonable to expect compilers not to break conservative stack scanning. Fil-C uses accurate stack scanning instead, and it’s properly wired into the compiler and the rest of Fil-C’s type system.
Yes but from your web page about it, Fil-C does things like allocate all local variables on the heap and runs code 50x slower. Bounds checks+GC don't impose such a high level of overhead.
And my web page about it also says that I haven’t optimized it yet.
It’s not necessary to allocate all locals in the heap and have 50x overhead. It’s that way now because I’m only just getting started.
Bounds checks + an unsound conservative GC isn’t worth the overhead it imposes since it still leaves your code memory unsafe.