-
Inko's type checker, start at TypeChecker.check and work your way down the call stack. TypeChecker.check_type_ref is where most of the work is done.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
TypeScript is actually an... interesting example because it depends on compiler settings. When noImplicitAny is ON, then the list is first inferred as implicit any[] (riddle me that!). It then gets narrowed (unified?) later to string[]. I have to imagine this is a special case in the compiler because it doesn't work on user-defined data types (see example link above). The TypeScript checker.ts code is a single 50k LOC file so I'm probably not going to be able to understand the implementation.