diff --git a/README.md b/README.md index 23c935198..00f7dcaf4 100644 --- a/README.md +++ b/README.md @@ -15,20 +15,20 @@ caller to specify which methods should be compiled). After type checking, the compiler would analyse the set of functions/classes that are used and perform code generation. - -Symbol resolver: -- Str -> Nac3Type -- Str -> Value - value could be integer values, boolean values, bytes (for memcpy), function ID (full name + concrete type) ## Current Plan -1. Write out the syntax-directed type checking/inferencing rules. Fix the rule - for type variable instantiation. -2. Update the library dependencies and rewrite some of the type checking code. -3. Design the symbol resolver API. -4. Move tests from code to external files to cleanup the code. +Type checking: + +- [x] Basic interface for symbol resolver. +- [x] Track location information in context object (for diagnostics). +- [ ] Refactor old expression and statement type inference code. (anto) +- [ ] Error diagnostics utilities. (pca) +- [ ] Move tests to external files, write scripts for testing. (pca) +- [ ] Implement function type checking (instantiate bounded type parameters), + loop unrolling, type inference for lists with virtual objects. (pca) +