title: Why would R use the "L" suffix to denote an integer?
body: <p>In R we all know it is convenient for those times we want to ensure we are dealing with an integer to specify it using the <code>"L"</code> suffix like this:</p>
  
  <pre><code>1L
  # [1] 1
  </code></pre>
  
  <p>If we don't explicitly tell R we want an integer it will assume we meant to use a <code>numeric</code> data type...</p>
  
  <pre><code>str( 1 * 1 )
  # num 1
  str( 1L * 1L )
  # int 1
  </code></pre>
  
  <p>Why is "L" the preferred suffix, why not "I" for instance? Is there a historical reason?</p>
  
  <p>In addition, why does R allow me to do (with warnings):</p>
  
  <pre><code>str(1.0L)
  # int 1
  # Warning message:
  # integer literal 1.0L contains unnecessary decimal point 
  </code></pre>
  
  <p>But not..</p>
  
  <pre><code>str(1.1L)
  # num 1.1
  #Warning message:
  #integer literal 1.1L contains decimal; using numeric value 
  </code></pre>
  
  <p>I'd expect both to either return an error.</p>