baffelli / pyperator

Simple python workflow engine based on asyncio and a DAG structure.
MIT License
55 stars 7 forks source link

ArrayPort #7

Open baffelli opened 7 years ago

baffelli commented 7 years ago

The output ArrayPort should generate a copy of the IP for each port, while an input ArrayPort should be connected to several ports, supporting indexing. (See https://github.com/noflo/noflo/issues/90)

bergie commented 7 years ago

Actually, the way this works in NoFlo is:

baffelli commented 7 years ago

Thanks! Another doubt I have is:

bergie commented 7 years ago

@baffelli with named ports you're going to have to know beforehand what ports you need. Addressable ports are useful for things like router components where you may want to configure routing rules via an IIP (and hence have an arbitrary number of "ports")

baffelli commented 7 years ago

I see the point of it! So each port is a named port plus some of them are array ports, right?

baffelli commented 7 years ago

Note for myself: "Connections may have more than one input end, but they may only have one output. IPs from multiple sources will merge on a connection, arriving at the other end in "first come, first served" sequence. It can be argued that by allowing this, we lose the predictability of the relationship between output and input, but it is easy enough to put a code in the IPs if you ever want to separate them again"