public static Object Call(this Function function, Object[] arguments) { var scope = new Scope(); for (var i = 0; i < function.Arguments.Count; i++) { scope[function.Arguments[i].Item1] = arguments[i]; } return(Interpret.Evaluate(function.Body, scope)); }