private SyntaxNode readNode()
 {
     if (currentCharacterStream.isNextCharDigit())
     {
         return(readNumber());
     }
     else if (currentCharacterStream.isNextCharEuler())
     {
         return(readEuler());
     }
     else if (currentCharacterStream.isNextCharVariable())
     {
         return(readVariable());
     }
     else
     {
         throw new UnknownSymbolException("Unrecognized Symbol " + currentCharacterStream.readAsString());
     }
 }