Well here is an example that I actually saw someone using (he used a dll), he was using an ON ^*:JOIN because he wanted the format to be

[join/#chan] nick (user@host) [IP: ip]

Now sure you can trigger a /dns, and wait for ON DNS, but it would be a lot nicer if you could just $dns(the_users_host)

But, in addition to what was suggested, I'd like to see it go a bit further, IE, $dns(host/ip,N) so if it resolves to multiple IPs you can get a list of all of them (N = 0 would give the # of ips).