JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://raw.github.com/JeffreyZhao/jscex/master/bin/dev/jscex-0.6.5.js"></script>
<script src="https://raw.github.com/JeffreyZhao/jscex/master/bin/dev/jscex-builderbase-0.6.5.js"></script>
<script src="https://raw.github.com/JeffreyZhao/jscex/master/bin/dev/jscex-async-0.6.5.js"></script>
<script src="https://raw.github.com/JeffreyZhao/jscex/master/bin/dev/jscex-async-powerpack-0.6.5.js"></script>
<script src="https://raw.github.com/JeffreyZhao/jscex/master/bin/dev/jscex-parser-0.6.5.js"></script>
<script src="https://raw.github.com/JeffreyZhao/jscex/master/bin/dev/jscex-jit-0.6.6.js"></script>
<div id="output"></div>
<button onclick="updateSync()">Run Sync</button>
<button onclick="updateAsync()">Run Async</button>
JavaScript
function updateSync() {
for (var i = 0; i < 1000; i++) {
document.getElementById('output').innerHTML = i;
}
}
function updateAsync() {
var update = eval(Jscex.compile('async', function() {
for (var i = 0; i < 1000; i++) {
document.getElementById('output').innerHTML = i;
$await(Jscex.Async.sleep(0)); // sleep 0 ms to make it asynchronous
}
}));
update().start();
}