package owi

  1. Overview
  2. Docs
OCaml toolchain to work with WebAssembly, including and interpreter

Install

Dune Dependency

Authors

Maintainers

Sources

0.1.tar.gz
sha256=eb0ee5a97a5310f30002b573f37ae69617688aa95d5e346ef4938ec91972102a
sha512=6aa67b3a8f999965788429a4fdb3f729570958815ab3b55d113d2c52a3fa22485e9e2872fddde5428eb0f726a0ccd5748ba216b4dc337d2b5f01f0bf27fe7701

doc/index.html

owi

owi is an OCaml toolchain to work with WebAssembly. It provides an interpreter as an executable and a library.

To get started, have a look at the quickstart section of the README.

API

  • Owi.Parse Module providing functions to parse a wasm script from various kind of inputs.
  • Owi.Types Types of text modules, as produced by the parser. Many parts of it are reused later in the interpreter.
  • Owi.Compile Utility functions to compile a module until a given step.
  • Owi.Check Initial check done on a module.
  • Owi.Simplify Module to simplify a text module. It contains the types of simplified modules.
  • Owi.Typecheck Module to typecheck a simplified module.
  • Owi.Link Module to link a simplified/extern module and producing a runnable module along with a link state.
  • Owi.Log Module to enable or disable the printing of debug logs.
  • Owi.Interpret Module to interpret a linked module.
  • Owi.Script Module to execute a full Wasm script.
  • Owi.Pp Module to pretty print the various types such as text module or simplified module.
  • Owi.Value Module to define externref values in OCaml. You should look in the `example` directory to understand how to use this before reading the code...

Private API

You shouldn't have to use any of these modules, they're used internally only.

OCaml

Innovation. Community. Security.