title: Avoiding nested pattern matching (possibly with maybe monad)
body: <p>How could nested pattern matching, such as the following example, be re-written so that <code>None</code> is specified only once? I <i>think</i> the Maybe monad solves this problem. Is there something similar in the F# core library? Or, is there an alternative approach?</p>
  
  <pre><code>match a with
  | Some b -&gt;
      let c = b.SomeProperty
      match c with
      | Some d -&gt;
          let e = d.SomeProperty
          //and so on...
      | None -&gt; ()
  | None -&gt; ()
  </code></pre>