As far as I can tell, and this is mostly just my opinion, the purpose of the context is to filter your list down into everything that you actually could do, at a given time.
So if you're sitting at work with a couple minutes to kill before a meeting, looking at "Buy more cat litter on the way home" doesn't necessarily add any value to your decision process.
It's a solution to a problem, which is that a complete list of all NAs for many people could be really really long -- too long to help you decide what to do in the most efficient way. A lot of the parts of GTD exist to deal with this problem, actually.
If you're the sort of person who doesn't have this problem, then you might not need the solution -- One Big List might work for you.
That's actually one of the features I like about Thinking Rock. I can filter based on several different characteristics . For example, when I am in "call mode" I can display only the CALL contexts, sorted by amount of time, for example.
What are the upsides/downsides of sorting NA's into context lists such as To Call, To Do, Errands, @PC?
vs. putting all the next actions on one master list?
I can't fix fence if I'm in town at the grocery store, so it only makes sense to separate the things I have to do by the location or tools I need to do them. With hundreds of things that need to all keep moving forward contexts are critical. Otherwise my list of next actions would be many pages long. Think of contexts like grocery store lists. You make a list of everything you need at a particular store so when you are there you don't forget stuff right? And your lists are different for each major store. I can't buy sheep mineral at the grocery store so I have a feed store list and a grocery list. Well context lists are the same way. It allows you to sort what you are doing and prevents you fromn forgetting stuff just because it's lost in a huge pile of things to do.