title: In Haskell, (+) is a function, ((+) 2) is a function, ((+) 2 3) is 5. What exactly is going on there?
body: <ol>
  <li><p>How is this possible, what is going on there? </p></li>
  <li><p>Is there a name for this? </p></li>
  <li><p>What other languages have this same behavior? </p></li>
  <li><p>Any without the strong typing system?</p></li>
  </ol>