namespace M17N.Core
{
- public delegate object MEvaluator (MExpression args);
+ public delegate object MEvaluator (MExpression args, MPlist bindings);
public class MFunction
{
public static Dictionary<MSymbol, MFunction> CommonTable
= new Dictionary<MSymbol, MFunction> ();
- public MFunction (MSymbol name, MEvaluator evaluator)
+ internal MFunction (MSymbol name, MEvaluator evaluator)
{
this.evaluator = evaluator;
CommonTable[name] = this;
dict[name] = this;
}
- public object Call (MExpression args)
+ public object Call (MExpression args, MPlist bindings)
{
- return evaluator (args);
+ return evaluator (args, bindings);
}
private object plus (MExpression args)