You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current implementation in 1cf6592 (HEAD of types branch) doesn't play well when trying to extend variables that are not explicitly defined by the program:
Math.pow # closure: unknown
let Math.lol = 0 in Math.pow # type error
The type system can't possibly tell whether a variable is provided by the native environment or not.
Possible solution: make unknown an extensible type by making UnknownType actually inherit UndefinedType.
It would also be good to remove all uses of is and isAny in types.
The text was updated successfully, but these errors were encountered:
The current implementation in 1cf6592 (HEAD of
types
branch) doesn't play well when trying to extend variables that are not explicitly defined by the program:The type system can't possibly tell whether a variable is provided by the native environment or not.
Possible solution: make
unknown
an extensible type by makingUnknownType
actually inheritUndefinedType
.It would also be good to remove all uses of
is
andisAny
in types.The text was updated successfully, but these errors were encountered: