I don't really see the problem here: most languages have some sort of construct to loop through hashrefs. You're right that there's an inconsistency, though. I'll investigate which format (list or hashref with pageid keys) is more common and use that throughout.
the problem isn't that I am unable to loop through it. the problem is I provide a perl module for interfacing with the mediawiki api. It has a helper function for the list query types, which automatically handles query continues and combines multiple results. the backlinks doesn't work with it however, and must be processed manually.
Thanks for looking into this. the array format is easier to process which is used by most of the list calls and doesn't have the repeating of information too (pageid->pageid).
Best Regards
Jools