gagent/pkg/picol/picol_unused/main.go_unused

45 lines
836 B
Text

package main
import (
bufio "bufio"
flag "flag"
fmt "fmt"
io "io"
os "os"
picol "github.com/dragonheim/gagent/pkg/picol"
)
var fname = flag.String("f", "", "file name")
func RunPicol(fname string) error {
interp := picol.NewInterpreter()
interp.RegisterCoreCommands()
buf, err := io.ReadFile(fname)
if err == nil {
result, err := interp.Eval(string(buf))
if err != nil {
return fmt.Errorf("Error: %s, Result: %s", err, result)
}
} else {
for {
fmt.Print("picol> ")
scanner := bufio.NewReader(os.Stdin)
clibuf, _ := scanner.ReadString('\n')
result, err := interp.Eval(clibuf[:len(clibuf)-1])
if len(result) != 0 {
return fmt.Errorf("Error: %s, Result: %s", err, result)
}
}
}
return nil
}
func main() {
flag.Parse()
err := RunPicol(*fname)
if err != nil {
fmt.Println(err)
}
}