public STObject EvaluateSend(STObject receiver, Node message, Context context)
{
Node child = message.GetChildAt(0);
if (child.Name == "simple_send")
return EvaluateSimpleSend(receiver, child, context);
else if (child.Name == "keyword_send")
return EvaluateKeywordSend(receiver, child, context);
else if (child.Name == "assign_send")
return EvaluateAssignSend(receiver, child, context);
throw new Exception("Should not reach");
}