XPerf
LanguagesElixir

beamperf-lint

Heuristic Elixir + Erlang (BEAM) checker for the four rules below. Line/do-end window scanner — not a full AST pass.

RuleDefaultMessage
be-list-concat-reducehintlist ++ in loop (Elixir/Erlang; Erlang recursive Acc++ supported)
be-io-puts-hotoffIO.puts / io:format in loop
be-map-merge-hothintMap/Keyword.merge / maps:merge in loop
be-enum-map-filter-chainhintchained Enum.map/filter (intermediate list)

Self-dogfood: bash ../scripts/self-lint.sh must stay clean on examples/ (fixtures skipped).

False positives

  • Cold startup / config loops with tiny N (may be OK-idiom)
  • Test / vendored / generated trees should be path-skipped

Removed (jitter 2026-10-22, no slug): BE002 — see evidence/_removed/.

On this page