The reflect docs are a great reference. In general computer programming, reflection is ability of a program to examine the structure and behavior of itself at runtime.
Based on its strict static type system Go lang has some rules (laws of reflection)