       (when loop-locals
         (when (= :return (:context env))
           (emits "return "))
-        (emitln "func (" (comma-sep loop-locals) ") *AFnPrimitive {")
+        (emitln "func(" (comma-sep loop-locals) ") *AFnPrimitive {")
         (when-not (= :return (:context env))
           (emits "return ")))
       (let [name (or name (gensym))

  [{:keys [bindings expr env]} is-loop]
  (let [context (:context env)]
    (if (= :expr context)
      (emits "func () interface{} {")
      (emits "{"))
    (binding [*lexical-renames* (into *lexical-renames*
                                      (when (= :statement context)

(defmethod emit* :do
  [{:keys [statements ret env]}]
  (let [context (:context env)]
    (when (and statements (= :expr context)) (emits "func() interface{} {"))
    (when statements
      (emits statements))
    (emit ret)
    (when (and statements (= :expr context)) (emits "}()"))))

(defmethod emit* :try
  [{:keys [env try catch name finally]}]
