Nuitka - คอมไพเลอร์ Python ที่สร้างด้วย Python
(github.com)- เข้ากันได้อย่างสมบูรณ์กับ Python 2.6~2.7, 3.3~3.9
→ ใช้งานไลบรารี/โมดูลขยายของ Python ได้ทั้งหมด
→ สร้างไฟล์รันแบบ Standalone หรือโมดูลขยายที่ผ่านการปรับแต่งประสิทธิภาพได้
- แปลงโมดูล Python ให้เป็นโปรแกรมระดับ C แล้วใช้ libpython และไฟล์ C เพื่อให้ทำงานคล้ายกับ CPython
→ การปรับแต่งทั้งหมดมุ่งลดโอเวอร์เฮดที่ไม่จำเป็น พร้อมคงความเข้ากันได้ในระดับสูง
→ ตอนนี้ก็เร็วกว่า CPython อยู่แล้ว แต่ยังมีส่วนที่ต้องปรับแต่งเพิ่มเติมอีกมาก
- รองรับ Windows/macOS/Linux/BSD (x86, x86_64, ARM)
2 ความคิดเห็น
nuitka ก็ไม่ได้แย่อะไร แต่พอลองใช้จริง ปัญหาหนึ่งก็คือมันช้ากว่าที่คิดอยู่เหมือนกัน T_T
https://github.com/kostya/jit-benchmarks
แม้ว่า PyPy ซึ่งเป็นแบบ JIT จะมีความเร็วในการรันสูงกว่า แต่ท้ายที่สุดก็ยังต้องแจกจ่ายโค้ด Python อยู่ดี ในขณะที่
Nuitka มีทั้งความเข้ากันได้ที่ดีกว่าและสามารถสร้างไฟล์รันแบบสแตนด์อโลนได้ จึงน่าจะเป็นทางเลือกที่ยอดเยี่ยมที่สุดเมื่อจะเผยแพร่โค้ดที่เขียนด้วย Python ในรูปแบบไบนารี