protected override void CrearComportamiento(string cadena, DeclaraciónDeContexto declaración, int desplazamiento)
        {
            var variable = new Variable
            {
                Tipo   = TipoDeVariable,
                Nombre = NombreDeVariable
                         //Valor = string.IsNullOrEmpty(ValorDeVariable) ? TipoDeVariable.ValorPorDefecto : ValorDeVariable
            };

            var instrucción = new DeclaraciónDeVariable(variable, cadena)
            {
                Inicio = desplazamiento
            };

            declaración.Instrucciones.Enqueue(instrucción);
            declaración.VariablesDeclaradas.Add(variable);
        }
        protected override void CrearComportamiento(string cadena, DeclaraciónDeContexto declaración, int desplazamiento)
        {
            var variable = new Variable
            {
                Tipo   = TipoDeVariable,
                Nombre = NombreDeVariable
                         //El valor en lugar de pasárselo, tengo que construir instrucciones para obtenerlo
                         //Valor = string.IsNullOrEmpty(ValorDeVariable) ? TipoDeVariable.ValorPorDefecto : ValorDeVariable
            };

            //Igual un CrearVariable y uego un AsignarValorDeVariable
            var instrucción = new DeclaraciónDeVariable(variable, cadena) //Este puede que simplemente haga un pop de algun sitio y coja el valor
            {
                Inicio = desplazamiento
            };

            declaración.Instrucciones.Enqueue(instrucción);
            declaración.VariablesDeclaradas.Add(variable);
        }