LLMs and Elixir: Windfall or deathblow?

LLMs as Coding Aid for Elixir and Other Languages

  • Several commenters describe LLMs as a “windfall” for working in new or niche languages (Crystal, Elixir, Rust, Go), especially to fill library gaps and explain concepts.
  • Elixir/Phoenix is seen as particularly well-suited: low boilerplate, functional style, and easy-to-verify small code increments make human review of LLM output less painful than in large, side‑effectful Python/JS stacks.
  • Others report that LLMs still frequently get stuck, hallucinate fixes, or degrade into type‑casts and loops, especially with React/React Native or niche ecosystems.

Safety, Crashes, and the BEAM Runtime

  • Pro‑Elixir comments highlight that BEAM’s process isolation and supervision mean generated code can fail without taking down the whole system, reducing firefighting compared to Python or similar.
  • Critics counter that “practically never crash” is overstated: NIFs can crash the VM, memory/storage exhaustion and bad architecture still apply, and Erlang/Elixir provide fault containment, not immunity.
  • There’s partial agreement that BEAM is robust but not unique in preventing full machine crashes for web workloads.

Is Elixir General-Purpose or Specialized?

  • Long subthread argues whether Elixir is truly general purpose.
  • Many say the language, history, and ecosystem are heavily biased toward long‑running services/servers; it’s awkward for CLIs, games, CPU‑heavy tasks, or some embedded work. VM startup time and C integration are recurring pain points.
  • Others emphasize that you can build CLIs, compilers, or games; they distinguish theoretical generality from practical applicability and note “BEAM for everything” is not a mainstream stance.

Designing Languages and Docs for LLMs

  • Core insight noted: languages and ecosystems now need to “market themselves” to LLMs via LLM‑friendly docs (e.g., terse usage rules) and consistent patterns.
  • Some worry this becomes the new SEO/adtech game, skewing evolution toward what models like rather than what humans need.
  • Ideas surface for LLM‑optimized languages: strict and expressive type systems, non-ambiguous syntax, high information density; Moonbit, Gleam, Rust, Elm are mentioned.

Experiences, Tools, and Models

  • Positive reports for Elixir with Cursor, Windsurf, Claude, and Sonnet; Gemini is often described as weaker and JS/React‑biased.
  • Tools like tidewave (LLM with iex) and Phoenix.new’s agentic generator show LLMs running their own REPL/debug loops and building Phoenix apps from plans.
  • Some developers claim weeks of work fully delegated to LLMs (with review), and use them as tutors by having them generate code and tests, then learning by fixing failures.

Craft, “Vibe Coding,” and Jobs

  • There’s tension between people who see “vibe coding” as abdicating craft and others who see it as just another tool trade‑off.
  • A few argue that people with no real tech preferences or depth are unlikely to displace experienced engineers, even with LLMs.