Commit Graph
243 Commits
Author SHA1 Message Date
Tim Mickel ad30fa8059 Temporarily remove per-block glow 2016-07-01 11:27:01 -04:00
Tim Mickel e4f6c9e90c "Repeat until" implementation 2016-07-01 11:25:26 -04:00
Tim Mickel dda4fc8332 Yield frame on an empty substack 2016-07-01 11:24:06 -04:00
Tim Mickel 39c71b559d Update repeat implementation to execute once per frame 2016-07-01 10:50:31 -04:00
Tim Mickel de6ba08866 Add single-frame yield mode 2016-07-01 10:44:43 -04:00
Tim Mickel 5876681bc7 Version of random that truncates ints 2016-07-01 10:28:47 -04:00
Tim Mickel bb5acd1ef4 Fix merge issue in execute.js 2016-06-30 19:01:19 -04:00
Tim Mickel 1eaed6fff3 Implement graphic effects and size blocks 2016-06-30 18:59:47 -04:00
Tim Mickel 7db2981ddc Add additional motion block implementations 2016-06-30 18:59:47 -04:00
Tim Mickel 42f0f66acd Implement move steps, turn right, turn left, point in direction 2016-06-30 18:59:47 -04:00
Tim Mickel 727d2c0d23 Clamp clone direction like Scratch 2.0 2016-06-30 18:59:47 -04:00
Tim Mickel 7db38e8422 Implement a few math utilities 2016-06-30 18:59:47 -04:00
Tim Mickel 19da0b0032 Add renderer demo using scratch-render-webgl 2016-06-30 18:59:47 -04:00
Tim Mickel 809528abdc Straw-man implementation of targets/sprites/clones 2016-06-30 18:59:17 -04:00
Tim Mickel 1a48e75341 Merge pull request #83 from tmickel/feature/yielding-reporters
Yielding reporters, blocking yields
2016-06-30 18:58:03 -04:00
Tim Mickel 1c24770f8c Remove debug calls from execute 2016-06-30 18:56:31 -04:00
Tim Mickel ec4567aa8a Simplify logic for Thread status 2016-06-30 18:56:31 -04:00
Tim Mickel ab6e0d3839 Remove YieldTimers, unused WeDo blocks 2016-06-30 18:56:31 -04:00
Tim Mickel 6daee9a70e Remove VM-locking yield mode per discussion 2016-06-30 18:56:23 -04:00
Tim Mickel 9a7ab57f6f Always yield thread when a promise is returned. 2016-06-30 18:56:23 -04:00
Tim Mickel 9881ee76b9 Deal with promise rejection also. 2016-06-30 18:56:23 -04:00
Tim Mickel 57057bfffc Remove unused require to fix build 2016-06-30 18:56:23 -04:00
Tim Mickel d72cc55c11 Example that uses promises instead of util.report 2016-06-30 18:56:23 -04:00
Tim Mickel 8f6a88c095 Ensure predicates always return booleans 2016-06-30 18:56:23 -04:00
Tim Mickel 09b9c506a9 Check for blocking case in stepToReporter 2016-06-30 18:56:23 -04:00
Tim Mickel 405ad1044e getBlockingThread_ returns null when none available. 2016-06-30 18:56:23 -04:00
Tim Mickel d44b806b4f Add blocking yield mode 2016-06-30 18:56:23 -04:00
Tim Mickel c63747e61b Move stepping logic for reporters to sequencer 2016-06-30 18:56:23 -04:00
Tim Mickel f802faa461 operator_not in primitive table 2016-06-30 18:56:23 -04:00
Tim Mickel f210c12d4d Add more operators for testing 2016-06-30 18:56:23 -04:00
Tim Mickel e56c6e6980 Rename primitiveReturnValue -> primitiveReportedValue 2016-06-30 18:56:23 -04:00
Tim Mickel e83cfa6049 Add comment and clear currentStackFrame.reported 2016-06-30 18:56:23 -04:00
Tim Mickel 9d9749681b Comment and else for reporter finishes right away 2016-06-30 18:56:23 -04:00
Tim Mickel b21c9edf04 Commenting improvements 2016-06-30 18:56:23 -04:00
Tim Mickel 173f0615d3 Refactor: always push reports to the stack frame 2016-06-30 18:56:23 -04:00
Tim Mickel 6181bcd5cb Refactor Thread.peekParentStackFrame 2016-06-30 18:56:23 -04:00
Tim Mickel bed3e28c02 Simplifications of execute ordering
and always cache returned reporter values in currentStackFrame.reported.
2016-06-30 18:56:23 -04:00
Tim Mickel d15c93af05 Keep "waiting reporter name" on the stack frame.
Also add highlighting for inputs.
2016-06-30 18:56:23 -04:00
Tim Mickel 7ef3807b18 Example of a yielding reporter (returns random number after 1s) 2016-06-30 18:56:23 -04:00
Tim Mickel 97f7571c6f Prototype implementation of yielding reporters 2016-06-30 18:56:23 -04:00
Tim Mickel 34659c9b7b Allow console timers 2016-06-30 18:56:23 -04:00
Tim Mickel 190208b620 Clean up yield-timers: support multiple, move logic to Threads. 2016-06-30 18:56:23 -04:00
Tim Mickel 578d02cba0 Merge pull request #85 from tmickel/feature/worker
Update to allow running in a WebWorker
2016-06-22 12:20:22 -04:00
Tim Mickel 59ff650de1 Update playground to use unified interface and worker 2016-06-21 15:30:36 -04:00
Tim Mickel b97974e2ac Implement WebWorker interface 2016-06-21 15:30:27 -04:00
Tim Mickel 020bf1ef65 Use absolute version number for webpack-dev-server 2016-06-21 15:28:47 -04:00
Tim Mickel 783a3688aa Update index.js to support worker environment 2016-06-21 14:48:54 -04:00
Tim Mickel 01aecb3372 Allow worker in eslintrc environment 2016-06-21 14:42:34 -04:00
Tim Mickel b144ca7a2e Add dev server to help with WebWorker development 2016-06-21 14:42:24 -04:00
Tim Mickel 652cc8a31c Fix references to window 2016-06-21 14:29:40 -04:00