In the Go lang source code, I see a function declared without any body. https://github.com/golang/go/blob/master/src/math/log10.go#L9
func Log10(x float64) float64
But when I do the same it gives me an error: missing function body for __
https://play.golang.org/p/Ncp-0-8vHB
How is this working in the Go source code? I mean how is the math package compiling? Is this source file just for documentation purposes?
It seems like Log10 is a public/exposed version of log10, but there is no "getter" convention or anything like that in the language, so where is the body of Log10 declared???
It is defined in assembly for various architectures in the *.s
files located in the same package.
Per the spec:
A function declaration may omit the body. Such a declaration provides the signature for a function implemented outside Go, such as an assembly routine.