simple method to read values from a channel

might be clearer with a dict comprehension? all those brackets are kind of confusing