My impression was that the dialyzer is not as accurate as static typing, which means that it sometimes does not report an error, although it should.
On the plus side, if the dialyzer complains, it's almost always my fault. Most often, errors usually occur due to the wrong typepec.
So, although I don't think dialyzer is as good a tool as static typing, it still helps. In particular, I find typespecs types very useful as they can serve as documentation. I recently switched work, and the project I joined is an Erlang complex project. Thanks to type specifications, it was easy to find a way around the code base.
- typespecs . () , , . , , dialyzer, , .