title: What is the purpose of creating symbolic variables in Theano?
body: <p>In Theano, variables are written as 'symbols':</p>
  
  <pre><code>x = T.matrix("x")
  y = T.vector("y")
  </code></pre>
  
  <p>From reading the documentation, it is implied that the reason we create these symbols may be due to the fact that these variables are compiled into C code. But I'm not sure if this is the case, much less the only reason for using symbolic variables. </p>
  
  <p>What is the purpose of creating symbolic variables in Theano? What can they do that a, out of the box assignment in Python can't do?</p>