title: Regarding Promises/A+ Specification, what is the difference between the terms "thenable" and "promise"?
body: <p>I am checking out the "Promises/A+" Specification, but could not understand the following things:</p>
  
  <p>On Section 1. Terminology,</p>
  
  <p>1.1. <code>"promise”</code> is an object or function with a then method whose behavior conforms to this specification.</p>
  
  <p>1.2. <code>“thenable”</code> is an object or function that defines a then method.</p>
  
  <p>So What is the difference between the terms <code>"thenable"</code> and <code>"promise"</code>?</p>
  
  <p>Also in Section 2.3. The Promise Resolution Procedure,</p>
  
  <p>The promise resolution procedure is an abstract operation taking as input a promise and a value, which we denote as <code>[[Resolve]](promise, x)</code>.</p>
  
  <p>So my question is:</p>
  
  <p>Why is it denoted within 2 opening and closing brackets? Is there any convention?</p>
  
  <p>Thank you very much.</p>