Skip to content

A stack-based Go WebAssembly virtual machine.

License

Notifications You must be signed in to change notification settings

polaris-project/ursa

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ursa

A stack-based Go WebAssembly virtual machine.

Build Status

Installation

go get -u github.com/SummerCash/ursa

Usage

Running a .wasm file in the Ursa VM:

go run main.go --source PATH-TO-.WASM --entry ENTRY-FUNCTION-NAME

An example:

go run main.go --source examples/unary.wasm --gas-per 0 --entry i32_clz

A rust -> wasm example:

go run main.go --source examples/wasm_bg.wasm --gas-per 0 --entry app_main

Credits

A big thanks to the Perlin-network and Go-interpreter teams for writing a large portion of the necessary preliminary foundation logic of the VM! This repository is mainly just for cleaning up a bit of their work and adding certain features that may be useful in the future.

About

A stack-based Go WebAssembly virtual machine.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.9%
  • Shell 0.1%