3 ms·
You're assuming that the JVM is secure. But yes, good point. Although I'd argue that a truly strong type system should also catch problems with pointers. The c
by TheLoneWolfling 13y ago
You're assuming that the JVM is secure. But yes, good point.
Although I'd argue that a truly strong type system should also catch problems with pointers. The compiler should try to prove that any pointer access/arithmetic can or cannot cause undefined behavior - if it could cause undefined behavior, emit a compiler error, if it cannot prove that it won't cause undefined behavior, emit a warning and insert a runtime check.
(Still have the underlying "unsafe" functions. But group them into part of the standard library as an "unsafe" package.)
- iopq 13y agoThat's what Rust does. Its type system prevents all memory and concurrency errors. But to be able to have a self-hosting compiler (and to be able to write an OS in it) there's also `unsafe` blocks.