It would be nice to have a $getaddress identifier (could be named anything) that would:
1. For events, such as on TEXT and CTCP, return the address of the user that the server sent for that specific message. (Mostly useful for private messages/CTCP's where the sender/receiver share no common channels).
2. For all other places, it would do a /userhost on the nickname and return the address (the way that the /ignore command does if the target is not in the IAL).
It would be mostly needed to get around the biggest limitation of the Internal Address List: the fact that only entries are stored for users sharing a common channel. As a side effect, it would also allow you to retrieve the address of users that join a channel and it is the first common channel. The syntax should probably be the same or very similar to $address.
An alternative would be to add a property (such as .server) to the $address identifier ($address($nick, 5).server) to perform the functionality described above.