I think this might be more performant as you'll only call `to_s` once:

```ruby
@evaluated_message ||= (@message || @block.call).to_s
```

I'll do some benchmarking to see if it makes a difference. Great change overall though :smile: