Challenge 2: A Binding to undefined That's Never Forced — Possible Solution ==================================================================== GHCi session: Prelude> let result = let danger = undefined in 42 Prelude> result 42 Explanation: `danger` is bound to undefined, a value that would throw an exception the instant anything actually forces it. But the body of the let expression -- the final `42` -- never references `danger` at all. Because Haskell only evaluates what's actually demanded, and nothing ever demands `danger`'s value, the binding simply sits there, unforced, forever. Evaluating `result` only needs to know the value of `42` itself, which requires no knowledge of `danger` whatsoever, so the expression succeeds cleanly with no error at all. WHY THIS WORKS AS AN ANSWER ------------------------------ This reproduces the chapter's own `let x = undefined in 5` example with a renamed binding for clarity, confirming that a completely unused undefined binding never surfaces as an error, exactly the bottom-never-detonating behavior the chapter describes.