func main() { if len(os.Args) < 2 { fmt.Printf("You must pass in a micro file on the command line\n") os.Exit(1) } src, err := ioutil.ReadFile(os.Args[1]) if err != nil { fmt.Printf("'%s' is not a valid file name\n", os.Args[1]) } reader := bytes.NewReader(src) a := compiler.Analyzer{Reader: *reader} g := compiler.Generator{Grammar: a.ReadGrammar()} g.Predict() }