title: Using output from a function as input of other
body: <p>My software is a bunge of functions called in order:</p>
  
  <pre><code>function1 -&gt; function2 -&gt; function3 ....
  </code></pre>
  
  <p>They all receive the same input: a dictionary called <code>options</code>.</p>
  
  <p>Sample:</p>
  
  <pre><code>def function1(options):
      # do something with options
  
  def function2(options):
     # do other thing with options
  
  def function3(options):
    # do other thing with options
  </code></pre>
  
  <p>Is there any tool to help me implement some sort of <a href="https://en.wikipedia.org/wiki/Fluent_interface" rel="nofollow noreferrer">Fluent Interface</a>?</p>
  
  <p>Currently i'm using a looping:</p>
  
  <pre><code>flow = [function1,
   function2,
   function3]
  
  options = {}
  for phase in flow:
      phase(options)
  </code></pre>
  
  <p>Thanks.</p>