What are the differences between a vanilla lua C module and a garry's mod one•?

I think the title says it all.
I just know the init function must be called gmod13_load or something like this, but what else do you need to change•?
I’d just like to know this because I have the PiL book and I prefer checking inside it since it’s official (just my preference).

The difference is pretty fundemental, in that the Lua state can only be accessed (without difficulty) through the headers provided here ( https://github.com/Facepunch/gmod-module-base/tree/master/include/GarrysMod/Lua ).