Relevant part:<p>&gt; Operators: Operators are the building blocks of workflows. Conceptually, you can think of an operator like a function within a program. In FBLearner Flow, operators are the smallest unit of execution and run on a single machine.<p>&gt; Channels: Channels represent inputs and outputs, which flow between operators within a workflow. All channels are typed using a custom type system that we have defined.<p>I think this is related to the thoughts in the following essay: <a href="https:&#x2F;&#x2F;colah.github.io&#x2F;posts&#x2F;2015-09-NN-Types-FP&#x2F;" rel="nofollow">https:&#x2F;&#x2F;colah.github.io&#x2F;posts&#x2F;2015-09-NN-Types-FP&#x2F;</a><p>When you think about it. What do NNs fundamentally do (once trained)? Map inputs to outputs, right? So they behave like functions. In type theory functions are intensional and we explicitly construct them. With NNs we have our ML algorithm and construct them based on training data and feedback. With regular functions we have explicitly constructed A -&gt; B. Let&#x27;s represent NNs as A ~&gt; B. Let&#x27;s represent channels as A||B. Say we have two operators: E ~&gt; F and G ~&gt; H then to join them,<p>So E ~&gt; F||G ~&gt; H we&#x27;d have to construct a channel F||G.<p>At least this is how I imagine they mean things! Corrections from FB most welcome!