>>3
ports read and write serialized data. A read only port can look like a function that is called and spits out objects. Every time it is called, it's state is changed, and it will will return different values. Unless caching is used, there it no way to save its prior state.
A writing port acts like a function that takes a single argument and doesn't return a value. It's a black hole. Values go into the function in some order, and nothing comes back out.