2020-12-22 15:38:39 +08:00
|
|
|
# Toy Implementation
|
|
|
|
Currently the rough implementation is done, works remain are the code for
|
|
|
|
checking a real python script, getting the type variables, some implementation
|
|
|
|
details etc.
|
|
|
|
|
|
|
|
These features are considered in the proposal, but would not be implemented here
|
|
|
|
for simplicity reasons:
|
|
|
|
* Referencing Python Variables.
|
2020-12-22 16:56:40 +08:00
|
|
|
* Most of the types, only the following types are implemented:
|
|
|
|
* `int32`
|
|
|
|
* `int64`
|
2020-12-22 16:59:36 +08:00
|
|
|
* `float`
|
2020-12-22 16:56:40 +08:00
|
|
|
* `bool`
|
|
|
|
* `list[T]`
|
|
|
|
* `tuple[T1,...]`
|
|
|
|
* `virtual[T]`
|
2020-12-22 15:38:39 +08:00
|
|
|
* Storing large constants as `uint32`, `int64` or `uint64`.
|
|
|
|
* AugAssign, `a += b` etc.
|
|
|
|
* `with`, `try except`, etc.
|
2020-12-22 16:56:40 +08:00
|
|
|
* const indexing with tuple.
|
|
|
|
* method override check modulo variable renaming.
|
2020-12-23 11:22:17 +08:00
|
|
|
* more complicated type guard
|
2020-12-22 15:38:39 +08:00
|
|
|
|
|
|
|
|
2020-12-22 16:59:36 +08:00
|
|
|
## Type Check Implementation
|
|
|
|
|
|
|
|
## Variable Scoping
|
|
|
|
|
|
|
|
## Operator Override
|
|
|
|
|