示例#1
0
        public State Reduce(IEnvironment environment)
        {
            if (Expression.IsReducible)
            {
                return(new State(
                           new Assign <T>(variable, Expression.Reduce(environment)),
                           environment));
            }

            return(new State(
                       new DoNothing(),
                       environment.AddValue(variable.Name, Expression)));
        }