package main import ( "os" "fmt" "net" "time" _ "github.com/mattn/go-sqlite3" ) var dead = true type bot struct { name string channel []string port int server string conn net.Conn } func main() { LOG_init() boddle := bot { name: "boddle", channel: []string{"#faui2k16", "#fau", "#sigbike", "#sigfreibad"}, port: 6667, server: "irc.fau.de", } LOG_INFO.Println("bot started!") var botchan <-chan []byte var line []byte dead = true for { if dead { LOG_WARN.Println("died.") for { botchan = connect(boddle) if botchan != nil { break } time.Sleep(10 * time.Second) } LOG_INFO.Println("reconnected.") dead = false } line = <-botchan fmt.Fprintf(os.Stderr, string(line)) } }