(module nullary_app_smoke
  (fn greet
    (doc "Nullary user function — no params, prints a fixed line.")
    (type (fn-type (params) (ret (own (con Unit))) (effects IO)))
    (params)
    (body (seq (do io/print_str "hello") (do io/print_str "\n"))))

  (fn main
    (doc "Calls the nullary `greet` as `(app greet)` — the zero-arg surface form accepted under Gitea #12.")
    (type (fn-type (params) (ret (own (con Unit))) (effects IO)))
    (params)
    (body (app greet))))
