public int GetValue(string name)
{
Dictionary<string, int> scope = FindScopeForVariable(name);
if (scope == null) {
int nr = _args.IndexOf(name);
if (nr == -1) {
throw new WhileException("Variable {0} is not in scope!",name);
}
return nr;
}
return scope[name];
}