Also, shouldn't this be

```ruby
instance.public_send(name, *args, &block)
```

instead of

```ruby
instance.public_send(*args, &block)
```