Hacker ApprovedDepartments

Dialyzer

Shares rank 10 of 12 static analyzers by recommenders

Recommended as a useful part of Elixir and Erlang tooling for quick feedback loops. Critics say it rarely catches what the compiler misses and that checks can be slow.

Recommended as a useful part of Elixir and Erlang tooling for quick feedback loops. Critics say it rarely catches what the compiler misses and that checks can be slow.

11 people gave an opinion

recommend it
5
criticize it
6
approval share
45%
Each figure is one person. RecommendsCriticizes

Recommended in 4 of 13 months

  1. November 2025: not recommended
  2. December 2025: not recommended
  3. January 2026: not recommended
  4. February 2026: recommended
  5. March 2026: recommended
  6. April 2026: not recommended
  7. May 2026: recommended
  8. June 2026: recommended
  9. July 2026: not recommended
  10. August 2026: not recommended
  11. September 2026: not recommended
  12. October 2026: not recommended
  13. November 2026: not recommended (month in progress)

Why it doesn’t carry the badge

  • 5 people recommend itNeeds 10 or more, not met.
  • 0.8 recommenders for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 4 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Strong part of Elixir tooling

    “The tooling for inspecting and enforcing style (tidewave, credo, dialyzer, Dan's "vibe" ecosystem tools) is far beyond what I see in other ecosystems”

    Comment from 26 May 2026 in “Use Boring Languages with LLMs”

    “The combination of credo, dialyzer, and tidewave means you have an iterative feedback loop”

    Comment from 8 Feb 2026 in “Show HN: Craftplan – Elixir-based micro-ERP for small-scale manufacturers”

What people warn about

Each mark is one comment

  • Not enough type safety

    “I would spend way too much time fighting types in elixir with dialyzer”

    Comment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

    “The lack of types is not fixed by having a type spec and dialyzer.”

    Comment from 8 Jan 2026 in “An Honest Review of Go”

    “I would have loved something a bit more complex than dialyzer”

    Comment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”
  • Rarely catches what compiler misses

    “as the compiler usually catches things before Dialyzer would as it's not built into the compiler”

    Comment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

    “I haven't had it catch something before the compiler in a while.”

    Comment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

Other static analyzers people recommend

The four most recommended other static analyzers, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

Dialyzer compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
zizmor19195%6—Approved
Semgrep141058%7——
clang-tidy14478%6—Approved
PHPStan110100%7—Approved
DialyzerThis page5645%4——
See all 12 static analyzers, ranked

What people said

All 13 comments that mention it, newest first. Each links to the original comment.

“I haven't had it catch something before the compiler in a while.”

CriticizesComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“as the compiler usually catches things before Dialyzer would as it's not built into the compiler”

MixedComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“there is a significant limitation compared to plain Erlang”

MixedComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“I would have loved something a bit more complex than dialyzer”

CriticizesComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“very long check times (tens of seconds up to minutes)”

CriticizesComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“Dialyzer fails to successfully report errors when there are circular dependencies.”

CriticizesComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“Not the best, but far better than what any other dynamic language had at that time”

MixedComment from 3 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“I haven't found dialyzer terribly useful.”

CriticizesComment from 3 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“The tooling for inspecting and enforcing style (tidewave, credo, dialyzer, Dan's "vibe" ecosystem tools) is far beyond what I see in other ecosystems”

RecommendsComment from 26 May 2026 in “Use Boring Languages with LLMs”

“stuff like dialyzer and set-theoretic types”

RecommendsComment from 18 Mar 2026 in “Type systems are leaky abstractions: the case of Map.take!/2”

“The combination of credo, dialyzer, and tidewave means you have an iterative feedback loop”

RecommendsComment from 8 Feb 2026 in “Show HN: Craftplan – Elixir-based micro-ERP for small-scale manufacturers”

“The lack of types is not fixed by having a type spec and dialyzer.”

CriticizesComment from 8 Jan 2026 in “An Honest Review of Go”

“I would spend way too much time fighting types in elixir with dialyzer”

CriticizesComment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.