///|
/// ofdx 入口 — 只做 IO 绑定
/// 业务逻辑在 dispatch(纯函数,返回 CliResponse)
fn main {
let argv = @sys.get_cli_args()
let args = if argv.length() > 1 { argv[1:] } else { [] }
let response = dispatch(args[:])
if !response.stdout.is_empty() {
println(response.stdout)
}
if !response.stderr.is_empty() {
println(response.stderr)
}
@sys.exit(response.exit_code)
}