|
|
@@ -5,35 +5,27 @@
|
|
|
<a title="Pub" href="https://pub.dev/packages/pocketpy" ><img src="https://img.shields.io/pub/v/pocketpy" /></a>
|
|
|
</p>
|
|
|
|
|
|
-> This project is undergoing a major reconstruction!!!
|
|
|
->
|
|
|
-> Advanced features such as exception, yield/coroutine and complete C bindings support will be added.
|
|
|
->
|
|
|
-> Interfaces will be changed a lot. Be cautious!
|
|
|
-
|
|
|
C++17 header-only Python interpreter for game engines.
|
|
|
|
|
|
-Please see https://pocketpy.dev for detailed documentations.
|
|
|
+Please see https://pocketpy.dev for details or try [Live Demo](https://blueloveth.github.io/pocketpy).
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
-## Build From Source (Linux)
|
|
|
-
|
|
|
-First clone the repository
|
|
|
-
|
|
|
-```bash
|
|
|
-git clone https://github.com/blueloveTH/pocketpy
|
|
|
-cd pocketpy
|
|
|
-```
|
|
|
+## News
|
|
|
|
|
|
-Then run
|
|
|
+PocketPy is undergoing a major reconstruction.
|
|
|
+The next version, `0.8.x`, is a huge break change compared with `0.6.x`.
|
|
|
|
|
|
-```bash
|
|
|
-python3 amalgamate.py
|
|
|
-```
|
|
|
+Changes in `0.8.x`:
|
|
|
+1. better way for C bindings/host bindings
|
|
|
+2. try/catch support
|
|
|
+3. yield/coroutine support (we will try to implement asyncio)
|
|
|
+4. complete reflection (exec/eval/getattr/setattr/hasattr)
|
|
|
+5. bytecode optimizer (will improve the performance by 2x-3x)
|
|
|
|
|
|
-It will generate `pocketpy.h` and `main.cpp` in `amalgamated/` directory. You can use `main.cpp` to build a REPL console or use `pocketpy.h` to embed it to your game engine.
|
|
|
+Since the main purpose of PocketPy is for game engines, which is usually single-threaded. We will change some designs to fit this situation.
|
|
|
+All threaded interfaces will be deleted. PocketPy will no longer provide thread support at the C language level. If one needs to run the virtual machine in a thread, we recommend to use the thread support provided by the host language.
|
|
|
|
|
|
## Reference
|
|
|
|
|
|
@@ -41,3 +33,4 @@ It will generate `pocketpy.h` and `main.cpp` in `amalgamated/` directory. You ca
|
|
|
|
|
|
+ [byterun](http://qingyunha.github.io/taotao/)
|
|
|
|
|
|
++ [emhash](https://github.com/ktprime/emhash)
|