Many versions of G have surfaced in the 50-plus years it's been around. As the machinery became better, G adopted a number of functions for positioning and repositioning the cutting tool. The syntax is largely unreadable to neophytes, and it is more like assembly code than any elaborate computer language. G96, for instance, is a code that changes the relative speed of the cutting tool. It's followed by the speed. This lack of abstractions may be why many operators call it "G-code" instead of thinking of it as a full language.
If you're building the next generation of computer-designed objects, start here.
G on the Web: http://cncinformation.com/G-Code/G-Code.html
Sign up for CIO Asia eNewsletters.