Skip to main content

Wasm 参考解释器的 Jupyter 内核

项目描述

Wasm 规范内核

WebAssembly 参考解释器的 Jupyter 内核(请参阅webassembly/spec)。

您可以使用 Binder 在示例笔记本中试用此内核:

启动活页夹

安装

Wasm 参考解释器

这个内核需要一个Wasm 参考解释器在环境中可用(例如,Wasm 解释器不随这个 Python 包一起分发)。

你可以克隆一个 WebAssembly 规范 repo 并使用 OCaml 工具链自己构建解释器。

@awendland 在awendland/webassembly-spec-abstypes提供了 Wasm 参考解释器的预编译变体,带有抽象类型的语言扩展。

配置

任何一个:

  • 将口译员放入您$PATH的姓名wasm,或
  • 安装内核时指定解释器的位置python -m wasm_spec_kernel.install --interpreter wherever_you_stored_the/interpreter

Jupyter 内核

安装:

pip install wasm_spec_kernel
python -m wasm_spec_kernel.install

要使用它,请打开一个新的 Jupyter 笔记本。例如,通过:

jupyter notebook
# In the notebook interface, select Wasm from the 'New' menu
jupyter qtconsole --kernel wasm_spec
jupyter console --kernel wasm_spec

目的

这是因为 WebAssembly 参考解释器是用 OCaml 编写的,而 OCaml 很难编译成 WebAssembly(否则最新的参考解释器可以通过已经在常青网络浏览器中可用的 v1 WebAssembly 托管)。Jupyter 内核应该帮助共享 WebAssembly 代码示例,利用 WebAssembly 规范的各种分支的功能。

这是如何工作的

有关其工作原理的详细信息,请参阅包装内核上的 Jupyter 文档和replwrap 模块上的 Pexpect 文档。请注意,此内核重新实现了pexpect.replwrap.REPLWrapper该类,以便它更好地与 Wasm 参考解释器一起工作。

致谢

这是基于Thomas Kluyver的 bash_kernel。测试改编自jupyter/jupyter_clientipython/ipykernel

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

wasm_spec_kernel-0.1.1.tar.gz (9.4 kB 查看哈希)

已上传 source

内置分布

wasm_spec_kernel-0.1.1-py3-none-any.whl (9.7 kB 查看哈希

已上传 py3