diff --git a/js/main.js b/js/main.js
index d71f8169866f6033265d707445a0b35378d938a8..60bbb01955bda8a64313ff6b3c6205b1916cad95 100644
--- a/js/main.js
+++ b/js/main.js
@@ -7,6 +7,6 @@ $(function(){
 
     three = Three();
     setupNavBar();
-    workers = makeWorkers();
+    makeWorkers(4);
 
 });
diff --git a/js/persistantWorkers.js b/js/persistantWorkers.js
deleted file mode 100644
index 046acac5b4b41ce69f0686dd8b0910a80495d008..0000000000000000000000000000000000000000
--- a/js/persistantWorkers.js
+++ /dev/null
@@ -1,32 +0,0 @@
-//global workers so they do not have to be reinstantiated
-
-
-function browserSupportsWebWorkers() {
-  return typeof window.Worker === "function";
-}
-
-function makeWorkers(){
-
-    function makeBlobURL(myWorkerFunction) {
-        var URL = window.URL || window.webkitURL;
-        var blob = new Blob([myWorkerFunction.toString()], { type: "text/javascript" });
-        return URL.createObjectURL(blob);
-    }
-
-    function workerFunction(){
-//        var isNode = typeof module !== 'undefined' && module.exports;
-//
-//        if (isNode) {
-//            process.once('message', function (code) {
-//                eval(JSON.parse(code).data);
-//            });
-//        } else {
-        console.log("eval");
-            self.onmessage = function (code) {
-                console.log(code);
-                eval(code.data);
-            };
-//        }
-    }
-//    return new Parallel(null, {env:null, evalPath: "dependencies/eval.js"}).require('three.js');
-}
\ No newline at end of file
diff --git a/js/persistentWorkers.js b/js/persistentWorkers.js
new file mode 100644
index 0000000000000000000000000000000000000000..343b8d6087ac7fae66e20604c8d4f5c871b2e2bf
--- /dev/null
+++ b/js/persistentWorkers.js
@@ -0,0 +1,30 @@
+//global workers so they do not have to be reinstantiated
+
+
+function browserSupportsWebWorkers() {
+  return typeof window.Worker === "function";
+}
+
+function makeWorkers(numWorkers){
+
+    var allWorkers = [];
+    var URL = window.URL || window.webkitURL;
+    var workerURL = makeBlobURL(URL, myWorker);
+    for (var i=0;i<numWorkers;i++){
+        var worker = new Worker(workerURL);
+        worker.postMessage([i,4]);
+
+        worker.onmessage = function(e) {
+          console.log(e.data);
+        };
+        allWorkers.push(worker);
+    }
+    URL.revokeObjectURL(workerURL);
+
+
+    function makeBlobURL(URL, someFunction) {
+        var blob = new Blob(["(" + someFunction.toString() + ")()"], { type: "text/javascript" });
+        return URL.createObjectURL(blob);
+    }
+
+}
\ No newline at end of file
diff --git a/js/worker.js b/js/worker.js
index 211e20ce47c887d9cff829fbfcf6d1360167f367..fb1d55998c49e0169ec5ee1953bf39747094b429 100644
--- a/js/worker.js
+++ b/js/worker.js
@@ -2,20 +2,23 @@
  * Created by aghassaei on 1/12/15.
  */
 
+function myWorker(){
+    self.onmessage = function(e) {
+        var data = e.data;
 
-self.onmessage = function(e) {
-  var data = e.data;
+        if (data.url) {
+            var url = data.url.href;
+            var index = url.indexOf('main.html');//url of landing page
+            if (index != -1) {
+              url = url.substring(0, index);
+            }
+        //load all scripts
+    //    importScripts(url + 'dependencies/three.js');
+    //    importScripts(url + 'js/element.js');
+        }
 
-  if (data.url) {
-    var url = data.url.href;
-    var index = url.indexOf('main.html');//url of landing page
-    if (index != -1) {
-      url = url.substring(0, index);
-    }
-    //load all scripts
-    importScripts(url + 'dependencies/three.js');
-//    importScripts(url + 'js/element.js');
-  }
+        var workerResult = 'Result: ' + (e.data[0] * e.data[1]);
+        postMessage(workerResult);
 
-
-};
\ No newline at end of file
+    };
+}
diff --git a/main.html b/main.html
index daf0a6ce2adde98aa65e1d78cb1c77626373c226..dbb6ef67f38de06ed1c07fec0ca83cb2ba918484 100644
--- a/main.html
+++ b/main.html
@@ -32,7 +32,8 @@
 
     <!--multi-threading-->
     <script src="dependencies/parallel.js"></script>
-    <script src="js/persistantWorkers.js"></script><!--global workers-->
+    <script src="js/worker.js"></script>
+    <script src="js/persistentWorkers.js"></script><!--global workers-->
 
     <script src="js/main.js"></script>
     <script src="dependencies/loaders/STLLoader.js"></script>