public abstract void Visit(FunctionNode node, Context context);
public override void Visit(FunctionNode node, Context context) { throw new NotImplementedException(); }