Taine Zhao
Taine Zhao
We can firstly introduce a subset of Python. Should look in this way: ```python @jit class S(Generic[T]): a : np.int64 # julia type Int64 b : int # python integer...
All intrinsics are listed here: https://github.com/thautwarm/restrain-jit/blob/master/restrain_jit/abs_compiler/py_apis.py As for the Julia backend, each of those instrinsics should be implemented here: https://github.com/thautwarm/RestrainJIT.jl/blob/master/src/py_apis.jl
we are to provide a plugin to support 1. recompilation on save 2. UnityPython-specific type checking with Pylance
ref: https://www.jacksondunstan.com/articles/3916 - avoid static constructors - avoid object intializer notation
UnityPython is designed with security concerns kept in mind, which is to say, Python scripts do not have the permission to access IO operations, protected .NET APIs and so on....
After finishing all necessary Python builtins, we have finally come to this stage! We are going to generate bindings to Unity, including - C# sources that implement the `UnityEngine.*` builtin...
All tests are written under the directory `UnityPython.Backend/tests/". ## Language - [ ] [test_semantics.py](https://github.com/thautwarm/Traffy.UnityPython/blob/main/UnityPython.BackEnd/tests/test_semantics.py): the whole abstract syntax of Python can be found at (see [Python 3.10 ASDL](https://raw.githubusercontent.com/python/cpython/3.10/Parser/Python.asdl). ## Builtin...