github.com/l3x/learn-fp-go@v0.0.0-20171228022418-7639825d0b71/1-functional-fundamentals/ch01-pure-fp/05_sum/src/sum/tailcall.go (about)

     1  package sum
     2  
     3  func SumTailCall(vs []int) int {
     4  	if len(vs) == 0 {
     5  		return 0
     6  	}
     7  	return vs[0] + SumTailCall(vs[1:])
     8  }