public override Node Clone(Dictionary <string, Ty> newTypes) => new VarNode(Name, TypeHint?.Monomorphize(newTypes), FileAndLine);
public override Node Clone(Dictionary <string, Ty> newTypes) => new ListNode(Elements.Map(x => x.Clone(newTypes)), TypeHint?.Monomorphize(newTypes), FileAndLine);