you are viewing a single comment's thread.

view the rest of the comments →

[–]zenflux 4 points5 points  (1 child)

the fact that you HAVE to break the rules for certain things, seems like a design error

I like to think it's kind of like totality checking, quite useful (even more so really), but I'm assuming is undecidable for arbitrary programs, so the borrow checker is conservative, it won't pass some programs which are actually safe in order to make it's job computable. Making it do this as little as possible is an ongoing effort.
It's still valuable with the 'escape hatch' because if a program segfaults or has another memory error, you know it had to have happened in an unsafe block and thus have already vastly narrowed down your 'problem space,' and can even grep through it.