import “tools/BasicCommand.my”

BasicCommand {

banner: "Usage: myco [subcommand] [options] [files]"

on creation: run(*ARGV)

run: |*argv| {
  files = options_parse(*argv)
  files && files.uniq.each |file| { Myco.eval_file(file, [Dir.pwd]) }
}

[options]

"-E": Option {
  description: "Evaluate a string of declarative Myco"
  long_form: "--eval"
  argument: "STRING"
  do: |arg| Myco.eval(arg)
}

"-e": Option {
  description: "Evaluate a string of procedural Myco inside an Object"
  long_form: "--eval-meme"
  argument: "STRING"
  do: |arg| Myco.eval("Object { on creation: { "arg" } }")
}

[commands]

"inoculate": Myco.eval_file("command/inoculate.my")

}