jaspy
1.0.0
Jaspy是Python VM,完全由JavaScript從頭開始,具有一些獨特的功能。 Jaspy支持多個線程,並帶有一個集成的調試器,該調試器提供遠程調試,並提供靈活的基於預處理的體系結構。速度明確不是該項目的主要目標。 Jaspy旨在說明如何通過探索新方法來完成客戶端的Web編程。
Jaspy配備了集成開發服務器和交互式調試器!
首先安裝依賴項,如果尚未安裝:
pip3 install --user -r requirements.txt
pip3 install --user ptpython pygments克隆存儲庫並構建解釋器:
git clone --recursive https://github.com/koehlma/jaspy.git ; cd jaspy
python3 build.py # build the interpreter切換到示例目錄並在交互模式下啟動服務器:
cd example
PYTHONPATH=../ python3 -m jaspy.cli --interactive請訪問http:// localhost:8080/hello.html瀏覽器,然後單擊運行:
那裡已經有許多其他Python到JavaScript方法:
他們中的大多數都比jaspy快,但沒有一個提供Jaspy的獨特功能,Jaspy是帶有螺紋支持,集成調試器和靈活的,基於預處理的架構的完全懸掛解釋器。
只是為了給人留下深刻的印象!
| 石石/秒 | |
|---|---|
| jaspy(啟用調試器,啟用線程) | 195 |
| Jaspy(禁用調試器,啟用線程) | 199 |
| Jaspy(禁用調試器,禁用線程) | 206 |
| 布萊頓 | 4184 |
| pypy.js(冷) | 41425 |
| pypy.js(溫暖) | 847457 |
但是,這是一個不公平的基準測試,因為沒有進行DOM操縱或其他任何瀏覽器特定的操作。令人驚訝的是,線程和調試幾乎沒有開銷。
該項目仍處於α國家。 API不穩定,未經測試,尚未準備好生產性。上面列出的一些功能尚未實現。
我在學期休息時開始了這個項目,現在,隨著新學期的開始,我的業餘時間要少得多。因此,可能需要一段時間才能投入更多時間。但是,我非常歡迎各種貢獻。
如果您喜歡Jaspy的想法隨時加入,那麼有很多事情要做:
請隨時貢獻或詢問是否有關於代碼或一般貢獻的過程不清楚的。
| libs: | 第三方依賴性 |
|---|---|
| 模塊: | 捆綁的本機JavaScript模塊 |
| SRC: | JavaScript源文件(需要預處理) |
| Jaspy: | Python服務器,轉換器和遠程調試器 |
非常感謝Brython項目為內置級代碼的許多部分提供了靈感。非常感謝“ 500行或更少的行”這本書,如果您想知道口譯員的工作原理,這是一個很好的起點。