    ")"])
 
 (defn cvt-fn-body [lvl params forms]
-  (map-indexed (fn [idx form]
-                 [(when (= idx (dec (count forms))) "return")
-                  (cvt-expr (inc lvl) params form) ";"])
-               forms))
+  (interpose (nl lvl)
+             (map-indexed (fn [idx form]
+                            [(when (= idx (dec (count forms))) "return")
+                             (cvt-expr (inc lvl) params form) ";"])
+                          forms)))
 
 (defn cvt-fn [lvl params forms]
   ["func" (cvt-fn-params params) "{" (nl lvl)

(defn cvt-let [lvl scope op [bindings & body]]
  [(interpose (nl lvl)
              (map (fn [[var-name init-val]]
                     [(cvt-sym var-name) ":= (" (cvt-expr (inc lvl) scope init-val) ")"])
                   (partition 2 bindings)))
   (nl lvl)
   (cvt-body (inc lvl) scope body)])

   "go (func() {" (nl lvl)
   (interpose (nl lvl)
              (map-indexed (fn [idx [var-name init-val]]
                             [(str "l" idx) ":="
                              (cvt-expr (inc lvl) scope init-val)])
                           (partition 2 bindings)))
   (nl lvl)
   "for {" (nl lvl)
