Provided type checking is correct and we have enough type information via Resolution.lean, we might want to remove LaurelTypes.lean altogether because it simply recomputes the types. This means :
- transporting types along with the AST
- theoretically making sure we have enough type information (because we prefer checking mode as much as possible, some/most constructors never synthesize) ; another way to put it is saying that we reject insufficient typing by the user by construction
Relates to #1121
Provided type checking is correct and we have enough type information via
Resolution.lean, we might want to removeLaurelTypes.leanaltogether because it simply recomputes the types. This means :Relates to #1121