packagepromise// Go is a basic promise implementation: it wraps calls a function in a goroutine,// and returns a channel which will later return the function's return value.funcGo(ffunc()error)chanerror{ch:=make(chanerror,1)gofunc(){ch<-f()}()returnch}