# Process parameter in compiled combine block

While playing around with the combine block, I found out it now supports 5 input slots (4 if the block isn't compiled), as long as they're used with the input names field. While testing, I found out that the fifth parameter returns the current process (extra parameter for jsf).  Not only that, but it only works if the fifth parameter is in a reporter block. [/edit] I was just wondering why you would need to use that in the block. Or is it used internally to help with the compiling process or something?

Edit: I think I know why that happened. Its purpose is changed to that of the call block, so it gets that extra parameter just like the call block when compiled.

@jens

Also, shouldn't the input names be names rather than #n? So far, value, index, list?

We did not name the formal parameters of the function input to combine "so far", value, index, list", because you - quite adamantly so - made me take that naming out after convincing me that we don't want users to think about how combine traverses a list. I'm actually very happy with that decision! I left in the functionality that you can use the other two parameters, but this is now really an undocumented "easter egg".

Oh yeah! I'm losing my mind. That conversation wasn't even very long ago.

But value1, value2, index, list would be fine. Although, I dunno, it's weird that index starts at 2... maybe it's okay as is.