Commit graph

638 commits

Author SHA1 Message Date
Tim Mickel
a1be1d6566 Update playground and block implementations to match scratch-blocks 2016-06-14 18:08:41 -04:00
Tim Mickel
056fb76492 Remove try/catch in execution - fix #75 2016-06-13 11:23:39 -04:00
Tim Mickel
07354cddbc Merge pull request #72 from tmickel/feature/execute-with-args
Refactor for block execution
2016-06-13 11:05:00 -04:00
Tim Mickel
a58fa43572 Add reset to numYieldingThreads and comment about YieldTimers 2016-06-10 13:38:35 -04:00
Tim Mickel
e9eb7c6e57 Remove leftover console.groupEnds in execute 2016-06-10 13:34:07 -04:00
Tim Mickel
0bf9ab59a1 Add implementation for ifElse 2016-06-10 10:40:15 -04:00
Tim Mickel
ca68c55d57 Implement logic_equals, if blocks 2016-06-10 10:36:05 -04:00
Tim Mickel
506e9c32be Don't attempt to glow a block that isn't known in the VM 2016-06-10 08:48:39 -04:00
Tim Mickel
7cc0c00da6 Correctly deal with empty substacks.
The stack needs to be popped in this situation.
2016-06-10 08:47:54 -04:00
Tim Mickel
559a2a0fab Remove redundant piece of code
The stack is pushed in after the thread finishes (`proceedThread`).
2016-06-10 08:41:44 -04:00
Tim Mickel
526a260101 Simplify execution by removing nextBlock
Everything is managed by the stack, including what the execute() function does.
2016-06-09 17:08:30 -04:00
Tim Mickel
2cd6bf93bb Fix argument for repeat block 2016-06-09 17:05:08 -04:00
Tim Mickel
d52938c255 Bind thread.yield passed to primitive to actual thread 2016-06-09 15:06:24 -04:00
Tim Mickel
27064ce163 Fix implementation of "wait" block 2016-06-09 15:06:11 -04:00
Tim Mickel
88402ee68c Move popStack to inside execute 2016-06-09 14:45:54 -04:00
Tim Mickel
b0441e2ef5 Implement stub for number and add blocks 2016-06-09 14:29:07 -04:00
Tim Mickel
a987d9d9cc Only include field value in execute.argValues 2016-06-09 14:27:11 -04:00
Tim Mickel
bcd058bdc4 Disable unimplemented broadcast block 2016-06-09 14:23:45 -04:00
Tim Mickel
c21700380f Pull sequencer-related callbacks out of execute 2016-06-09 14:23:34 -04:00
Tim Mickel
9df470255e Add helpers to thread object 2016-06-09 14:22:58 -04:00
Tim Mickel
1d16a97115 Recursive evaluation for block arguments 2016-06-09 13:28:50 -04:00
Tim Mickel
c4517a451b Add isInput execution property to avoid proceeding the thread 2016-06-09 13:28:06 -04:00
Tim Mickel
6e5ebcf6df Split execution into separate function and file 2016-06-09 13:27:30 -04:00
Tim Mickel
3898fe1c45 Instrument blocks.js with getters for fields and inputs 2016-06-09 13:26:07 -04:00
Tim Mickel
b1e913b99a Merge pull request #71 from tmickel/bugfix/flyout-listener
Temporarily disable flyout listeners until we fix GH-69
2016-06-09 11:53:29 -04:00
Tim Mickel
b2128841d5 Merge pull request #70 from tmickel/enhancement/execution-refactors
Move scratch3 blocks into separate packages.
2016-06-09 11:53:21 -04:00
Tim Mickel
38fb9f4de2 Temporarily disable flyout listeners until we fix GH-69 2016-06-09 11:49:03 -04:00
Tim Mickel
bd7f3245a2 Move scratch3 blocks into separate packages. 2016-06-09 11:45:58 -04:00
Tim Mickel
200f895b43 Merge pull request #68 from tmickel/recompile-june-8
Recompile June 8
2016-06-08 17:35:55 -04:00
Tim Mickel
30a9854b57 Recompile June 8 2016-06-08 17:31:18 -04:00
Tim Mickel
20cb88c066 Update README.md with new block change listener calls 2016-06-08 17:30:22 -04:00
Tim Mickel
58db14ac0e Merge pull request #67 from tmickel/feature/eslint-jsdoc
Add .eslintrc rule to check JSDoc syntax
2016-06-08 17:27:14 -04:00
Tim Mickel
b9bd037963 Fixing eslint JSDoc from merge 2016-06-08 17:25:26 -04:00
Tim Mickel
42d03db28b Merge branch 'develop' into feature/eslint-jsdoc
# Conflicts:
#	.eslintrc
#	src/index.js
2016-06-08 17:23:41 -04:00
Tim Mickel
d17ffbb99b Merge pull request #60 from tmickel/feature/vm-playground-execution
Instrument VM and playground for better execution debugging
2016-06-08 17:15:36 -04:00
Tim Mickel
e377ecae78 Merge pull request #62 from tmickel/enhancement/change-listeners
Move blockListener to blocks.js; combine flyout listener
2016-06-08 16:58:37 -04:00
Tim Mickel
b6dbdd64ec Merge pull request #63 from tmickel/feature/editorconfig
Add .editorconfig
2016-06-08 16:58:22 -04:00
Tim Mickel
1f1a4941f3 Add .eslintrc rule to check JSDoc syntax
And fix the broken syntax rules
2016-06-08 16:57:08 -04:00
Tim Mickel
de359b6859 Add .editorconfig 2016-06-08 16:27:38 -04:00
Tim Mickel
7a42e9ae68 Move blockListener to blocks.js; combine flyout listener 2016-06-08 13:44:09 -04:00
Tim Mickel
8081ec3a16 Merge pull request #61 from tmickel/cleanup/blocks-spacing
Spacing fix in blocks.js
2016-06-08 13:29:26 -04:00
Tim Mickel
8fa29bc6de Spacing fix in blocks.js 2016-06-08 13:27:01 -04:00
Tim Mickel
c1e30cf2ee Add sequencer-level debug console logs 2016-06-07 21:05:32 -04:00
Tim Mickel
5767e05d56 Add block-by-block feedback to the VM playground 2016-06-07 20:59:34 -04:00
Tim Mickel
f2734950d7 Add tab to VM playground to show threads 2016-06-07 20:44:08 -04:00
Tim Mickel
cb4dd7b511 Add zoom options to playground 2016-06-07 20:26:58 -04:00
Tim Mickel
9b843156b1 Merge pull request #58 from tmickel/recompile-june-7
Recompile June 7
2016-06-07 13:29:23 -04:00
Tim Mickel
839965b439 Recompile June 7 2016-06-07 13:29:07 -04:00
Tim Mickel
2be27cbc7d Merge pull request #57 from tmickel/feature/full-tree
Update for VM block management
2016-06-07 13:27:41 -04:00
Tim Mickel
2339c5e710 Additional tests for invalid adapter inputs 2016-06-07 12:01:47 -04:00