title: Examples of languages that hide variable multiplicity
body: <p>What are some examples of programming languages, extensions to programming languages or other solutions that hides the multiplicity of variables when operating on them, calling method etc? </p>
  
  <p>Specifically I imagine a system where I have a single typed collection of objects that transparently will forward any method call on the collection of objects so that the method is applied to all of them individually including using the return value in a meaningful way. Preferably I would like to see examples of languages that does this in a good way, but it could be interesting to see also solutions where this does not work well.</p>
  
  <p>I imagine something like this:</p>
  
  <pre><code>struct Foo
  {
      int bar();
  }
  
  void myFunction()
  {
      // 4 Foo objects are created in a vector
      vector&lt;Foo&gt; vals(4); 
      // The bar() method is applied to each of the Foo objects and each 
      // return an int that is automatically inserted into a new vector
      vector&lt;int&gt; = vals.bar();
  }
  </code></pre>