So, as I learn more about #Guix and #GuixSystem, I started to read other people's configurations. This is helpful because it puts the snippets from the documentation in context, and it is easier to see the big picture this way.
But some of the configurations I read are much more than customization from the code provided by the documentation. They look more like full programs, organized in modules, with their own custom syntax, etc. So I started reading the documentation of #Guile, to understand the code I'm reading a bit better.
The most helpful read so far is the style guide linked from the Guix documentation. It explains some naming conventions like the names ending with a question mark, a star, etc. I had somewhat guessed from context what these symbols mean, but it's helpful to find these naming conventions explained somewhere.
One convention that remains unexplained is the % sign in front of some variable names like %base-services, %desktop-services, %default-channels, etc. The trend seems to be that the % sign denotes system-wide defaults. Is this correct? Or does % indicate something else?