Christopher Willis-Ford e8089cd2a5 Don't check for methods on window.native
It turns out that `window.native.someMethod` always evaluates as
`undefined` -- even if calling that method would succeed. This change
removes checks for such methods so that the WeDo2 blocks can work.
Note that the hat blocks are still unimplemented, and some assumptions
are made about the form that arguments and `util` will take.
2016-05-03 09:48:26 -07:00
2016-04-26 17:03:22 -04:00
2016-05-02 11:56:52 -07:00
2016-04-08 13:10:37 -04:00
2016-04-18 17:22:23 -04:00
2016-03-28 12:53:44 -04:00
2016-04-26 09:54:14 -04:00
2016-04-26 09:54:14 -04:00
2016-03-28 12:53:44 -04:00
2016-05-03 11:26:53 -04:00
2016-05-03 11:26:53 -04:00

scratch-vm

Build Status

Installation

npm install scratch-vm

Setup

var VirtualMachine = require('scratch-vm');
var vm = new VirtualMachine();

// Block events

// UI events

// Listen for events

Standalone Build

make build
<script src="/path/to/vm.js"></script>
<script>
    var vm = new window.VirtualMachine();
    // do things
</script>

Abstract Syntax Tree

Overview

Anatomy of a Block

{
    "id": "^1r~63Gdl7;Dh?I*OP3_",
    "opcode": "wedo_motorclockwise",
    "next": null,
    "fields": {
        "DURATION": {
            "name": "DURATION",
            "value": null,
            "blocks": {
                "1?P=eV(OiDY3vMk!24Ip": {
                    "id": "1?P=eV(OiDY3vMk!24Ip",
                    "opcode": "math_number",
                    "next": null,
                    "fields": {
                        "NUM": {
                            "name": "NUM",
                            "value": "10",
                            "blocks": null
                        }
                    }
                }
            }
        },
        "SUBSTACK": {
            "name": "SUBSTACK",
            "value": "@1ln(HsUO4!]*2*%BrE|",
            "blocks": null
        }
    }
}

Testing

make test
make coverage
make benchmark
S
Description
Scratch VM with a JIT compiler and more features
https://turbowarp.org/
Readme MPL-2.0
35 MiB
0 Stars 2 Watchers 0 Forks
Languages
JavaScript 99.7%
HTML 0.2%