Hacker News new | ask | show | jobs
by seer 898 days ago
Hmm I’ve started doing some elixir as a side project and coming from typescript honestly I’ve found it a bit “dumb” and slow at the beginning. It didn’t allow you to write precise enough types, and would complain a lot about weird things.

As the project became more complex though, and I learned more about elixir, dialyzer became progressively more useful.

Most of the time when I chase a weird type error in TypeScript it turned out that the types were not correct enough and had to be fixed.

When I’m chasing weird dialyzer complaints, most of the time I discover that it was actually a bug in my code. Honestly sometimes I’m astonished how it can reason about very complex things so well. It’s just the error messages are usually very confusing, but with experience that kinda solves itself.

The difference to me so far has been that dialyzer finds bugs in my code, rather than in my types, which is quite nice.

If they make the built-in type system of elixir faster and with better error messages, I’ll be a very happy camper.