Skip to content

A minimal specification of standard API for non-Web WebAssembly usermode environments

Notifications You must be signed in to change notification settings

CommonWA/cwa-spec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Common WebAssembly API

The Common WebAssembly API is a minimal specification of the standard API for non-Web WebAssembly usermode environments.

Structure

Types

A few new types (which all lower to primitive WASM types) are introduced in types.md.

Errors

Error handling in CWA is done by error codes, which are defined in errors.md.

Namespaces

The CWA API is organized as namespaces, which each corresponds to a specific set of API functions.

CWA API functions should be accessible via the external module named cwa.

Every namespace should contain only lower-case ASCII characters in its name, and have its definitions in ns/{namespace}.md.

Every function should contain only lower-case ASCII characters, digits(0-9), and _ in its name, and the first character cannot be a digit.

Functions from namespaces are visible to WebAssembly modules with the name {namespace}_{function}.

URLs and Schemes

"Everything is a URL".

Defined in urls-and-schemes.md.

Add new features to CWA

If you are not sure, open an issue to discuss your idea first.

After you've finished writing the definitions & explanations of your new namespaces/functions, open a pull request and we would be happy to review :-)

About

A minimal specification of standard API for non-Web WebAssembly usermode environments

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •