title: puppet lambda block failing parser validate
body: <p>I am trying to learn puppet by reading a book. The book has a very simple example showing iteration using a lambda block with <code>each</code>. However, I am unable to execute it on my Ubuntu box.</p>
  
  <pre><code>/vagrant/manifests/mountpoints.pp
  
  $data = ['routers']
  $data.each |String $item| {
      notify {$item:
          message =&gt; $item
      }
  }
  </code></pre>
  
  <p>The code fails to validate with <code>puppet parser validate</code> and I am not able to determine why.</p>
  
  <pre><code>[tmp]$puppet parser validate /vagrant/manifests/mountpoints.pp
  Error: Could not parse for environment production: Syntax error at '.' at /vagrant/manifests/mountpoints.pp:2
  </code></pre>
  
  <p>My question is: what is wrong with this sample code?</p>