It seems to me that your A and B should be required arguments, no? As it is right now, you can do
zip()
Have you come up with an example working required arguments into the mix? I'm not going to bother trying for now, given what you've demonstrated as the current state of the feature.
(Also, I didn't find this thread because I didn't think what we're doing is zipping. Is it zipping? I thought zipping was combining a number of elements together in tuples.)