Functional programming idioms for an expression evaluator | Hacker News Reader