       (doseq [{:keys [init] :as binding} bindings]
         (emits "var ")
         (emit binding) ; Binding will be treated as a var
-        (emits " = " init ";"))
+        (emitln " = " init ";"))
       (when is-loop (emitln "while(true){"))
       (emits expr)
       (when is-loop

               (doseq [param params]
                 (emit param)
                 (when-not (= param (last params)) (emits ",")))
               (emits "){")
               (when recurs (emitln "while(true){"))
               (emits expr)
               (when recurs

  (emit-wrap env
    (emits "(function " (munge name) "(")
    (emit-fn-params params)
    (emitln "){")
    (when type
      (emitln "var self__ = this;"))
    (when recurs (emitln "while(true){"))
