sentence: type-based alias analysis if the language being compiled is type safe , the compiler 's type checker is correct , and the language lacks the ability to create pointers referencing local variables , ( such as ml , haskell , or java ) then some useful optimizations can be made .