{"slug": "iex", "name": "iex", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 3, "commenters": 3, "warners": 0, "score": 2.686, "rising": 0.35, "first": "2025-11-10", "latest": "2026-10-06", "why": "alongside Picolisp pil + and Elixir iex it's one of the earliest tools I install on a new system", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 0, "compare": 0, "warn": 0}, "spark": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1], "listed": true, "loved": [], "caveat": "", "short_quote": "alongside Picolisp pil + and Elixir iex it's one of the earliest tools I install on a new system", "kind": "", "icon": true, "domain": null, "github_repo": "github.com/iex-rs/iex", "official_url": "https://hexdocs.pm/iex/IEx.html", "pricing": "", "aliases": ["iex", "IEx"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 799747297, "item_id": 49984206, "url": "https://news.ycombinator.com/item?id=49984206", "by": "innocentoldguy", "date": "2026-10-06", "version": null, "stance": "recommend", "quote": "has the fantastic IEx REPL", "excerpt": "I use Rust and prefer Elixir over Gleam because Elixir has Lisp-style macros (Gleam doesn't), uses OTP directly, has the fantastic IEx REPL (Gleam has no counterpart), and has Phoenix, the best web framework I've ever used.", "context": "Rust user who prefers Elixir", "use_case": "REPL", "switched_from": "", "story": "Gleam doesn't compile to Erlang source anymore"}, {"id": 771991969, "item_id": 48249498, "url": "https://news.ycombinator.com/item?id=48249498", "by": "cess11", "date": "2026-05-23", "version": null, "stance": "recommend", "quote": "alongside Picolisp pil + and Elixir iex it's one of the earliest tools I install on a new system", "excerpt": "I like the arrays, they make it feel like a bit of a low level language and there are some weird tricks one can do with them. As for class property behaviour, I kind of get nervous if my properties or the constructor don't enforce default values I can then fit into downstream logic. One of the best things with PHP is PsySH, or \"Tinker\" as the laravelists call it. It's not a REPL in the Common Lisp sense, but it is qu", "context": "", "use_case": "", "switched_from": "", "story": "PHP's Oddities"}, {"id": 734126800, "item_id": 45882925, "url": "https://news.ycombinator.com/item?id=45882925", "by": "aw1621107", "date": "2025-11-10", "version": null, "stance": "recommend", "quote": "it can indeed result in better performance than", "excerpt": "iex [0] might be potentially relevant here. From what I understand it basically implements this bit: > Finally, another option is to say that -> Result<T, E> behaves exactly as -> T ABI-wise, no error affordances whatsoever. Instead, when returning an error, rather than jumping to the return address, we look it up in the side table to find a corresponding error recovery address, and jump to that. Stack unwinding! And", "context": "", "use_case": "error handling library", "switched_from": "", "story": "Error ABI"}]}], "caveats": [], "who": [{"by": "innocentoldguy", "context": "Rust user who prefers Elixir", "url": "https://news.ycombinator.com/item?id=49984206", "date": "2026-10-06"}], "tags": [], "use_cases": ["repl", "error handling library"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49975619", "title": "Gleam doesn't compile to Erlang source anymore", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48199314", "title": "PHP's Oddities", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=45871688", "title": "Error ABI", "mentions": 1}], "sentiment_by_month": {"2025-11": {"recommend": 1}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {}, "2026-05": {"recommend": 1}, "2026-06": {}, "2026-07": {}, "2026-08": {}, "2026-09": {}, "2026-10": {"recommend": 1}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 799747297, "item_id": 49984206, "url": "https://news.ycombinator.com/item?id=49984206", "by": "innocentoldguy", "date": "2026-10-06", "version": null, "stance": "recommend", "quote": "has the fantastic IEx REPL", "excerpt": "I use Rust and prefer Elixir over Gleam because Elixir has Lisp-style macros (Gleam doesn't), uses OTP directly, has the fantastic IEx REPL (Gleam has no counterpart), and has Phoenix, the best web framework I've ever used.", "context": "Rust user who prefers Elixir", "use_case": "REPL", "switched_from": "", "story": "Gleam doesn't compile to Erlang source anymore"}, {"id": 771991969, "item_id": 48249498, "url": "https://news.ycombinator.com/item?id=48249498", "by": "cess11", "date": "2026-05-23", "version": null, "stance": "recommend", "quote": "alongside Picolisp pil + and Elixir iex it's one of the earliest tools I install on a new system", "excerpt": "I like the arrays, they make it feel like a bit of a low level language and there are some weird tricks one can do with them. As for class property behaviour, I kind of get nervous if my properties or the constructor don't enforce default values I can then fit into downstream logic. One of the best things with PHP is PsySH, or \"Tinker\" as the laravelists call it. It's not a REPL in the Common Lisp sense, but it is qu", "context": "", "use_case": "", "switched_from": "", "story": "PHP's Oddities"}, {"id": 734126800, "item_id": 45882925, "url": "https://news.ycombinator.com/item?id=45882925", "by": "aw1621107", "date": "2025-11-10", "version": null, "stance": "recommend", "quote": "it can indeed result in better performance than", "excerpt": "iex [0] might be potentially relevant here. From what I understand it basically implements this bit: > Finally, another option is to say that -> Result<T, E> behaves exactly as -> T ABI-wise, no error affordances whatsoever. Instead, when returning an error, rather than jumping to the return address, we look it up in the side table to find a corresponding error recovery address, and jump to that. Stack unwinding! And", "context": "", "use_case": "error handling library", "switched_from": "", "story": "Error ABI"}]}