title: Azure Yaml pipelines expressions; ${{}} vs $()
body: <p>After reading the documentation of <a href="https://docs.microsoft.com/en-us/azure/devops/pipelines/process/expressions?view=azure-devops" rel="nofollow noreferrer">Expressions</a> in azure yaml pipelines, the syntax of <code>${{}}</code> and <code>$[]</code> are well explained. But there is a third, namely <code>$()</code>. It is unclear to me why it is needed and what it exactly does. For example, somewhere in that documentation there is the following example</p>
  
  <pre><code>jobs:
  - job:
    variables:
      a: $[counter(format('{0:yyyyMMdd}', pipeline.startTime), 100)]
    steps:
    - bash: echo $(a)
  </code></pre>
  
  <p>Why can't we print the variable <code>a</code> as <code>- bash: echo $[a]</code>? </p>