根据官方文档,我应该可以使用
def main [ &rest _ ]
我在 let 块中尝试了这个例子:
(import argparse)
(require [hy.contrib.walk [let]])
(def main [&rest _]
(let [parser (argparse.ArgumentParser)]
(.add-argument parser "STRING"
:help "string to replicate")
(.add-argument parser "-n" :type int :default 3
:help "number of copies")
(setv args (parser.parse_args))
(print (* args.STRING args.n))
))
但我看到以下错误:
... trace
NameError: name 'hyx_def' is not defined
奇怪的是,打印字符串“n”次的代码块工作正常。然而,错误出现在最后。
根据此链接:https ://github.com/hylang/hy/pull/1483,def已被完全删除。
那么我应该用什么来声明一个主函数呢?