diff --git a/data/jsaddle.js b/data/jsaddle.js
--- a/data/jsaddle.js
+++ b/data/jsaddle.js
@@ -25,6 +25,7 @@
                 var batch = JSON.parse(e.data);
                 var nAsyncLength = batch[0].length;
                 for (var nAsync = 0; nAsync != nAsyncLength; nAsync++) {
+                  var scope = function() {
                     var d = batch[0][nAsync];
                     switch (d.tag) {
                         case "FreeRef":
@@ -118,6 +119,8 @@
                             ws.send(JSON.stringify({"tag": "ProtocolError", "contents": e.data}));
                             return;
                     }
+                  };
+                  scope();
                 }
                 var d = batch[1];
                 switch (d.tag) {
diff --git a/jsaddle.cabal b/jsaddle.cabal
--- a/jsaddle.cabal
+++ b/jsaddle.cabal
@@ -1,5 +1,5 @@
 name: jsaddle
-version: 0.5.0.1
+version: 0.5.0.2
 cabal-version: >=1.10
 build-type: Simple
 license: MIT
