I think something of that sort would be useful. You mentioned a valid example where this would be needed. Personally, I'd like to see it implemented in a slightly different way: the ability to use negative numbers, like we do in $*tok identifiers:
Would read the 2nd line from the end
What would that do? Well, I'm not sure, but I guess it would be nice if it made $read() search backwards for lines matching *blah*, starting the search from the 3rd line from the end.
While we're at it, I'd like negative numbers support for other identifiers too, like $line().