/// <summary> /// Returns the environment in which a given variable is defined, or null /// </summary> private Environment GetEnvironment(Symbol symbol) { if (hashtable.ContainsKey(symbol)) { return(this); } if (previousEnvironment == null) { return(null); } return(previousEnvironment.GetEnvironment(symbol)); }