https://github.com/summercash/ursa
A stack-based Go WebAssembly virtual machine.
https://github.com/summercash/ursa
dapps decentralized-applications golang smart-contract-platform smart-contracts virtual-machine webassembly
Last synced: 2 months ago
JSON representation
A stack-based Go WebAssembly virtual machine.
- Host: GitHub
- URL: https://github.com/summercash/ursa
- Owner: SummerCash
- License: mit
- Created: 2019-01-13T05:10:27.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-03-08T18:05:26.000Z (over 6 years ago)
- Last Synced: 2025-03-25T09:21:24.282Z (3 months ago)
- Topics: dapps, decentralized-applications, golang, smart-contract-platform, smart-contracts, virtual-machine, webassembly
- Language: Go
- Size: 1.56 MB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ursa
A stack-based Go WebAssembly virtual machine.
[](https://travis-ci.com/SummerCash/ursa)
## Installation
```BASH
go get -u github.com/SummerCash/ursa
```## Usage
Running a .wasm file in the Ursa VM:
```BASH
go run main.go --source PATH-TO-.WASM --entry ENTRY-FUNCTION-NAME
```An example:
```BASH
go run main.go --source examples/unary.wasm --gas-per 0 --entry i32_clz
```A rust -> wasm example:
```BASH
go run main.go --source examples/wasm_bg.wasm --gas-per 0 --entry app_main
```## Credits
A big thanks to the [Perlin-network](https://github.com/perlin-network) and [Go-interpreter](https://github.com/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.