public abstract void collectFreeVariables(THashSet<Variable> vars);
public abstract void collectEffects(THashSet<Type> effects);
public abstract void checkType(TypingContext context);
public abstract void collectFreeVariables(THashSet<Variable> vars);
public abstract void collectEffects(THashSet<Type> effects);
public abstract void checkType(TypingContext context);