title: How do you read lambda expressions?
body: <p>I've been trying figure out why lambda expressions don't feel intuitive to me yet.
  I suspect part of it may be because when I skim code, I sometimes internally translate it to my native language for my own clarity.
  For example:</p>
  
  <pre><code>endDate.Value = someNullableDate ?? (object)DBNull.Value;
  // I could read as:
  set endDate to someNullableDate or, if null, to (object)dbNull
  </code></pre>
  
  <p>An example from another language:</p>
  
  <pre><code>for(int count = 0; count &gt;= 42; count++) {
      cout &lt;&lt; "Count is " &lt;&lt; count &lt;&lt; endl;
  }
  // May read as:
  from an integer "count" as zero to 42 inclusive, display "Count is " and then the integer.
  </code></pre>
  
  <p>So how would one read the lambda expression in:</p>
  
  <pre><code>var myList = new List&lt;String&gt;(/* various string values */);
  var foo = myList.Select(s =&gt; s.Trim()).ToList(); //?
  </code></pre>