public Env2 Add(TypeEntry entry) {
if (this._functionScope.IsNone) {
// global
return new Env2(
this._globalSymbolTable.Add(entry),
this._functionScope
);
} else {
// local
return new Env2(
this._globalSymbolTable,
Option.Some(this._functionScope.Value.Add(entry))
);
}
}