# ZERO: Adding Booleans and Runtime Type Errors to a Tiny Interpreter in Elm

**URL:** <https://discourse.elm-lang.org/t/zero-adding-booleans-and-runtime-type-errors-to-a-tiny-interpreter-in-elm/10890>\
**Category:** Show and Tell\
**Created:** [August 20, 2026, 4:13pm UTC](https://discourse.elm-lang.org/t/zero-adding-booleans-and-runtime-type-errors-to-a-tiny-interpreter-in-elm/10890 "2026-08-20T16:13:41Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![dwayne](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/dwayne/32/5478_2.png) [@dwayne](https://discourse.elm-lang.org/u/dwayne)\
**Post date:** [August 20, 2026, 4:13pm UTC](https://discourse.elm-lang.org/t/zero-adding-booleans-and-runtime-type-errors-to-a-tiny-interpreter-in-elm/10890/1 "2026-08-20T16:13:41Z")

</div>

ZERO adds a zero check predicate. This introduces Boolean values to the language which makes runtime type errors a possibility. Hence, a successful parse no longer guarantees a successful execution.

> **[ZERO: Adding Booleans and Runtime Type Errors to a Tiny Interpreter in Elm |...](https://blog.tinyinterpreters.dev/posts/zero/)**
>
> Add the zero? predicate to a tiny Elm interpreter and see how Boolean values introduce runtime type errors, type checks, and fallible evaluation with Result.

But that isn’t the only possibility.

> **[Make it a Syntax Error | Tiny Interpreters](https://blog.tinyinterpreters.dev/posts/make-it-a-syntax-error/)**
>
> See how grammar and AST design in a tiny Elm interpreter can turn runtime type errors into syntax errors, simplify evaluation, and connect to GADTs.

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex035/uploads/elm_lang/original/1X/50a05e53677a2c3b47776d7abd0f113eb50193a1.png) [@system](https://discourse.elm-lang.org/u/system)\
**Post date:** [August 30, 2026, 4:13pm UTC](https://discourse.elm-lang.org/t/zero-adding-booleans-and-runtime-type-errors-to-a-tiny-interpreter-in-elm/10890/2 "2026-08-30T16:13:59Z")

</div>

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.
